IoT Great Book For Beginners
IoT Great Book For Beginners
Rayes · Samer Salam
Internet of
Things–From
Hype to Reality
The Road to Digitization
Internet of Things—From Hype to Reality
Ammar Rayes Samer Salam
•
Internet of Things—From
Hype to Reality
The Road to Digitization
123
Ammar Rayes Samer Salam
Cisco Systems Cisco Systems
San Jose, CA Vancouver, BC
USA Canada
Disclaimer: The recommendations and opinions expressed in this book are those of the authors and
contributors and do not necessarily represent those of Cisco Systems.
In California, just a few months after two people stepped foot on the moon for the
first time, two computers began sending messages to each other using protocols
designed to make it easy for other computers to connect and join the party [2]. On
October 29, 1969, a computer in Leonard Kleinrock’s laboratory at UCLA and a
computer in Doug Engelbart’s laboratory at SRI forged the first two nodes in what
would become known as the Internet. Vint Cerf and two colleagues coined the term
Internet as a shortened version of internetworking in December 1974. It did not take
long for more computers and their peripherals, as well as more networks of com-
puters, and even industrial equipment to connect and begin communicating mes-
sages, including sharing sensor data and remote control instructions. In early 1982,
a soda machine at CMU became arguably the first Internet connected appliance,
announced by a broadly distributed e-mail that shared its instrumented and inter-
connected story with the world. By 1991, it was clear to Mark Weiser that more and
more things would someday have embedded computers, including mobile phones,
cars, even door knobs, and someday even clothing [3]. Today, spacecrafts use
Internet connected devices on missions to explore other planets and deep space
beyond our solar system. Through the courtesy of NASA engineers, some are even
sending tweets to millions of followers here on Earth about their progress.
The Internet of Things (also known as the Internet of Everything) continues to
grow rapidly today. In fact, the Internet of Things (IoT) forms the basis of what has
become known as the fourth industrial revolution and digital transformation of
business and society [1]. The first industrial revolution was the steam engine as the
focal machine, the second revolution included the machines of mass production, the
third revolution was based on machines with embedded computers, and the fourth
revolution (today) interconnected machines and things, including information about
the materials and energy usage flowing into and out of a globally interconnected
cyber-physical system of systems. The level of instrumentation and interconnection
is laying the infrastructure for more intelligence, including cognitive computing to
be incorporated.
vii
viii Foreword I
Why does the IoT continue to grow so rapidly? What are the business and
societal drivers of its rapid growth? How does IoT relate to the internet, what types
of things make up the IoT, and what are the fundamental and new protocols being
used today? How do the specific layers of the IoT protocol stack related to each
other? What is the fog layer? What is the services platform layer? How are the
security and data privacy challenges being resolved? What are the economic and
business consequences of IoT, and what new ecosystems are forming? What are the
most important open standards associated with IoT, and how are they evolving?
In this introductory IoT textbook, Dr. Ammar Rayes (Cisco, distinguished
engineer) and Samer Salam (Cisco, principal engineer) guide the reader through
answers to the above questions. Faculty will find well-crafted questions and
answers at the end of each chapter, suitable for review and in classroom discussion
topics. In addition, the material in this book can be used by engineers and technical
leaders looking to gain a deep technical understanding of IoT, as well as by
managers and business leaders looking to gain a competitive edge and understand
innovation opportunities for the future. Information systems departments based in
schools of management, engineering, or computer science will find the approach
used in this textbook suitable as either a primary or secondary source of course
material.
In closing, and on a personal note, it has been a pleasure to call Dr. Ammar
Rayes a colleague and friend for nearly a decade. He has given generously of his
time as founding president of the International Society of Service Innovation
Professionals (ISSIP.org), a professional association dedicated to helping multi-
disciplinary students, faculty, practitioners, policy makers, and others learn about
service innovation methods for business and societal applications. Ammar is one of
those rare technical leaders who contributes in business, academics, and profes-
sional association contexts. My thanks to Ammar and Samer for this excellent
introduction to Internet of Things, as it is one more in a line of their contributions
that will help inspire the next generation of innovators to learn, develop profes-
sionally, and make their own significant contributions.
Jim Spohrer
IBM, San Jose, CA, USA
References
1. J. Lee, H.A. Kao, S. Yang, Service innovation and smart analytics for industry 4.0 and big data
environment. Procedia CIRP. 16, 3–8 (2014)
2. B.M. Leiner et al. A brief history of the Internet. ACM SIGCOMM Computer Communication
Review. 39(5), 22–31 (2009)
3. M. Weiser, The computer for the 21st century, vol. 265(3) (Scientific American, USA, 1991),
pp. 94–104
Foreword II
The Internet of Things (IoT) has been many years in the making. Indeed, the
concept of using sensor devices to collect data and then transfer it to applications
across a network has been around for several decades. For example, legacy pro-
grammable logic controller (PLC) systems already provide data collection and
remote actuator control using specialized networking protocols and topologies.
Even though these setups have limited footprints and are rather costly, they are still
widely used in many industrial settings. Meanwhile, academic researchers have also
studied the use of networked sensors for various applications in recent years.
However, continuing market shifts and technology trends in the past decade
have dramatically altered the value proposition of interconnected sensors and
actuators. Namely, the combination of low-cost hardware and high-speed net-
working technologies—both wired and wireless—have enabled a new generation of
compact sensor devices with ubiquitous connectivity across the wider Internet.
These systems are facilitating real-time data collection/sharing and providing
unprecedented visibility and control of assets, personnel, operations, and processes.
The further use of cloud-based computing/storage facilities is introducing even
more advanced data analysis capabilities, ushering in a new era of intelligent
decision making, control, and automation. Broadly, these new paradigms are ter-
med as the Internet of Things (IoT).
Indeed, there is considerable excitement, perhaps even hype, associated with the
IoT. However, as technological advances and business drivers start to align here,
related paradigms are clearly poised at an inflection point of growth. For example, a
wide range of business and mission critical IoT systems are already being deployed
in diverse market sectors, i.e., including defense, energy, transportation, civil
infrastructure, health care, home automation/security and agriculture. New cloud
and fog computing services are also emerging to deliver actionable insights for
improving business productivity and reducing cost/risk. As these new business
models start to take hold, the projected IoT market opportunity is huge, widely
projected to be in the trillions of dollars in the coming decade.
ix
x Foreword II
In light of the above, this text presents a very timely and comprehensive look at
the IoT space. The writing starts by introducing some important definitions and
reviewing the key market forces driving IoT technology growth. The fundamental
IoT building blocks are then presented, including networking systems and sensor
technologies. Most notably, IoT-specific networking challenges and requirements
are first overviewed, including device constraints, identification, performance
determinism, security, and interoperability. Emerging, streamlined IoT protocol
stacks are then detailed, covering topics such as layering, routing and addressing.
The main types of sensing technologies are also discussed here along with actuator
control devices. Note that the initial part of this text focuses on core IoT concepts
and frameworks, leaving more industry- and application-specific treatments to later.
The text then addresses broader topics relating to intelligent data management
and control for IoT. Namely, the distributed fog computing platform is outlined
first, including market drivers, prerequisites, and enabling technologies within the
context of IoT. The crucial notion of an IoT service platform is also presented,
touching upon issues such as deployment, configuration, monitoring, and trou-
bleshooting. The writing also outlines critical security and privacy concerns relating
to IoT, i.e., by categorizing a range of threat scenarios and highlighting effective
countermeasures and best practices.
Finally, the latter part of the text progresses into some more business-related
aspects of IoT technology. This includes a critical look at emerging vertical markets
and their interconnected ecosystems and partnerships, i.e., across sectors such as
energy, industrial, retail, transportation, finance, health care, and agriculture.
Sample business cases are also presented to clearly tie in industry verticals with
earlier generalized IoT concepts and frameworks. Finally, the critical role and
efforts of IoT standardization organizations are reviewed along with a look at some
important open source initiatives.
Overall, both authors are practicing engineers in the networking industry and
actively involved in research, technology development, standards, and business
marketing initiatives. As result they bring together wide-ranging and in-depth field
experience across many diverse areas, including network management, data secu-
rity, intelligent services, software systems, data analytics, and machine learning.
They are also widely published in the research literature and have contributed many
patent inventions and standardization drafts. Hence, this team is uniquely qualified
to write on this subject.
In summary, this text provides a very compelling study of the IoT space and
achieves a very good balance between engineering/technology focus and business
context. As such, it is highly recommended for anyone interested in this rapidly
expanding field and will have broad appeal to a wide cross section of readers, i.e.,
including engineering professionals, business analysts, university students, and
professors. Moreover, each chapter comes with a comprehensive, well-defined set
Foreword II xi
of questions to allow readers to test their knowledge on the subject matter (and
answer guides are also available for approved instructors). As such, this writing also
provides an ideal set of materials for new IoT-focused graduate courses in engi-
neering and business.
xiii
xiv Preface
primarily about data and gaining actionable insights from that data, as discussed
above. From a technology perspective, this can be achieved with the availability of
networking protocols that meet the requirements and satisfy the constraints of new
Internet of Things devices, and more importantly with the availability of standard
interfaces and mechanisms for application services including data access, storage,
analysis, and management. How does this translate to the proverbial hourglass? At
the very least, a second thin waist is required which provides a common normal-
ization layer for application services.
The road to a standards-based Internet of Things is well underway. The industry
has made significant strides toward converging on the Internet protocol as the
common basis. Multiple standards have been defined or are in the process of being
defined to address the requirements of interconnecting “Things” to the Internet.
However, many gaps remain especially with respect to application interoperability,
common programmable interfaces, and data semantics. How the Internet of Things
will bend and mold the IP hourglass in the decades to come will certainly be
fascinating to witness. We, as engineers, developers, researchers, business leaders,
consumers, and human beings are in the vortex of this transformation.
In this book, we choose to introduce the Internet of Things (IoT) concepts and
framework in the earlier chapters and avoid painting examples that tie the concepts
to a specific industry or to a certain system. In later chapters, we provide examples
and use cases that tie the IoT concepts and framework presented in the earlier
chapters to industry verticals.
Therefore, we concentrate on the core concepts of IoT and try to identify the
major gaps that need to be addressed to take IoT from the hype stage to concrete
reality. We also focus on equipping the reader with the basic knowledge needed to
comprehend the vast world of IoT and to apply that knowledge in developing
verticals and solutions from the ground up, rather than providing solutions to
specific problems. In addition, we present detailed examples that illustrate the
implementation and practical application of abstract concepts. Finally, we provide
detailed business and engineering problems with answer guides at the end of each
chapter.
The following provides a chapter by chapter breakdown of this book’s material.
Chapter 1 introduces the foundation of IoT and formulates a comprehensive
definition. This chapter presents a framework to monitor and control things from
anywhere in the world and provides business justifications on why such monitoring
and control of things are important to businesses and enterprises. It then introduces
the 12 factors that make IoT a present reality.
The 12 factors consist of (1) the current convergence of IT and OT, (2) the
astonishing introduction of creative Internet-based businesses with emphasis on
Uber, Airbnb, Square, Amazon, Tesla, and the self-driving cars, (3) mobile device
explosion, (4) social network explosion, (5) analytics at the edge, (6) cloud com-
puting and virtualization, (7) technology explosion, (8) digital
convergence/transformation, (9) enhanced user interfaces, (10) fast rate of IoT
technology adoption (five times more than electricity and telephony), (11) the rise
Preface xv
of security requirements and (12) the none-stop Moore’s law. The last section of
this chapter presents a detailed history of the Internet.
Chapter 2 describes the “Internet” in the “Internet of Things”. It starts with a
summary of the well-known open system interconnection (OSI) model layers. It
then describes the TCP/IP Model, which is the basis for the Internet. The TCP/IP
has two big advantages in comparison with earlier network protocols: reliability and
flexibility to expand. The TCP/IP was designed for the US Army addressing the
reliability requirement (resist breakdowns of communication lines in times of war).
The remarkable growth of Internet applications can be attributed to this reliable
expandable model.
Chapter 2 then compares IP version 4 with IP version 6 by illustrating the
limitations of IPv4, especially for the expected growth to 26.3 billion devices with
IoT. IPv4 has room for about 4.3 billion addresses, whereas IPv6, with a 128-bit
address space, has room for 2128, or 340 trillion trillion trillion addresses. Finally,
detailed description of IoT network level routing is described and compared with
classical routing protocols. This chapter finally discusses the IoT network level
routing that incudes interior and exterior routing protocols.
Chapter 3 defines the “Things” in IoT and describes the key requirements for
things to be able to communicate over the Internet: sensing and addressing. Sensing
is essential to identify and collect key parameters for analysis and addressing is
necessary to uniquely identify things over the Internet. While sensors are very
crucial in collecting key information to monitor and diagnose the “Things”, they
typically lack the ability to control or repair such “Things” when action is required.
This chapter answers the question: Why spend money to sense “Things” if they
cannot be controlled? It illustrates that actuators are used to address this important
question in IoT. With this in mind, the key requirements for “Things” in IoT now
consist of the following: sensing, actuating, and unique identification. Finally, this
chapter identifies the main sensing technologies that include physical sensors,
RFID, and video tracking and discusses the advantages and disadvantages of these
solutions.
Chapter 4 discusses the requirements of IoT which impact networking protocols.
It first introduces the concept of constrained devices, which are expected to com-
prise a significant fraction of new devices being connected to the Internet with IoT.
These are devices with limited compute and power capabilities; hence they impose
special design considerations on networking protocols which were traditionally
built for powerful mains connected computers. This chapter then presents the
impact of IoT’s massive scalability on device addressing in light of IPv4 address
exhaustion, on credentials management and how it needs to move toward a
low-touch lightweight model, on network control plane which scales as a function
of the number of nodes in the network, and on the wireless spectrum that the
billions of wireless IoT devices will contend for.
After that, this chapter goes into the requirements for determinism in network
latency and jitter as mandated by real-time control applications in IoT, such as
factory automation and vehicle control systems. This is followed by an overview
of the security requirements brought forward by IoT. Then, this chapter turns into
xvi Preface
the requirements for application interoperability with focus on the need for standard
abstractions and application programmatic interfaces (APIs) for application, device,
and data management, as well as the need for semantic interoperability to ensure
that all IoT entities can interpret data unambiguously.
Chapter 5 defines the IoT protocol stack and compares it to the existing Internet
protocol stack. It provides a layer-by-layer walkthrough of that stack, and, for each
such layer, discusses the challenges brought forward by the IoT requirements of the
previous chapter, the industry progress made to address those challenges, and the
remaining gaps that require future work.
Starting with the link layer, this chapter discusses the impact of constrained
device characteristics, deterministic traffic characteristics, wireless access charac-
teristics, and massive scalability on this layer. It then covers the industry response
to these challenges in the following standards: IEEE 802.15.4, TCSH, IEEE
802.11ah, and time sensitive networking (TSN). Then shifting to the Internet layer,
this chapter discusses the challenges in low power and lossy networks (LLNs) and
the industry work on 6LowPAN, RPL, and 6TiSCH. After that, this chapter dis-
cusses the application protocols layer, focusing on the characteristics and attributes
of the protocols in this layer as they pertain to IoT, and highlighting, where
applicable, the requirements and challenges that IoT applications impose on these
protocols. This chapter also provides a survey and comparison of a subset of the
multitude of available protocols, including CoAP, MQTT, and AMQP to name a
few. Finally, in the application services layer, this chapter covers the motivation and
drivers for this new layer of the protocol stack as well as the work in ETSI M2M
and oneM2M on defining standard application middleware services.
Chapter 6 defines fog computing, a platform for integrated compute, storage, and
network services that is highly distributed and virtualized. This platform is typically
located at the network edge. This chapter discusses the main drivers for fog: data
deluge, rapid mobility, reliable control and finally data management and analytics.
It describes the characteristics of Fog, which uniquely distinguish it from cloud
computing.
This chapter then focuses on the prerequisites and enabling technologies for fog
computing: virtualization technologies such as virtual machines and containers,
network mobility solutions including EVPN and LISP, fog orchestration solutions
to manage topology, things connectivity and provide network performance guar-
antees, and last but not least data management solutions that support data in motion
and distributed real-time search. This chapter concludes with the various gaps that
remain to be addressed in orchestration, security, and programming models.
Chapter 7 introduces the IoT service platform, which is considered to be the
cornerstone of successful IoT solutions. It illustrates that the service platform is
responsible for many of the most challenging and complex tasks of the solution. It
automates the ability to deploy, configure, troubleshoot, secure, manage, and
monitor IoT entities, ranging from sensors to applications, in terms of firmware
installation, patching, debugging, and monitoring to name just a few. The service
platform also provides the necessary functions for data management and analytics,
Preface xvii
drivers to open source from the perspective of the consumers of open source
projects as well as contributors of these projects. This chapter then goes into dis-
cussing the interplay between open source and industry standards, and stresses the
tighter collaboration ensuing among them.
This chapter then provides a tour of open source activities in IoT ranging from
hardware and operating systems to IoT service platforms.
Finally Appendix A presents a comprehensive IoT glossary that includes the
definitions of over 1200 terms using information from various sources that include
key standards and latest research.
We realize that the completion of this book could not have been possible without
the support of many people whose names go far beyond the list that we can
recognize here. Their effort is sincerely appreciated and support is gratefully rec-
ognized. With that in heart and mind, we would like to express our appreciation and
acknowledgment particularly to the following:
First, we would like to express our gratitude to members of the Cisco executive
team for their support. In particular, thanks to Rajat Mishra, VP of Cisco services
strategy, Pradeep Kathail, Chief Network Architect of Core Software Group, Kip
Compton, VP and CTO of Cloud Services and Platform Group, and Sunil Kripalani
for their support in the planning and preparation of this book.
We also would like to express our gratefulness to Dr. Jim Spohrer of IBM
Research and Prof. Nasir Ghani of the University of South Florida for taking the
time to write comprehensive forwards. We are very grateful to Alumni
Distinguished Graduate Professor and IEEE Fellow, Prof. Harry Perros of North
Carolina State University and Dr. Alex Clemm for peer-reviewing the book pro-
posal. Special thanks go to Dr. Mehiar Dabbagh of Oregon State University and
Lionel Florit of Cisco Systems for their contributions in Chaps. 8 and 11,
respectively.
Ammar is ceaselessly thankful to his wife Rana and his children Raneem,
Merna, Tina, and Sami for their love and patience during the long process of
writing this book.
Samer would like to thank his parents, to whom he is eternally grateful, his wife
Zeina, and children Kynda, Malek, and Ziyad for their love, support, and encour-
agement that made this book possible. Last but not least, he would like to thank
Samir, especially for his sense of humor.
xix
Contents
xxi
xxii Contents
xxvii
xxviii About the Authors
The Internet of Things (IoT) has gained significant mindshare, let alone attention, in
academia and the industry especially over the past few years. The reasons behind
this interest are the potential capabilities that IoT promises to offer. On the personal
level, it paints a picture of a future world where all the things in our ambient
environment are connected to the Internet and seamlessly communicate with each
other to operate intelligently. The ultimate goal is to enable objects around us to
efficiently sense our surroundings, inexpensively communicate, and ultimately
create a better environment for us: one where everyday objects act based on what
we need and like without explicit instructions.
IoT’s promise for business is more ambitious. It includes leveraging automatic
sensing and prompt analysis of thousands of service- or product-related parameters
and then automatically taking action before a service experience or product oper-
ation is impacted. It also includes collecting and analyzing massive amounts of
structured and unstructured data from various internal and external sources, such as
social media, for the purpose of gaining competitive advantage by offering better
services and improving business processes. This may seem like a bold statement,
but consider the impact that the Internet has already had on education, communi-
cation, business, science, government, climate control, and humanity. Many believe
that IoT will create the largest technology opportunity that we have ever seen.
The term “Internet of Things” was first coined by Kevin Ashton in a presentation
that he made at Procter and Gamble in 1999. Linking the new idea of RFID (radio
frequency identification) in Procter and Gamble’s supply chain to the then red hot
topic of the Internet was more than just a good way to get executive attention. He
has mentioned, “The Internet of Things has the potential to change the world, just
as the Internet did. Maybe even more so.” Afterward, the MIT Auto-ID Center
presented their IoT vision in 2001. Later, IoT was formally introduced by the
International Telecommunication Union (ITU) Internet Report in 2005.
IoT is gaining momentum, especially in modern wireless telecommunications, as
evidenced in the increasing presence around us of smart objects or things (e.g.,
smartphones, smart watches, and smart home automation systems), which are able
© Springer International Publishing AG 2017 1
A. Rayes and S. Salam, Internet of Things—From Hype to Reality
DOI 10.1007/978-3-319-44860-2_1
2 1 Internet of Things (IoT) Overview
to communicate with each other and collaborate with other systems to achieve
certain goals.
Undeniably, the main power of IoT is the high impact it is already starting to
have on business and personal lives. Companies are already employing IoT to
create new business models, improve business processes, and reduce costs and
risks. Personal lives are improving with advanced health monitoring, enhanced
learning, and improved security just to name a few examples of possible
applications.
Before defining IoT, it may be worthwhile listing the most generic enablement
components. In its simple form, IoT may be considered as a network of physical
elements empowered by:
• Sensors: to collect information,
• Identifiers: to identify the source of data (e.g., sensors and devices)
• Software: to analyze data, and
• Internet connectivity: to communicate and notify.
Putting it all together, IoT is the network of things, with clear element
identification, embedded with software intelligence, sensors, and ubiquitous
connectivity to the Internet. IoT enables things or objects to exchange information
with the manufacturer, operator, and/or other connected devices utilizing the
telecommunications infrastructure of the Internet. It allows physical objects to be
sensed (to provide specific information) and controlled remotely across the Internet,
thereby creating opportunities for more direct integration between the physical
world and computer-based systems and resulting in improved efficiency, accuracy,
and economic benefit. Each thing is uniquely identifiable through its embedded
computing system and is able to interoperate with the existing Internet
infrastructure.
There is no disagreement between businesses and/or technical analysts that the
number of things in IoT will be massive. Gartner says 20 billion devices will be in
use in 2020. Cisco’s estimate is 26.3 billion devices (including machine-to-machine
devices, phones, TVs, PCs, Tablets, and other connected devices) for the same
period. Others believe this estimate to be overly conservative with the assumption
that any object with a simple microcontroller, modest on–off switch, or even with
QR (quick response) code1 will be connected to the Internet in the near feature.
Such a view is supported by Moore’s law, with the observation that the number of
transistors in a dense integrated circuit approximately doubles every eighteen
months, as we will discuss in Sect. 1.3.
1
Quick response code is the trademark for a type of matrix barcode.
1.1 What Is the Internet of Things (IoT)? 3
Before we give the historical overview of the Internet and consequently delve into
the IoT, it is worthwhile providing a definition and the fundamental requirements of
IoT as a basis for the inexperienced reader.
We assume that the Internet is well known and bears no further definition. The
question is what do we really mean by “Things2”? Well, things are actually
“anything” and “everything” from appliances to buildings to cars to people to
animals to trees to plants, etc. Hence, IoT in its simplest form may be considered as
the intersection of the Internet, things, and data as shown in Fig. 1.1.
A more complete definition, we believe, should also include “standards” and
“processes” allowing “things” to be connected over the “Internet” to exchange
“data” using industry “standards” that guarantee interoperability and enabling
useful and mostly automated “processes,” as shown in Fig. 1.2.
2
Some companies (e.g., Cisco) referred to IoT as the “The Internet of Everything.” GE used the
term “Industrial Internet” to refer to enterprise (nonresidential) Internet. Other companies have
called it “The Internet of Anything.” Other terms used for IoT include: “Digital Disruptors,” “The
Nexus of Forces,” and “The 3rd Platform.”
4 1 Internet of Things (IoT) Overview
Things
IoT Data
Processes
&
Standards
Some companies refer to IoT as the IoE (Internet of Everything) with four key
components: people, process, data, and things. In this case, IoE connects:
• People: Connecting people in more relevant ways;
• Data: Converting data into intelligence to make better decisions;
• Process: Delivering the right information to the right person or machine at the
right time;
• Things: Physical devices and objects connected to the Internet and each other
for intelligent decision-making, often called IoT.
They correctly believe that today’s Internet is the “Internet of People,” i.e.,
today’s Internet is mainly connecting applications that are used by people. People
are taking action based on notifications from connected applications. IoT is envi-
sioned to connect “things” where “things” (not people) will be taking action, when
needed, by communicating with each other intelligently. IoE is then combining the
Internet of People and the Internet of Things. In this book, and in most of the recent
literature, however, IoT refers to anything and everything (including people).
With this in mind, we can state a more comprehensive definition of IoT as
follows: IoT is the network of things, with device identification, embedded
intelligence, and sensing and acting capabilities, connecting people and things
over the Internet.
As we already mentioned above, we will use the term “IoT” to refer to all
objects/things/anything connected over the Internet including appliances, buildings,
cars, people, animals, trees, and plants.
The basic promise of IoT is to monitor and control “things” from anywhere in
the world. The first set of fundamental questions an engineer may ask are as
follows: How to monitor and control things from anywhere in the world? Why do
we want to do so? Who will perform the monitoring and control? And how is
security guaranteed? In the remainder of this section, we will provide high-level
answers to these questions. More detailed answers will be provided throughout the
various chapters of this book.
1.1 What Is the Internet of Things (IoT)? 5
Let us start with the first question. The basic requirements for IoT are unique
identity per “thing” (e.g., IP address), ability to communicate between things (e.g.,
wireless communications), and the ability to sense specific information about the
things (sensors). With these three requirements, one should be able to monitor
things from anywhere in the world. Another foundational requirement is a medium
to communicate. Such requirement is typically handled by a telecommunications
network. Figure 1.3 presents the very basic requirements of an IoT solution.
There are many reasons to monitor and control things remotely over the Internet:
monitoring and controlling things by experts (e.g., a patient’s temperature or blood
pressure while the patient is at the comfort of his or her own home); learning about
things by pointing a smartphone to a thing of interest for instance; searching for
things that search engines (e.g., Google) do not provide today (e.g., where are my
car keys); allowing authorities to manage things in smart cities in an optimal
manner (e.g., energy, driver licenses and other documents from the department of
motor vehicles, and senior citizen); and, finally, providing more affordable enter-
tainment and games for children and adults. All of these are examples of huge
business and service opportunities to boost the economic impact for consumers,
businesses, governments, hospitals, and many other entities.
Generally speaking, monitoring and control of IoT services may be done by any
person or any machine, for example, a homeowner monitoring his own home on a
mobile device based on a security system she or he has installed and configured.
The homeowner may also control lights, turn on the air-conditioning, shut off the
heater, etc. Another example is for a service provider to monitor and control ser-
vices for its customers in a network operation center (NOC) as shown in Fig. 1.4.
Obviously, security is a major concern to prevent access by non-authorized
people and more importantly prevent a malicious hacker from gaining access to the
system and sending old views to the homeowner while a thief is breaking in. The
areas of control are far more critical for enterprise-sensitive applications such as
healthcare monitoring of patients and banking applications, as we will see in
Chap. 8.
Securing IoT is perhaps the biggest opportunity for technology companies and will
remain so for some time in the future. Before IoT, information technology security
professionals worked in a bubble as they literally owned and controlled their entire
networks and secured all devices behind firewalls. With IoT, data will be collected
from external, often mobile, sensors that are placed in public sites (e.g., city streets)
allowing strangers to send harmful data to any network. Bring Your Own Device
(BYOD) is another example where third-party devices and hence non-corporate
data sources are allowed to enter the network. IoT areas that are considered to be
most vulnerable include:
• Accessing data during transport (network and transport security). Data will be
transported in IoT networks at all time, for example, from sensors to gateways
and from gateways to data centers in enterprises, or from sensors to gateways for
residential services such as video from home monitoring system to the home-
owner’s smartphone while he is in a coffee shop. This data may be sniffed by
man in the middle unless the transport protocols are fully secure and encrypted.
• Having control of IoT devices (i.e., control of the APIs) allows unauthorized
persons to take full control of entire networks. Examples include shutting down
cameras at home and shutting down patient monitoring systems.
• Having access to the IoT data itself. Is the data easily accessible? Is it stored in
encrypted form? Shared storage in the cloud is another problem where customer
A may login as customer B and look at his data. Another common problem is
spoofing data via Bluetooth. Many companies are adding Bluetooth support to
their devices, making it more feasible for unauthorized persons to access the
device’s data.
• Stealing official user or network identity (stealing user or network credentials).
Many Web sites provide default passwords for vendors.
We have dedicated Chap. 8 to IoT security.
In this book, we will follow a reference framework that divides IoT solutions into
four main levels: IoT devices (things), IoT network (infrastructure transporting the
data), IoT services platform (software connecting the things with applications and
providing overall management), and IoT applications (specialized business-based
applications such as customer relation management (CRM), accounting and billing,
and business intelligence (BI) applications). Control is passed down from one level
to the one below, starting at the application level and proceeding to the IoT device
level and back up the hierarchy.
1. IoT Device Level includes all IoT sensors and actuators (i.e., the things in IoT).
The device layer will be covered in Chap. 2.
2. IoT Network Level includes all IoT network components such as IoT gate-
ways, routers, and switches. The IoT network level (i.e., the Internet in IoT) will
be covered in Chap. 3.
3. IoT Application Services Platform Level includes the key management soft-
ware functions to enable the overall management of IoT devices and network. It
also includes main functions connecting the device and network levels with the
application layer. It will be covered in Chap. 7.
4. IoT Application Level includes all applications operating in the IoT network
and will be covered in Chap. 9.
Figure 1.5 shows an overview of the IoT levels. It describes how information is
transferred from one IoT component to another. Advantages of the proposed IoT
four-level model include:
8 1 Internet of Things (IoT) Overview
IoT Applications
IoT Management
Services Platform
IoT Network
IoT Gateway
IoT Devices
IoT has already become a powerful force for business transformation, and its dis-
ruptive impact is already felt across all industries and all areas of the society. There
is a perfect storm of market disruptions happening at an unprecedented pace trig-
gered by technology as well as new business and social requirements. This section
introduces the top 12 factors driving the explosion of IoT as shown in Fig. 1.6.
1.3 Why Now? The 12 Factors for a Perfect Storm 9
Internet-Based Digital
Businesses Transformation
Social Media
Driving
Fast
Explosion
Factors Adaption
Analytics Rise of
At Edge Security
Virtualization Moore's
& Cloud Law
Operation technology (OT) is the world of industrial plants and industrial control
and automation equipment that includes machines and systems to run the busi-
nesses, controllers, sensors, and actuators. Information technology (IT) is the world
of end-to-end information systems focusing on compute, data storage, and net-
working to support business operation in some context such as business process
automation systems, CRM systems, supply chain management systems, logistics
systems, and human resources systems.
Historically, IT and OT were always managed by two separate organizations
with different cultures, philosophies, and set of technologies. IT departments were
originally created by companies to create efficient and effective forms of telephony
communication among various departments. Then, they were extended to provide
video and Web conferencing, network internal communications, and secure
external electronic communications such as e-mails. Often, the final decision with
the selection of communication systems, Web site hosting, and backup servers was
the responsibility of the IT department.
OT relies on real-time data that drives safety, security, and control. It depends on
very well-defined, tested, and trusted processes. Many plants need to run 24 7
with zero down time (e.g., city water filtration system), and thus, industrial pro-
cesses cannot tolerate shutdown for software updates. IT is more lenient with
software updates, introduction of new technologies, etc.
“When you take people with an IT background and bring them into an industrial
control system environment, there’s a lack of understanding from operations why
they’re there and there is a lack of understanding of the specific controls envi-
ronment needs from IT,” says Tim Conway, technical director, ICS and SCADA for
the SANS Institute. He points out that typically IT professionals are trained and
driven to perform a task: “They work on a box, a VM (virtual machine), a storage
area network, or a firewall. They don’t realize that they’re a part of a larger control
system operation, and how the things that they do can impact others.”
10 1 Internet of Things (IoT) Overview
1.3.2.1 Uber
Many are familiar with Uber’s story where the cofounders were attending a con-
ference in Paris in 2008. Travis Kalanick and Garrett Camp were complaining about
finding a cab especially while carrying luggage and under the rain. When they
1.3 Why Now? The 12 Factors for a Perfect Storm 11
started to brainstorm the next day, they came up with three main requirements: The
solution had to be Internet-based (i.e., request and track service from mobile
device), it had to provide the service fast, and the rides had to be picked up from
any location.
The key component of Uber’s solution is the Internet-based platform connecting
customers (passengers) with the service providers (car drivers). Because the con-
sumers are not Uber’s employees, and because there are practically an infinite
number of cars that could potentially join Uber, Uber has the requirement to scale at
an incredibly fast rate at zero marginal cost.
Uber uses sensor technologies in driver’s smartphones to track their behaviors. If
you ride with Uber and your driver speeds, brakes too hard, or takes you on a wildly
lengthy route to your destination, it is no longer your word against theirs. Uber is
using gyrometer and GPS data to track the behavior of its drivers. Gyrometers in
smartphones measure small movements, while GPS combined with accelerometers
show how often a vehicle starts and stops and the overall speed.
Today, Uber is one of the leading transportation services in the world with a
market value over twenty billion dollars.
1.3.2.2 Airbnb
Airbnb is an Internet-based service for people to list, find, and rent lodging. It was
founded in 2008 in San Francisco, California, by Brian Check and Joe Gebbia
shortly after creating airbed and breakfast during a conference. The original site
offered rooms, breakfast, and a business networking opportunity for the conference
attendees who were unable to find a hotel. In February 2008, technical architect
Nathan Belcharczyk joined Airbnb as the third cofounder. Shortly thereafter, the
newly created company focused on high-profile events where alternative lodging
was very limited.
Incredibly similar to the Uber model, Airbnb utilizes a platform business model.
This means they facilitate the exchange between consumers (travelers) and service
providers (homeowners). Airbnb also required a scalable Internet-based platform
supporting from a few customers to hundreds of thousands during major events.
More importantly, Airbnb is partnering with Internet companies (e.g., Nest of
Google) to deliver remote keyless solutions to customers by unlocking doors (with
IoT digital keys) over the Internet.
Just like Uber, Airbnb found a multi-billion-dollar business based on an Internet
platform connecting people and places together that competently disrupted the
traditional hotel business model. These linear businesses have to invest millions
into building new hotels, while Airbnb does not have to deal with that.
Just like Uber, today Airbnb is one of the leading hotel services in the world with
a market value close to twenty billion dollars.
12 1 Internet of Things (IoT) Overview
1.3.2.3 Square
Square Inc., also San Francisco based, was inspired by Jack Dorsey in 2008 when
his friend, Jim McKelvey, in St. Louis at the time, was unable to complete a $2000
sale of his glass faucets and fittings because he could not accept credit cards. Jack
and Jim started the point-of-sale software financial services company in 2010. The
company allows small-business mobile individuals and merchants to make secure
payments using applications such as Square Capital and Square Payroll. The
Internet-based software solution allows customers and small-business owners to
enter credit card information manually or to swipe the card via the Square Reader
(see Fig. 1.8), a small plastic device that plugs into the audio jack of supported
smart mobile devices with an interface resembling a traditional cash register.
Square has introduced an application that integrates its reader with a smart-
phone’s motion sensor. The application can determine that the card reader is failing
by analyzing the motion sensor data to detect movements indicating multiple card
swipes. If the card reader did not read any data during the card swipes, the
application can deduce that the card reader is broken. This solution allows Square to
send a replacement card reader to swap the broken card in a timely fashion.
Square also launched Square Cash applications allowing individuals and busi-
nesses to transfer money with a unique username. In 2015, Square introduced
customer engagement, a suite of CRM tools which includes e-mail marketing
services. These tools allow businesses to target specific customer segments with
customized promotions based on actual purchase history. Square also introduced
Square Payroll tool for small-business owners to process payroll for their
employees.
1.3.2.4 Amazon
Amazon.com is the largest Internet retailer company in the world with huge market
cap (over $370 billion as of late Summer 2016). It started, in 1994, as an
Internet-based bookseller and swiftly expanded into music, movies, electronics, and
14 1 Internet of Things (IoT) Overview
household goods, Amazon utilized the Internet to break the traditional retailer
model. It did not need to stock many of the merchandises it was selling on its Web
site. Instead, it identified matching partner companies and issued customer orders
over a secure Internet-based platform.
Amazon also offers businesses the capability to sell online via Amazon Services.
Another part of its retail strategy is to serve as the channel for other retailers to sell
their products and take a percentage of every purchase.
Retail is only part of Amazon.com business. It also offers cloud-based services
known as Amazon Web Services or AWS with Software as a Service (SaaS),
Platform as a Service (PaaS), and Infrastructure as a Service (IaaS) as well as other
types of businesses such as Kindle. Amazon itself defines its lines of business in
terms of product sales, service sales, cloud services, fulfillment, publishing, digital
content subscriptions, advertising, and cobranded credit cards. Analysts have cat-
egorized Amazon’s lines of businesses into online retail, Internet services, and the
Kindle ecosystem. Based on April 28, 2016, reporting, AWS alone generated $8.9
billion in revenue between April 1, 2015, and March 31, 2016 (one year).
Amazon is perhaps one of the first companies to develop a set of businesses
based on an Internet platform connecting end customers (e.g., retail customer and
businesses) to products and services (e.g., merchandise and cloud services), thereby
disrupting traditional retail models.
1.3.2.5 Tesla
Tesla Motors was founded in 2003 by a group of engineers in Silicon Valley with a
mission to develop a successful luxurious electrical car and then invest the resulting
profits to make a less expensive electric car. With instant torque, incredible power,
and zero emissions, Tesla’s products would be cars without compromise.
Tesla’s engineers first designed a power-train for a sports car built around an AC
induction motor, patented in 1888 by Nikola Tesla, the inventor who inspired the
company’s name. The resulting Tesla Roadster was launched in 2008 with an
incredible range of 245 miles per charge of its lithium ion battery. The Roadster
was able to set a new standard for electric mobility. In 2012, Tesla launched
Model S, the world’s first premium electric sedan.
Tesla is considered as the best example yet of IoT. It did not only bend the
traditional industry manufacturing model to Internet-based model with thousands of
sensors (Fig. 1.11) but demonstrated the tremendous value of IoT with the 2014
recalls. In early 2014, the Traffic Safety Administration published two recall
announcements, one for Tesla Motors and one for a big automaker. Both were
related to problems that could cause fires. Tesla’s fix was conducted for 29,222 cars
as an “over-the-air” software update without requiring owners to bring their cars to
the dealer.
1.3 Why Now? The 12 Factors for a Perfect Storm 15
Fig. 1.11 Tesla Factory in Fremont, California. Source Tesla Motors Inc
The resulting model is then processed by the car’s control system to make
navigation decisions. Self-driving cars control systems typically use stored maps to
find optimal path to destination, avoid obstacles, and send decisions to the car’s
actuators. IoT applies to interactions and communications between self-driving car
components, between the car and roadside infrastructure, and among self-driving
cars. Figure 1.12 shows an example of Google's self-driving cars.
Finally, it is worth noting that there are various other examples of companies that
have used the Internet for new and creative business models, with various levels of
success, including Scoop Inc. for carpooling and Pandora in the music industry.
18.24
(ExaByte per Second)
11.97
7.8
4.87
2.96
1.74
Year
Fig. 1.13 Smartphone traffic over time
year’s global average. This growth will definitely be fueled by IoT connecting
things with people and more importantly allowing people to monitor and control
things from anywhere in the world in real time. Figure 1.13 shows smartphone
traffic growth (in exabyte per second) between 2014 and 20,199 based on data
published by Statista.
Social networks, such as Facebook, Instagram, Twitter, and YouTube, and the
adoption of cloud-based services, such as Amazon’s AWS and salesforce.com, are
all examples of the large-scale migration to the cloud across virtually every
industry. In fact, two-thirds of all data center traffic will be from the cloud in
3 years. All of this leads to data explosion, where already the data being created on
the Internet each day is equal to half of all the data that has been accumulated since
the dawn of humanity (Fig. 1.14).
Table 1.1 Comparison of key factors for Analytics 1.0, 2.0, and 3.0
Analytics 3.0
Analytics 1.0 Analytics 2.0
Structured and
Collected data Structured and
Structured unstructured
type unstructured
At edge and in
Data analysis Centralized data Centralized data
data center
location center center
Seconds—
Time to analyze
Days—hours Hours—minutes microseconds
data
Today, massive amounts of data are being created at the edge of the network,
and the traditional ways of performing analytics over that data are no longer viable.
Minutes or even seconds of delay in data processing are no longer effective for
many businesses. Take, for example, a sensor in an oil rig. If the pressure were to
drop substantially, the rig needs to be shut off instantaneously and before the system
breaks and causes a major disaster.
Companies are realizing that they just cannot keep moving massive amounts of
data to centralized data stores. The data is too big, is changing too fast, and is too
geographically distributed. Certain analysis must be performed in real time and
cannot withstand the delays of sending the raw data to a centralized data center to
be analyzed and then sending back the result to the source. In addition, certain
industries (e.g., healthcare and defense) have the requirement to analyze the data
close to the source due to data privacy or security.
Analytics 3.0 allows companies to collect, parse, analyze, and correlate (with
stored data) structured as well as unstructured data at or close to the edge (the
source of the data). To support this, companies have introduced massive solutions
(hardware and software) that allow enterprises to capture, process, and analyze data
at the edge. Can you think of examples of such companies (see Problem 15)?
Analytics 1.0, 2.0, and 3.0 are compared in Table 1.1 and in Fig. 1.15: Table 1.1
shows a comparison of key factors, while Fig. 1.15 displays a process summary.
Google Compute Engine). Recent data showed that the average initial venture
capital cost for a startup in the year 2000 was $5 million. The cost in the year 2016
has dropped to $5 thousand. This enormous 99 % decline in cost was made possible
by cloud computing and virtualization.
Public Cloud providers deliver cloud services, on-demand, over the Internet.
Enterprises pay only for the CPU cycles, storage, or bandwidth they consume.
Enterprises also have the choice to deploy Private Cloud solutions in their own
data centers and deliver computing services to their internal sub-businesses/users.
Such model offers flexibility and convenience, while retaining management, con-
trol, and security in the hands of their IT departments.
Cloud computing may also be offered in a Hybrid Cloud model that consists of
a combination of public and private clouds allowing enterprises to create a scalable
solution by utilizing the public cloud infrastructure while still preserving full
control over critical data.
Cloud computing is attractive to many enterprises allowing them to
self-provision their own services for any type of workload on-demand. They can
start small and then scale up almost instantly with minimum expertise and
pre-planning, while they pay only for what they use, typically, in addition to a basic
subscription charge.
Cloud computing has been classified into three main service categories:
Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as
Service (SaaS). PaaS, for instance, allows enterprises to utilize a third-party plat-
form and permits them to focus on developing and managing their own software
applications without the complexity of building and maintaining the required
infrastructure.
1.3 Why Now? The 12 Factors for a Perfect Storm 21
IoT hardware (e.g., sensors, inexpensive computers such as Raspberry Pi, and
open-source microcontrollers such as Arduino) and software technologies are not
only being developed faster than ever before, but with much lower prices. Such
devices are already transforming user behaviors and creating new business
opportunities. Business leaders are realizing that unless their organizations quickly
adapt to such changes, their businesses will soon become irrelevant or inefficient to
survive in an increasingly competitive marketplace.
Digital convergence has initially started with a limited scope: Move to “paperless”
operation and save trees. Now, it is transforming the future in profound ways.
Digital convergence is being adopted by key industries with extended goals to
move to digital operation, extract data from various sources including the devices
and processes that are enabled by digitization, and then analyze the extracted data
22 1 Internet of Things (IoT) Overview
and correlate it with other data sources to extract intelligence that improves prod-
ucts, customer experience, security, sales, etc. Many healthcare organizations (e.g.,
Kaiser Permanente) have been using digital convergence with extended goals of
improving the patient experience, improving population health, and reducing
healthcare costs.
With the connection of billions of smart objects to the Internet by 2020, com-
panies are realizing the upcoming challenges and are adding to their executive
boards the role of a chief digital officer (CDO) who can oversee the full range of
digital strategies and drive change across the organization. CDOs are expected to
significantly impact existing systems, solutions, and business processes and more
importantly intrinsically enable new types of innovation and creativity.
Many of us are changing our mobile devices and tablets at faster rate than ever
before. Experts believe that there was a point of inflexion sometime between 2009
and 2010, where the number of connected devices began outnumbering the planet’s
human population. And these are not just laptops, mobile phones, and tablets—they
also include sensors and everyday objects that were previously unconnected.
Surveys and detailed analysis indicated that the adoption rate of such technology is
five times faster than that of electricity and telephony growth. Traditionally, the
adoption of technology was always proportional to population growth. Hence, IoT
adoption gap is expected to widen exponentially over the next several years, with
the number of sensors, objects, and other “things.” This is best illustrated by global
IP traffic growth, as shown in Fig. 1.16. According to June 2016 Cisco Visual
Networking Index (VNI) forecast, global IP traffic in 2015 stands at 72.5 exabytes
(EB: 1018 byte) per month and will nearly triple by 2020, to reach 194.4 EB per
month. Consumer IP traffic will reach 162.2 EB per month, and business IP traffic
will surpass 32.2 EB per month by 2020.
Adding all of these physical objects to IP networks imposes new and novel
requirements on existing networking models. Information Technolog and
Communication systems will need to deal with those requirements in relatively
short order.
Total IP Traffic (petabytes per month)
194.4
160.6
132.1
108.5
88.7
75.5
Fig. 1.16 Global IP traffic growth, 2015–2020. Source 2016 Cisco VIN
24 1 Internet of Things (IoT) Overview
Protection of business and personal data and systems has been an issue since the
inception of data networks. With the commercialization of the Internet, security
concerns expanded to cover personal privacy, financial transactions, and the threat
of cyber-robbery. Today, security of the network is being expanded to include
safety or physical security.
Many of us are buying and deploying smart gadgets all over our homes.
Examples include smart cameras that notify our smartphones during business hours
when movement is detected, smart doors that open remotely, and smart refrigerators
that notify us when we are short of milk. Imagine now the level of control that an
attacker can gain by hacking those smart gadgets if the security of those devices
was to be overlooked. In fact, the damage caused by cyber-attacks in the IoT era
will have a direct impact on all the physical objects that you use in your daily life.
The same applies to smart cars as the number of integrated sensors continues to
grow rapidly and as the wireless control capabilities increase significantly over
time, giving an attacker who hacks a car the ability to control the windshield wipers,
the radio, the door lock, and even the brakes and the steering wheel of the vehicle.
Our bodies will not also be safe from cyber-attacks. In fact, researchers have shown
that an attacker can control remotely implantable and wearable health devices (e.g.,
insulin pumps and heart pacemakers) by hacking the communication link that
connects them to the control and monitoring system.
It is possible to summarize the impact of Moore's law with three key observations:
1. Over the history of computing hardware, computer power has been doubling
approximately every 18 months. This relates to the fact that the number of
transistors in a dense integrated circuit has been growing by twofold every
18 months since the transistor was invented in 1947 by John Bardeen, Walter
Brattain, and William Shockley in Bell Labs, as shown in Fig. 1.17.
Now, the largest existing networks in 2016 contain millions of nodes and bil-
lions of connections. Human brains, on the other hand, are about a hundred
thousand times more powerful. A human brain has one hundred thousand billion
nodes and a hundred trillion connections. Hence, with Moore’s law, a computer
should be as powerful as the human brain in about twenty-five years!
2. Silicon transistor storage technology size has continued to shrink over the years
and is approaching atomic level. For years now, we have been putting more
power and more storage on the same device size. To illustrate this idea, the
number of all transistors in all PCs in 1995, a peak year for Microsoft, was about
800 trillion transistors. Today, 800 trillion transistors are included in one
weekend’s sales of Apple’s iPhones.
1.3 Why Now? The 12 Factors for a Perfect Storm 25
28
26
24
22
20
18
16
14
12
10
2009 2010 2011 2012 2013 2014 2015 2016 2017 2018
Year
1.00E-07
1.00E-09
Price in $
1.00E-11
1.00E-13
1.00E-15
1.00E-17
1.00E-19
1976 1979 1982 1985 1988 1991 1994 1997 2001 2004 2007 2016
Year
Fig. 1.17 Moore’s Law: a Transistor size over time. b Transistor price over time
3. The price of the transistor is being reduced by more than 50 % every year. In
1958, Fairchild Semiconductor procured its first order, for 100 transistors at
$150 apiece from IBM’s Federal Systems Division. Today, you can buy over
one million transistors for 8 cents. Figure 1.17 shows such trend over time.
There is no exact number for the estimated IoT revenue for the next 10 years,
but all industry leaders have agreed that the opportunity is indeed huge.
A study by General Electric [49], which likened IoT trend to the industrial
revolution of the eighteenth and nineteenth centuries, concluded that the IoT over
the next 20 years could add as much as US$15 trillion to the global gross domestic
product (GDP)—which is roughly the size of today’s US economy.
26 1 Internet of Things (IoT) Overview
600
500
400
200
100
Hardware
0
2014 2015 2016 2017 2018 2019
Year
Before the advent of the Internet, the world’s main communication networks were
based on circuit switching technology: the traditional telephone circuit, wherein
each telephone call is allocated a dedicated, end-to-end, electronic connection
28 1 Internet of Things (IoT) Overview
Circuit-Switched
Packets Follows Same Path & Arrive in Order
Packet Packet
2 3
Packet-Switched
Packets May Follow Different Paths & Arrive Out-of-Order
developing packet switching was the design of a network that could withstand a
nuclear attack. Such theory was denied by the Advanced Research Projects Agency
Network (ARPANET), an early packet switching network adopter and the first
network to implement the Internet protocol suite TCP/IP. However, the later work
on internetworking emphasized robustness and survivability, including the capa-
bility to withstand losses of large portions of the underlying networks.
To understand the fundamentals of packet switching, consider sending a con-
tainer of goods from Los Angeles to New York City. Rather than sending the entire
container over a particular route, it is divided into packages (called packets).
Packets are assembled, addressed, and sent in a particular way such that:
• The packets are numbered, so they can be reassembled in the correct sequence at
the destination.
• Each packet contains destination and return addresses.
• The packets are transmitted over the network of routes as capacity becomes
available.
• The packets are forwarded across the network separately and do not necessarily
follow the same route; if a particular link of a given path is busy, some packets
might take an alternate route.
Packet switching is a generic philosophy of network communication, not a
specific protocol. The protocol used by the Internet is called TCP/IP. The TCP/IP
protocol was invented by Robert Kahn and Vint Cerf. The IP in TCP/IP stands for
Internet protocol: the protocol used by computers to communicate with each other
on the Internet. TCP is responsible for the data delivery of a packet, and IP is
responsible for the logical addressing. In other words, IP obtains the address and
TCP guarantees the delivery of data to that address. Both technologies became the
technical foundation of the Internet.
The earliest ideas for a computer network, intended to allow general commu-
nications among computer users, were formulated by computer scientist J. C. R.
Licklider of Bolt, Beranek, and Newman (BBN), in April 1963, in memoranda
discussing the concept of the “intergalactic computer network.” Those ideas
encompassed many of the features of the contemporary Internet. In October 1963,
Licklider was appointed head of the Behavioral Sciences and Command and
Control programs at the Defense Department’s Advanced Research Projects
Agency (ARPA). He convinced Ivan Sutherland and Bob Taylor that this network
concept was very important and merited development, although Licklider left
ARPA before any contracts were assigned for development.
Devices using the Internet must implement the IP stack. Packets that follow the
IP specification are called IP datagrams. These datagrams have two parts: header
information and data. Considering the letter analogy, think of the header as the
information that would go on an envelope and the data as the letter that goes inside
the envelope. The header information includes such things as: Total length of the
packet, destination IP address, source IP address, time to live (the time to live is
decremented by routers as the packet passes through them; when it hits zero, the
30 1 Internet of Things (IoT) Overview
packet is discarded; this prevents packets from getting into an “infinite loop” and
tying up the network) and error-checking information.
• The IP packets are independent of the underlying hardware structure. In order to
travel across different types of networks, the packets are encapsulated into
frames. The underlying hardware understands the particular frame format and
can deliver the encapsulated packet.
• The TCP in TCP/IP stands for transmission control protocol. This is a protocol
that, as the name implies, is responsible for assembling the packets in the correct
order and checking for missing packets. If packets are lost, the TCP endpoint
requests new ones. It also checks for duplicate packets. The TCP endpoint is
responsible for establishing the session between two computers on a network.
The TCP and IP protocols work together.
• An important aspect of packet switching is that the packets have forwarding and
return addresses. What should an address for a computer look like? Since it is a
computer, and computers only understand binary information, the most sensible
addressing scheme is one based on binary numbers. Indeed, this is the case and
the addressing system used by IP version 4 is based on a 32-bit IP address and
IP version 6 is based on 128-bit IP address as will be explained in Chap. 2
1.5 Summary
We would like to conclude this chapter by restating our definition of IoT as the
network of things, with clear element identification, embedded with software
intelligence, sensors, and ubiquitous connectivity to the Internet. IoT is empowered
by four main elements: sensors to collect information, identifiers to identify the
source of data, software to analyze the data, and Internet connectivity to commu-
nicate and enable notifications. Sensors may be physical (e.g., sensors capturing the
temperature) or logical (e.g., embedded software measurements such as CPU uti-
lization). IoT’s ultimate goal is to create a better environment for humanity, where
objects around us know what we like, what we want, and what we need and act
accordingly without explicit instructions.
IoT is fueled by explosion in technologies including IT and OT convergence, the
introduction of Internet-based business at a fast rate, the explosion in smart mobile
devices, the explosion in social networking applications, the overall technology
explosion, the massive digital transformation, enhanced user interfaces allowing
people to communicate by a simple touch, voice command, or even an observing
command, the faster-than-ever technology adoption, the increased demand for
security applications and solutions, and of course Moore’s law. Securing IoT is
viewed as a challenge and colossal business opportunity at the same time with areas
that embrace securing the data at rest, securing the transport of the data, securing
APIs/interfaces among systems and various sources of data, and of course con-
trolling sensors and applications.
1.6 Problems and Exercises 31
1. What is the simple definition of IoT? What is the “more complete definition”?
What’s the main difference?
2. IoT components were listed for the simple definition to include: the intersection
of the Internet, Things and Data. Process & standards were added to the
complete definition. Why Process and Standards are important?
3. What are the main four components that empower IoT? List the main function
of each component.
4. What is IoT’s promise? What is IoT’s Ultimate Goal?
5. Cisco estimates that the IoT will consist of almost 26.3 billion objects by 2020.
Other firms have higher estimates. What was their logic?
6. What is Moore’s Law? When was first observed? Why is relevant to IoT?
7. In a Table, list the 12 factors that are fueling IoT with a brief summary of each
factor.
8. What are the top three challenges for IoT? Why are those challenges also
considered as opportunities?
9. What is BYOD? Why is it considered a security threat for the network?
10. How do companies deal with BYOD today? List an example of BYOD system.
11. Why Operation Technology (OT) is under pressure to integrate with
Information Technology (IT)?
12. Uber is using smartphone Gyrometer data to monitor speeding drivers. What is
“Gyrometer”? Who does it work? Where was it first used?
13. What is KISS? What the top five principle for KISS user experience?
14. Section 1.3.12 stated the following three facts: (i) over the history of computing
hardware, computer power has been doubling every 18 months, (ii) biggest
networks we have today have millions of nodes and billions of connection, and
(iii) a human brain has a hundred thousand billion nodes and a hundred trillion
connections. It then stated that using (i) - (ii) in year 2015, a computer should
be as powerful as a human brain in about 25 year! How did the author arrive at
25? How long would it take if the computer power was doubling every 2 years
instead of 18 months and why?
15. What are the key four differences between Analytics 1.0, 2.0, and 3.0?
16. List examples of solutions that offer Analytics 3.0.
17. What are the top three benefits of cloud computing? What do they mean?
18. In a table format compare IaaS, PaaS, and SaaS. List an example for each.
32 1 Internet of Things (IoT) Overview
19. What are the main differences between virtual machines and containers in
virtualization? Provide an example of container technology. Which approach
do you prefer and why?
20. List two main functions of TCP/IP protocol, the bread and butter of today’s
Internet.
21. Why do we need both TCP and IP protocols?
22. It is often said by User Experience Experts that the “Best Interface for a system
is no User Interface.” What does such statement mean? When doe it typically
apply? Provide an example in networking technologies.
23. This question has five parts:
a. What is circuit switched technology? What is packet switched technology?
b. What are Circuit-switched networks and packet-switched networks used
for? List an example of each use.
c. Why did we need Packet Switched Technology?
d. In a table, list three main differences between packet-switching and
circuit-switching?
e. Which approach is better for the Internet and why?
24. What is a connection-oriented protocol? What is a Connectionless protocol?
Provide an example of each.
25. Some companies use the term IoE instead of IoT. Why?
26. What is Cloud 1.0 and Cloud 2.0? What is the main difference between cloud
1.0 and cloud 2.0? How does machine learning differ from traditional
approaches to extract business intelligence form the data?
References
6. Top 3 Security Issues in Consumer Internet of Things (IoT) and Industrial IoT YouTube John
Barrett at TEDxCIT: https://www.youtube.com/watch?v=QaTIt1C5R-M
7. Wikipedia, ARPANET, Online: http://en.wikipedia.org/wiki/ARPANET
8. G. Honda, K. Martin, in Essential Guide to Internet Business Technology Book, 19 Feb, 2002
by Prentice Hall, Online: http://www.informit.com/articles/article.aspx?p=27569&seqNum=4
9. T. Danova, “Morgan Stanley: 75 Billion Devices Will be connected to The IoT By 2020”, Oct
2, 2013, http://www.businessinsider.com/75-billion-devices-will-be-connected-to-the-internet-
by-2020-2013-10#ixzz3YAtxfDCp
10. IoT Definitions, Online: http://gblogs.cisco.com/asiapacific/the-internet-of-everything-
opportunity-for-anz-agribusiness/#more-120
11. Gartner News View: http://www.gartner.com/newsroom/id/2905717
12. Information Week IoE, Peter Waterhouse, December 2013, Online: http://www.
informationweek.com/strategic-cio/executive-insights-and-innovation/internet-of-everything-
connecting-things-is-just-step-one/d/d-id/1112958
13. LG Answers to IoT, the Latest Trend in IT -Talk Service-Oriented IoT, Online: http://www.
lgcnsblog.com/features/answers-to-iot-the-latest-trend-in-it-talk-service-oriented-iot-1/
14. Driving Moore’s Law with Python-Powered Machine Learning: An Insider’s Perspective by
Trent McConaghy PyData Berlin 2014, OnLine: http://www.slideshare.net/PyData/py-data-
berlin-trent-mcconaghy-moores-law
15. Clock speed: Data from 1976–1999: E. R. Berndt, E. R. Dulberger, and N. J. Rappaport,
“Price and Quality of Desktop and Mobile Personal Computers: A Quarter Century of
History,” 17 July, 2000, http://www.nber.org/*confer/2000/si2000/berndt.pdf
16. Data from 2001–2016: ITRS, 2002 Update, On-Chip Local Clock in Table 4c: Performance
and Package Chips: Frequency On-Chip Wiring Levels—Near-Term Years, p. 167. Online:
http://www.singularity.com/charts/page62.html
17. Average transistor price: Intel and Dataquest reports (December 2002), see Gordon E. Moore,
“Our Revolution,” http://www.sia-online.org/downloads/Moore.pdf
18. The Internet of Things, Online: https://en.wikipedia.org/wiki/Internet_of_Things
19. L. David Roper, Silicon Intelligence Evolution: Online http://arts.bev.net/roperldavid, 23
October, 2010, http://www.roperld.com/science/SiliconIntelligenceEvolution.htm
20. The Silicon Engine: A Timeline of Semiconductor in Computer, Online: http://www.
computerhistory.org/semiconductor/timeline/1958-Mesa.html
21. T.E. Kurt, in Disrupting and Enhancing Healthcare with IoT. Health, Technology &
engineering Program at USC, Arch 2, 2013, online: http://www.slideshare.net/todbotdotcom/
disrupting-and-enhancing-healthcare-with-the-internet-of-things
22. Insight’s The Semiconductor Laser’s Cost Curve, Online: http://sweptlaser.com/
semiconductor-laser-cost-curve
23. P. Welander, “IT vs. OT: Bridging the divide—Traditional IT is moving more onto the plant
floor. OT will have to accept a greater level of integration. Is that a problem or an
opportunity?”, Control engineering, 08/16/2013, Online: http://www.controleng.com/single-
article/it-vs-ot-bridging-the-divide/db503d6cb9af3014f532cf19b5bf75e8.html
24. Airbnb Business Model, Online: https://www.quora.com/What-is-Airbnbs-business-model
25. Five Things You Can Learn From One of Airbnb’s Earliest Hustles, Online: http://www.inc.
com/alex-moazed/cereal-obama-denver-the-recipe-these-airbnb-hustlers-used-to-launch-a-
unicorn.html
26. S. Ganguli, in The Impact of the IoT on Infrastructure Monitoring, October 2015, Online:
https://www.gartner.com/doc/3147818?srcId=1-2819006590&pcp=itg
27. Sqaure Inc, Oneline: https://en.wikipedia.org/wiki/Square,_Inc
28. G. Sterling, Greg, in Expanding Its Services, Square Launches Email Marketing With A Twist,
April 2015, Online: http://marketingland.com/expanding-its-services-square-launches-email-
marketing-with-a-twist-2-124282
29. Analysis of the Amazon Business Model, July 2015, Online: http://www.
digitalbusinessmodelguru.com/
30. About Tesla, Online: http://www.teslamotors.com/about
34 1 Internet of Things (IoT) Overview
31. A. Brisbourne, in Tesla’s Over The Air Fix: Best Example yet of the Internet of Things,
February 2014, Online: http://www.wired.com/insights/2014/02/teslas-air-fix-best-example-
yet-internet-things/
32. U. Wang, in A Manufacturing Lesson From Tesla Motors, Forbes, August 2013, Online:
http://www.forbes.com/sites/uciliawang/2013/08/08/a-manufacturing-lesson-from-tesla-
motors/
33. How PayPal Here Stacks Up Against Other Mobile Payment Options, Online: http://mashable.
com/2012/03/16/paypal-here-competitors/#cSQKd8eMwPqa
34. F. Richter, in Global Smartphone Traffic to Increase Tenfold by 2019, February 2015, Online:
http://www.statista.com/chart/3227/global-smartphone-traffic-to-increase-tenfold-by-2019/
35. Security of IoT: Lessons from the Past for the Connected Future, Aa, Online: http://www.
windriver.com/whitepapers/security-in-the-internet-of-things/wr_security-in-the-internet-of-
things.pdf
36. Curb Your Enthusiasm, Uber Newsroom, Joe Sullivan, Chief Security Officer, January 26,
2016
37. Fundamental Principles of Great UX Design| How to Deliver Great UX Design, Janet M. Six,
Nov 17, 2014, Online: http://www.uxmatters.com/mt/archives/2014/11/fundamental-
principles-of-great-ux-design-how-to-deliver-great-ux-design.php#sthash.oEzaPFAH.dpuf
38. Three Social Media Marketing Options to Consider in 2016, Hiral Rana, 31 Jan 2016, Online:
https://www.google.com/search?q=social+media&rls=com.microsoft:en-US:IE-
Address&source=lnms&tbm=isch&sa=X&ved=0ahUKEwiU4_
y107nMAhXFMKYKHXldAEAQ_AUICCgC&biw=1577&bih=912#imgrc=ZH-8cjbgp-
pIBM%3A
39. Detecting a malfunctioning device using sensors, United States Patent 8777104, Online: http://
www.freepatentsonline.com/8777104.html
40. Virtual Machines Vs. Containers: A Matter Of Scope, Information Week Network Computing,
May 28, 2014, Online: http://www.networkcomputing.com/cloud-infrastructure/virtual-
machines-vs-containers-matter-scope/2039932943
41. “Google’s Self-Driving Car Hit a Bus”, American Safety Council February 29, 2016, Online:
http://blog.americansafetycouncil.com/googles-self-driving-car-hit-a-bus/
42. “10 Million Self-Driving Cars will be on the Road by 2020”, Business Insider, Juley 29, 2015,
Online: http://www.businessinsider.com/report-10-million-self-driving-cars-will-be-on-the-
road-by-2020-2015-5-6
43. “How Self-driving Cars work”, Shima Rayej, Robohub Automotive, 3 June 2014, Online:
http://robohub.org/how-do-self-driving-cars-work/
44. Alternative To, NetCrunch, Online: http://alternativeto.net/software/netcrunch/comments/
45. Amazon Web Services is Approaching a $10 billion-a-year business, Recorde, 28 April 2016,
Online: http://www.recode.net/2016/4/28/11586526/aws-cloud-revenue-growth
46. Google says welcome to the Cloud 2.0, ComuterWold, May 24, 2016 issue, Online: http://
www.computerworld.com/article/3074998/cloud-computing/google-says-welcome-to-the-
cloud-20.html?token=%23tk.CTWNLE_nlt_computerworld_enterprise_apps_2016-05-
27&idg_eid=28bc8cb86c8c36cb5f0c09ae2e86ba26&utm_source=Sailthru&utm_medium=
email&utm_campaign=Computerworld%20Enterprise%20Apps%202016-05-27&utm_term=
computerworld_enterprise_apps#tk.CW_nlt_computerworld_enterprise_apps_2016-05-27
47. “Gartner Says 6.4 Billion Connected “Things” Will Be in Use in 2016, Up 30 Percent From
2015”, 10 November 2015, online: http://www.gartner.com/newsroom/id/3165317
48. Cisco Visual Networking Index: Forecast and Methodology, 2015–2020, 6 June 2016, Online:
http://www.cisco.com/c/en/us/solutions/collateral/service-provider/visual-networking-index-
vni/complete-white-paper-c11-481360.html
49. D. Floyer, Defining and Sizing the Industrial Internet, Wikibon (2013). Peter C. Evans and
Marco Annunziata, “General Electric: Industrial Internet, Pushing the Boundaries of Minds
and Machines,” November 2012
Chapter 2
The Internet in IoT—OSI, TCP/IP, IPv4,
IPv6 and Internet Routing
Reliable and efficient communication is considered one of the most complex tasks
in large-scale networks. Nearly all data networks in use today are based on the
Open Systems Interconnection (OSI) standard. The OSI model was introduced by
the International Organization for Standardization (ISO), in 1984, to address this
composite problem. ISO is a global federation of national standards organizations
representing over 100 countries. The model is intended to describe and standardize
the main communication functions of any telecommunication or computing system
without regard to their underlying internal structure and technology. Its goal is the
interoperability of diverse communication systems with standard protocols.
The OSI is a conceptual model of how various components communicate in
data-based networks. It uses “divide and conquer” concept to virtually break down
network communication responsibilities into smaller functions, called layers, so
they are easier to learn and develop. With well-defined standard interfaces between
layers, OSI model supports modular engineering and multivendor interoperability.
The OSI model consists of seven layers as shown in Fig. 2.1: physical (Layer 1),
data link (Layer 2), network (Layer 3), transport (Layer 4), session (Layer 5),
presentation (Layer 6), and application (Layer 7). Each layer provides some
well-defined services to the adjacent layer further up or down the stack, although
the distinction can become a bit less defined in Layers 6 and 7 with some services
overlapping the two layers.
• OSI Layer 7—Application Layer: Starting from the top, the application layer
is an abstraction layer that specifies the shared protocols and interface methods
used by hosts in a communications network. It is where users interact with the
network using higher-level protocols such as DNS (domain naming system),
HTTP (Hypertext Transfer Protocol), Telnet, SSH (Secure Shell), FTP (File
Transfer Protocol), TFTP (Trivial File Transfer Protocol), SNMP (Simple
Network Management Protocol), SMTP (Simple Mail Transfer Protocol), X
Windows, and RDP (Remote Desktop Protocol).
• OSI Layer 6—Presentation Layer: Underneath the application layer is the
presentation layer. This is where operating system services (e.g., Linux, Unix,
Windows, MacOS) reside. The presentation layer is responsible for the delivery
and formatting of information to the application layer for additional processing
if required. It is tasked with taking care of any issues that might arise where data
sent from one system needs to be viewed in a different way by the other system.
The presentation layer releases the application layer of concerns regarding
syntactical differences in data representation within the end-user systems.
Example of a presentation service would be the conversion of an EBCDIC
(Extended Binary Coded Decimal Interchange Code)-coded text computer file to
an ASCII (American Standard Code for Information Interchange)-coded file and
certain types of encryption such as Secure Sockets Layer (SSL) protocol.
• OSI Layer 5—Session Layer: Below the presentation layer is the session layer.
The session layer deals with the communication to create a session between two
network elements (e.g., a session between your computer and the server that
your computer is getting information from).
• OSI Layer 4—Transport Layer: Deals with the end-to-end communication
between two end points. It uses the concept of windowing to decide how much
information should be sent at a time between end points.
• OSI Layer 3—Network Layer: Routers operate at the network layer. The
network layer packages data into packets known as IP datagrams, which contain
source and destination IP address information that is used to forward the
datagrams between hosts and across networks. The network layer is also
responsible for routing of IP datagrams using IP addresses. A routing protocol
specifies how routers communicate with each other, exchanging information
2.1 The Open Systems Interconnection Model 37
that enables them to select routes between any two nodes on a computer net-
work. Routing algorithms determine the specific choice of routes. Each router
has a priori knowledge only of networks attached to it directly. A routing
protocol shares this information first among immediate neighbors, and then
throughout the network. This way, routers gain knowledge of the topology of
the network. The major routing protocol classes in IP networks will be covered
in Sect. 2.5.2. They include Interior gateway protocols type 1, Interior gateway
protocols type 2 and Exterior gateway protocols. The latter are routing protocols
used on the Internet for exchanging routing information between Autonomous
Systems.
It must be noted that while layers 3 and 4 (network and transport layers) are
theoretically separate, they are typically closely related to each other in practice.
The well-known Internet protocol name Transmission Control Protocol/Internet
Protocol (TCP/IP) comes from the transport layer protocol (TCP) and network
layer protocol (IP).
Packet switching networks depend upon a connectionless internetwork layer in
which a host can send a message without establishing a connection with the
recipient. In this case, the host simply puts the message onto the network with
the destination address and hopes that it arrives. The message data packets may
appear in a different order than they were sent in connectionless networks. It is
the job of the higher layers, at the destination side, to rearrange out of order
packets and deliver them to proper network applications operating at the
application layer.
• OSI Layer 2—The Data Link Layer: Switches operate at the data link layer.
This layer deals with delivery of frames1 between devices on the same LAN
using media access control (MAC) addresses. Frames do not cross the bound-
aries of a local network. Internetwork routing is handled by Layer 3, allowing
data link protocols to focus on local delivery, addressing, and media arbitration.
In this way, the data link layer is analogous to a neighborhood traffic cop; it
endeavors to arbitrate between parties contending for access to a medium,
without concern for their ultimate destination. Examples of data link protocols
are Ethernet for local area networks (multinode) and the Point-to-Point
Protocol (PPP).
• OSI Layer 1—the Physical layer: The physical layer defines the electrical or
mechanical interface to the physical medium. It consists of the basic networking
hardware transmission technologies. It principally deals with wiring and
caballing. The physical layer defines the ways of transmitting raw bits over a
physical link connecting network nodes including copper wires, fiber optic
cables, and radio links. The physical layer determines how to put a stream of bits
from the data link layer on to the pins for a USB printer interface, an optical
1
A frame is a data transmission unit consisting of payload (specific number of bytes to be
transferred) as well as synchronization bits that indicate to the receiver the beginning and end of
the payload data.
38 2 The Internet in IoT—OSI, TCP/IP, IPv4, IPv6 and Internet Routing
fiber transmitter, or a radio carrier. The bit stream may be grouped into code
words or symbols and converted to a physical signal that is transmitted over a
hardware transmission medium. For instance, it uses +5 volts for sending a bit of
1 and zero volts for a bit of 0.
User A User B
Application Application
Session Session
Presentation Presentation
Transport Transport
Network Network
Physical Physical
Internet
language on the same layer allowing sending and receiving layers (e.g., networking
layers) to virtually communicate. Data passed upwards is decapsulated before being
passed further up the stack.
Layer 7 Application
Layer 6 Session Application Layer 4
Layer 5 Presentation
Layer 4 Transport Transport Layer 3
As with the OSI model, the application layer is the topmost layer of TCP/IP model.
It combines the application, presentation, and session layers of the OSI model.
Application layer defines TCP/IP application protocols and how host programs
interface with transport layer services to use the network.
Transport layer is the third layer of the four-layer TCP/IP model. Its main purpose is
to permit devices on the source and destination hosts to carry on a conversation.
Transport layer defines the level of service and status of the connection used when
transporting data. The main protocols included at the transport layer are TCP
(Transmission Control Protocol) and UDP (User Datagram Protocol).
The Internet layer of the TCP/IP stack packs data into data packets known as IP
datagrams, which contain source and destination address information that is used to
forward the datagrams between hosts and across networks. The Internet layer is also
responsible for routing of IP datagrams.
The main protocols included at Internet layer are IP (Internet Protocol), ICMP
(Internet Control Message Protocol), ARP (Address Resolution Protocol), RARP
(Reverse Address Resolution Protocol), and IGMP (Internet Group Management
Protocol).
The main TCP/IP Internet layer (or networking layer in OSI) devices are routers.
Routers are similar to personal computers with hardware and software components
that include CPU, RAM, ROM, flash memory, NVRAM, and interfaces. Given the
importance of the router’s role in IoT, we will use the next section to describe its
main functions.
There are quite a few types and models of routers. Generally speaking, every router
has the same common hardware components as shown in Fig. 2.4. Depending on
the model, router’s components may be located in different places inside the router.
1. CPU (Central Processing Unit): CPU is another term for microprocessor, the
central unit containing the logic circuitry that preforms the instructions of a
router’s program. It is considered as the brain of the router or a computer. CPU
2.3 Transmission Control Protocol/Internet Protocol (TCP/IP) 41
CPU
Bus Serial Port n
System
System Console
VNRAM Control Port
Bus
(ASIC)
Ethernet Port 0
RAM
USB
Ethernet Port m Port
Network access layer is the first layer of the four-layer TCP/IP model. It combines
the data link and the physical layer of the OSI model. Network access layer defines
details of how data is physically sent through the network. This includes how bits
44 2 The Internet in IoT—OSI, TCP/IP, IPv4, IPv6 and Internet Routing
Interfaces / Ports Routers are accessed and connected to the external N/A
world via the interfaces.
are electrically or optically signaled by hardware devices that interface directly with
a network medium, such as coaxial cable, optical fiber, radio links, or twisted-pair
copper wire. The most common protocol operating at the network access layer is
Ethernet. Ethernet uses Carrier Sense Multiple Access/Collision Detection
(CSMA/CD) method to access the media, when Ethernet operates in a shared
media. Such access method determines how a host will place data on the medium.
Applications
The remainder of this chapter focuses on the main Internet layer address pro-
tocols, namely IP version 4 and IP version 6. It then describes the main Internet
routing protocols, namely OSPF, EIRGP, and BGP.
As we mentioned earlier in this chapter, Internet Protocol (IP) provides the main
internetwork routing as well as error reporting and fragmentation and reassembly of
information units called datagrams for transmission over networks with different
maximum data unit sizes. IP addresses are globally unique numbers assigned by the
46 2 The Internet in IoT—OSI, TCP/IP, IPv4, IPv6 and Internet Routing
2.5.1.1 IP Version 4
IPv4 addresses are normally expressed in dotted-decimal format, with four numbers
separated by periods, such as 192.168.10.10. It consists of 4-octets (32-bit) number
that uniquely identifies a specific TCP/IP (or IoT) network and a host (computer,
printer, router, IP-enabled sensor, any device requiring a network interface card)
within the identified network. Hence, an IPv4 address consists of two main parts:
the network address part and the host address part. A subnet mask is used to divide
an IP address into these two parts. It is used by the TCP/IP protocol to determine
whether a host is on the local subnet or on a remote network.
I. IPv4 Subnet Mask
It is important to recall that in TCP/IP (or IoT) networks, the routers that pass
packets of data between networks do not know the exact location of a host for
which a packet of information is destined. Routers only know what network the
host is a member of and use information stored in their route table to determine how
to get the packet to the destination host’s network. After the packet is delivered to
the destination’s network, the packet is delivered to the appropriate host. For this
process to work, an IP address is divided into two parts: network address and host
address.
To better understand how IP addresses and subnet masks work, IP addresses
should be examined in binary notation. For example, the dotted-decimal IP address
192.168.10.8 is (in binary notation) the 32 bit number
11000000.10101000.00001010.00001000. The decimal numbers separated by
periods are the octets converted from binary to decimal notation.
The first part of an IP address is used as a network address, the last part as a host
address. If you take the example 192.168.10.8 and divide it into these two parts you
get the following: 192.168.10. network and 8 host or
192:168:10:0-Network Address;
0:0:0:8-Host Address:
In TCP/IP, the parts of the IP address that are used as the network and host
addresses are not fixed, so the network and host addresses above cannot be
determined unless you have more information. This information is supplied in
another 32-bit number called a subnet mask. In the above example, the subnet mask
is 255.255.255.0. It is not obvious what this number means unless you know that
255 in binary notation equals 11111111; so, the subnet mask is as follows:
2.5 Internet Protocol Suite 47
11111111:11111111:11111111:0000000
Lining up the IP address and the subnet mask together, the network and host
portions of the address can be separated as follows:
11000000:10101000:00001010:10001000-IP addressð192:168:10:8Þ
11111111:11111111:11111111:00000000 - Subnet maskð255:255:255:0Þ
The first 24 bits (the number of ones in the subnet mask) are identified as the
network address, with the last 8 bits (the number of remaining zeros in the subnet
mask) identified as the host addresses. This gives you the following:
11000000:10101000:00001010:00000000-Network addressð192:168:10:0Þ
00000000:00000000:00000000:00001000-Host addressð000:000:000:8Þ
Class A 0
Class B 10
Class C 110
2.5.1.2 IP Version 6
IPv4 has room for about 4.3 billion addresses, which is not nearly enough for the
world’s people, let alone IoT with a forecast of 20 billion devices by 2020. In 1998,
the Internet Engineering Task Force (IETF) had formalized the successor protocol:
IPv6. IPv6 uses a 128-bit address, allowing 2128, or 340 trillion trillion trillion
(3.4 1038) addresses. This translates to about 667 1021 (667 sextillion)
addresses per square meter in earth. Version 4 and version 6 protocols are not
designed to be interoperable, complicating the transition to IPv6. However, several
IPv6 transition mechanisms have been devised to permit communication between
IPv4 and IPv6 hosts.
IPv6 delivers other benefits in addition to a larger addressing space, for example,
permitting hierarchical address allocation techniques that limit the expansion of
routing tables, simplified and expanded multicast addressing and service delivery
optimization. Device mobility, security, and configuration aspects have been con-
sidered in the design of IPv6.
2.5 Internet Protocol Suite 49
0111000111011010000000001101001100000000000000000010111100111011
0000001010101010000000001111111111111110001010001001110001011011
Routers use routing tables to communicate: send and receive packets among
themselves. TCP/IP routing specifies that IP packets travel through an internetwork
one router hop at a time. Hence, the entire route is not known at the beginning of
the journey. Instead, at each stop, the next router hop is determined by matching the
destination address within the packet with an entry in the current router’s routing
table using internal information.
Before describing the main routing protocols in the Internet today, it is important
to introduce a few fundamental definitions.
• Static Routes: Static routes define specific paths that are manually configured
between two routers. Static routes must be manually updated when network
changes occur. Static routes use should be limited to simple networks with
predicted traffic behavior.
• Dynamic Routes: Dynamic routing requires the software in the routing devices
to calculate routes. Dynamic routing algorithms adjust to changes in the network
and repeatedly select best routes. Internet-based routing protocols are dynamic
in nature. Routing tables should be updated automatically to capture changes in
the network (e.g., link just went down, link that was down is now up, link speed
update).
• Autonomous System (AS) is a network or a collection of networks that are
managed by a single entity or organization (e.g., department network). An AS
may have multiple subnetworks with combined routing logic and common
routing policies. Routers used for information exchange within AS are called
interior routers. They use a variety of interior routing protocols such as OSPF
and EIGRP. Routers that move information between autonomous systems are
called exterior routers, and they use the exterior gateway protocol such as
Border Gateway Protocol (BGP). Interior routing protocols are used to update
the routing tables of routers within an AS. In contrast, exterior routing protocols
are used to update the routing tables of routers that belong to different AS.
• Routing Table: Routing tables basically consist of destination address and next
hop pairs. Figure 2.9 shows an example of a typical Cisco router routing table
using the command “show ip route.” It lists the set of comprehensive codes
including various routing schemes. Figure 2.8 also shows that the first entry is
interpreted as meaning “to get to network 29.1.0.0 (subnet 1 on network 29), the
next stop is the node at address 51.29.23.12.”
• Distance Vector Routing: A vector in distance vector routing contains both
distance and direction to determine the path to remote networks using hop count
as the metric. Hop count is defined as the number of hops to destination router or
network (e.g., if there are two routers between a source router and destination
router, the number of hops will be three). All neighbor routers will send
information about their connectivity to their neighbors indicating how far other
routers are from them. Hence, in distance vector routing, all routers exchange
information only with their neighbors (not with all routers). One of the
2.5 Internet Protocol Suite 51
AS1
Network
BGP
Network Network
AS2
Codes: C - connected,
S - static,
I - IGRP,
R - RIP,
M - mobile,
B - BGP
D - EIGRP,
EX - EIGRP external,
O - OSPF,
IA - OSPF inter area
N1 - OSPF NSSA external type 1,
N2 - OSPF NSSA external type 2
E1 - OSPF external type 1,
E2 - OSPF external type 2,
E - EGP,
i - IS-IS,
su - IS-IS summary,
L1 - IS-IS level-1,
L2 - IS-IS level-2
ia - IS-IS inter area,
* - candidate default,
U - per-user static route,
o - ODR,
P - periodic downloaded static route
Interior Routing Protocols (IGPs) operate within the confines of autonomous sys-
tems. We will next describe only the key protocols that are currently popular in
TCP/IP networks. For additional information, the reader is encouraged to peruse the
references at the end of the chapter.
A. Routing Information Protocol (RIP): RIP is perhaps the oldest interior dis-
tance vector protocol. It was developed by Xerox Corporation in the early
1980s. It uses hop count (maximum is 15) and maintains times to detect failed
links. RIP has a few serious shortcomings: it ignores differences in line speed,
line utilization, and other metrics. More significantly, RIP is very slow to
converge for larger networks, consumes too much bandwidth to update the
routing tables, and can take a long time to detect routing loops.
B. Enhanced Interior Gateway Routing Protocol (EIGRP): Cisco was the first
company to solve RIP’s limitations by introducing the Interior Gateway
Routing Protocol (IGRP) first in the mid-1980s. IGRP allows the use of
bandwidth and delay metrics to determine the best path. It also converges faster
than RIP by preventing sharing hop counts and avoiding potential routing loops
caused by disagreement over the next routing hop to be taken.
Cisco then enhanced IGRP to handle larger networks. The enhanced IGRP
(EIGRP) combines the ease of use of traditional distance vector routing pro-
tocols with the fast rerouting capabilities of the newer link-state routing pro-
tocols. It consumes significantly less bandwidth than IGRP because it is able to
limit the exchange of routing information to include only the changed
information.
C. Open Shortest Path First (OSPF): Open Shortest Path First (OSPF) was
developed by the Internet Engineering Task Force (IETF) in RFC 2328 as a
replacement for RIP. OSPF is based on the work started by John McQuillan in
the late 1970s and continued by Radia Perlman and Digital Equipment
Corporation in the mid-1980s. OSPF is widely used as the Interior Router
protocol in TCP/IP networks. OSPF is a link-state protocol, so routers inside an
AS broadcast their link states to all the other routers. It uses configurable least
2.5 Internet Protocol Suite 53
cost parameters including delay, data rate/link speed, cost, and other parame-
ters. Each router maintains a database topology of the AS to which it belongs.
In OSPF every router calculates the least cost path to all destination networks
using Dijkstra’s algorithm. Only the next hop to the destination is stored in the
routing table.
OSPF maintains three separate tables: neighbor table, link-state database table,
and routing table.
– Neighbor Table: It uses the so-called Hello Protocol to build neighbor
relationship. The relationship is used to exchange information with all
neighbors) for the purpose of building the link-state DB table. When a new
router joins the network, it sends a “Hello” message periodically to all
neighbors (typically every few seconds). All neighbors will also send Hello
messages. The messages maintain the state of the neighbor tables.
– Link-state DB Table: Once the neighbor tables are built, link-state
advertisements (LSAs) will be sent out to all neighbors. LSAs are packets
that contain information about networks that are directly connected to the
router that is advertising. Neighboring routers will receive the LSAs and add
the information to the link-state DB. They then increment the sequence
number and forward LSAs to their neighbors. Hence, LSAs are propagated
from routers to all the neighbors with advertised information about all
networks connected to them. This is considered the key to dynamic routing.
– Routing Table: Once the link-state DB tables are built, Dijkstra’s algorithm
(sometimes called the Shortest Path First Algorithm) is used to build the
routing tables.
D. Integrated Intermediate System to Intermediate System (IS-IS): Integrated
IS-IS is similar in many ways to OSPF. It can operate over a variety of sub-
networks, including broadcast LANs, WANs, and point-to-point links. IS-IS
was also developed by IETF as an Internet standard in RFC 1142.
Exterior routing protocols provide routing between autonomous systems. The two
most popular exterior routing protocols in the TCP/IP are EGP and BGP.
A. Exterior Gateway Protocol (EGP): EGP was the first exterior routing protocol
that provided dynamic connectivity between autonomous systems. It assumes
that all autonomous systems are connected in a tree topology. This assumption
is no longer true and made EGP obsolete.
B. Border Gateway Protocol (BGP): BGP is considered the most important and
widespread exterior routing protocol. Like EGP, BGP provides dynamic con-
nectivity between autonomous systems acting as the Internet core routers. BGP
was designed to prevent routing loops in arbitrary topologies by preventing
54 2 The Internet in IoT—OSI, TCP/IP, IPv4, IPv6 and Internet Routing
routers from importing any routes that contain themselves in the autonomous
system’s path. BGP also allows policy-based route selection based on the
weight (set locally on the router), local preference (indicates which route has
local preference and BGP selects the one with the highest preference), network
or aggregate (chooses the path that was originated locally via an aggregate or a
network), shortest AS path (used by BGP only in case it detects two similar
paths with nearly the same local preference, weight, and locally originated or
aggregate addresses) just to name a few.
BGP’s routing table contains a list of known routers, the addresses they can
reach, and a cost metric associated with the path to each router so that the best
available route is chosen. BGP is a Layer 4 protocol that sits on top of TCP. It is
simpler than OSPF, because it does not have to worry about functions that TCP
addresses. The latest revision of BGP, BGP4 (based on RFC 4271), was
designed to handle the scaling problems of the growing Internet.
2.6 Summary
This chapter focused on the “Internet” in the “Internet of Things.” It started with a
summary of the well-known Open Systems Interconnection model. Next, it
described the TCP/IP model, which is the basis for Internet. The TCP/IP protocol
has two big advantages in comparison with earlier network protocols: reliability and
flexibility to expand. In fact, the TCP/IP protocol was designed for the US Army
addressing the reliability requirement (resist breakdowns of communication lines in
times of war). The remarkable growth of Internet applications can be attributed to
its flexibility and expandability.
The chapter next compared IP version 4 with IP version 6. It showed the lim-
itation of IPv4, especially for the expected 20 billion devices for IoT. IPv4 has room
for about 4.3 billion addresses, whereas IPv6, with a 128-bit address, has room for
2128, or 340 trillion trillion trillion (3.4 1038) addresses. Finally, detailed
description of IoT network-level routing was described and compared with classical
routing protocols. It was mentioned that routing tables are used in routers to send
and receive packets. Another key feature of TCP/IP routing is the fact that IP
packets travel through an internetwork one router hop at a time, and thus, the entire
route is not known at the beginning of the journey.
1. Ethernet and Point-to-Point Protocol (PPP) are two examples of data link
protocols listed in this chapter. Name two other data link protocols?
2. Provide an example of session layer protocol.
2.7 Problems and Exercises 55
3. In a Table format, compare the Bandwidth, Distance, Interface Rating, Cost and
Security of (1) Twisted pair, (2) Coaxial cabling and (3) Fiber Optical cabling.
4. A. What are the main components of a router? B. Which element is considered
the most essential? C. Why?
5. What is the main function of NVRAM? Why such function is important to
operate a router?
6. How do network administrators guarantee that changes in the configuration are
not lost in case the router is restarted or loses power?
7. What is a disaster recovery function in a router? Which router’s sub-component
contains such function?
8. Many argue that Routers are special computers but built to handle internetwork
traffic. List three main differences between routers and personal computers.
9. There are no input devices for router like a monitor, a keyboard, or a mouse.
How does a network administrator communicate with the router? List all
possible scenarios. What are the main differences between such interfaces?
10. How many IPv4 addresses are available? Justify your answer.
11. What is the ratio of the number of addresses in IPv6 compared to IPv4?
12. IPv6 uses a 128-bit address, allowing 2128 Addresses. In decimal, how many
IPv6 addresses exist? How many IPv6 Addresses each human will have? Why
do we need billions of addresses for each human being?
13. How many IPv6 address will be available on each square meter of earth?
14. What are the major differences between Interior and Exterior Routing
Protocols?
15. What is distance vector protocol? Why is it called a Vector? Where is it used?
16. When would you use Static Routing and when would use Dynamic Routing?
Why?
17. Most IP networks use dynamic routing to communicate between routers but
may have one or two static routes. Why would you use static routes?
18. We have mentioned that in TCP/IP networks, the entire route is not known at
the beginning of the journey. Instead, at each stop, the next hop router is
determined by matching the destination address within the packet with an entry
in the current router’s routing table using internal information. IP does not
provide for error reporting back to the source when routing anomalies occur.
A. Which Internet Protocol provide error reporting?
B. List two other tasks that this protocol provide?
19. Why is EGP considered to be obsolete for the current Internet?
56 2 The Internet in IoT—OSI, TCP/IP, IPv4, IPv6 and Internet Routing
20. In a table, compare the speed and distance of Standard Ethernet, Fast Ethernet
and Gigabit Ethernet. Why is Ethernet connection limited to 100 meters?
21. Why does the Internet require both TCP and IP Protocols?
22. Are IPv4 and IPv6 protocols designed to be interoperable? How would an
enterprise transition from IPv4 to IPv6?
References
1. W. Odom, CCNA Routing and Switching 200-120 Official Cert Guide Library Book. ISBN:
978-1587143878 (2013)
2. P. Browning, F. Tafa, D. Gheorghe, D. Barinic, Cisco CCNA in 60 Days. ISBN: 0956989292
(2014)
3. G. Heap, L. Maynes, CCNA Piratical Studies Book (Cisco Press, 2002)
4. Information IT Online Library: http://www.informit.com/library/content.aspx?b=CCNA_
Practical_Studies&seqNum=12
5. Inter NIC (InterNIC is a registered service mark of the U.S. Department of Commerce. It is
licensed to the Internet Corporation for Assigned Names and Numbers, which operates this
web site)—Public Information Regarding Internet Domain Name Registration Services.
Online: http://www.internic.net
6. Understanding TCP/IP addressing and subnetting basics. Online: https://support.microsoft.
com/en-us/kb/164015
7. Tutorials Point, IPv4—Address Classes. Online: http://www.tutorialspoint.com/ipv4/ipv4_
address_classes.htm
8. Google IPv6, What if the Internet ran out of room? In fact, it’s already happening. Online:
http://www.google.com/intl/en/ipv6/
9. Wikipedia, Internet Protocol version 6 (IPv6). Online: https://en.wikipedia.org/wiki/IPv6
10. IPv6 Addresses, Microsoft Windows Mobile 6.5, April 8, 2010. Online: https://msdn.
microsoft.com/en-us/library/aa921042.aspx
11. Binary to Hexadecimal Convert. Online: http://www.binaryhexconverter.com/binary-to-hex-
converter
12. Technology White Paper, Cisco Systems online: http://www.cisco.com/c/en/us/tech/ip/ip-
routing/tech-white-papers-list.html
13. M. Caeser, J. Rexford, BGP routing policies in ISP networks. Online: https://www.cs.
princeton.edu/*jrex/papers/policies.pdf
14. A. Shaikh, A., M. Goyal, A. Greenberg, R. Rajan, “An OSPF topology server: design and
evaluation”, IEEE Journal on Selected Areas in Communications, Volume 20, Issue 4, May
2002
15. Y. Yang, H. Xie, H. Wang, A. Silberschatz, Y. Liu, L. Li, A. Krishnamurthy, On route
selection for interdomain traffic engineering (IEEE Network Magazine, Special issue on
Interdomain Routing, Nov-Dec, 2005)
16. N. Feamster, J. Winick, J. Rexford, “A model of BGP routing for network engineering,” in
Proc. ACM SIGMETRICS, June 2004
17. N. Feamster, H. Balakrishnan, “Detecting BGP configuration faults with static analysis,” in
Proc. Networked Systems Design and Implementation, May 2005
18. Apple History/ Power Macintosh Gigabit Ethernet, Online: http://www.apple-history.com/
g4giga. Retrieved November 5, 2007
Chapter 3
The Things in IoT: Sensors and Actuators
3.1 Introduction
The Internet of Things (IoT) was defined in Chap. 1 as the intersection of the
Internet, things, and data. Processes and standards were also added for a more
comprehensive IoT definition. Things were defined as anything and everything
stretching from appliances, to buildings, to cars, to people to animals, to trees, to
plants, etc.
Chapter 1 further categorized IoT solutions into four main levels: IoT devices,
IoT network, IoT services platform, and IoT applications, as shown in Fig. 3.1.
Each level has its own medium and protocols.
This chapter first defines the “Things” in IoT (Fig. 3.2) and then describes the
key requirements for things to be able to communicate over the Internet. The two
main requirements for “Things” in IoT are sensing and addressing. Sensing is
essential to identify and collect key parameters for analysis, and addressing is
necessary to uniquely identify things over the Internet. While sensors are very
crucial in collecting key information to monitor and diagnose the “Things,” they
typically lack the ability to control or repair such “Things” when overhaul is
needed. This raises the question: Why spend money to sense “Things” if they
cannot be controlled? Actuators have been introduced to address this important
question in IoT. With this in mind, “Things” in IoT are required to be uniquely
identifiable with the ability to sense and actuate (perform an action).
As we'll illustrate in this chapter, however, “Things” (e.g., end devices) are not
required to actuate themselves but typically are required to provide an interface to
allow applications to do so. It should be noted that sensing and actuating capa-
bilities may be supported on the same device.
IoT Applications
API Manager
IoT Network
IoTGateway
IoT Devices
4. Notification
& Control
3.2.1 Definition
A sensor is a device (typically electronic) that detects events or changes in its physical
environment (e.g., temperature, sound, heat, pressure, flow, magnetism, motion,
and chemical and biochemical parameters) and provides a corresponding output.
3.2 IoT Sensors 59
Most sensors take analog inputs and deliver digital, often electrical, outputs. Because
the sensing element, on its own, typically produces analog output, an
analog-to-digital convertor is often required.
Sensors are comparable to the human five senses. They form the front end of the
IoT devices, i.e., “Things.” Sensors are very crucial in every IoT vertical (e.g.,
smart cities, smart grid, health care, agriculture, security and environment moni-
toring, and smart parking) as they bridge the world’s physical objects with the
Internet.
Sensors may be very simple with a core function to collect and transmit data or
smart by providing additional functionality to filter duplicate data and only notify
the IoT gateway when very specific conditions are met. This requires some pro-
graming logic to be present on the sensor itself. In this case, an IoT sensing device
requires at least three elements—sensor(s), microcontrollers, and connectivity to
send data to IoT gateway or other systems. Figure 3.3 shows the components for a
smart sensor.
Sensors may collect large amounts of data at any time and from any location and
transmit it over an IoT network in real time. The data is then analyzed and possibly
correlated with other business intelligence databases to provide business insight or
enhanced awareness of the environment, bringing onward opportunities and/or
gains in efficiency and productivity.
Transceiver
(Data Transmission)
Microcontroller
(Data Processing)
Sensing Element
(Data Collection)
Physical Signal
Environment
60 3 The Things in IoT: Sensors and Actuators
As we mentioned above, a sensor’s main purpose is collecting data from its sur-
rounding environment and providing output to its adjoining devices (e.g., gateways
and actuators) or applications. Sensors typically collect data using physical inter-
faces (inputs) that sense the environment and then convert input signals into
electrical signals (outputs) that are understood by the communication and com-
puting devices. Output signals are then processed by the getaways and/or north-
bound applications. In some instances, the sensors’ outputs are processed directly
by a lightweight application.
There are many types of proprietary and non-proprietary sensors. The current IoT
trend is to move away from proprietary and closed systems and embrace IP-based
sensor networks. This allows native connectivity between wireless sensor networks
and the Internet, enabling smart objects to participate in IoT. IP-based sensor net-
works require each device to be uniquely identifiable with a unique IP address so that
it can be easily identified over a large network. Building an all-IP infrastructure from
scratch, however, would be difficult because many different sensor and actuator
technologies (both wired and wireless) have already been deployed over the years.
There are many different types of sensors across various technologies. The most
common of which include the following:
a. Temperature Sensors: Temperature is perhaps the most commonly measured
conservational quantity. This is anticipated since most physical, electronic,
chemical, mechanical, and biological systems are affected by temperature. There
are at least four types of temperature sensors:
• Thermocouple Sensors: A thermocouple is a device consisting of two dif-
ferent and dissimilar conductors in contact. It produces a voltage as a result
of the thermoelectric effect. Thermocouple sensor is made by joining two
dissimilar metals at one end.
• Resistance Temperature Detector (RTD) Sensors: RTDs are temperature
sensing devices whose resistance changes with temperature. They have been
used for many years to measure temperature in laboratory and industrial
processes and have developed a reputation for accuracy, repeatability, and
stability.
• Thermistors: Similar to the RTD, the thermistor is a temperature sensing
device whose resistance changes with temperature. Thermistors, however,
are made from semiconductor materials. Resistance is determined in the
same manner as the RTD, but thermistors exhibit a highly nonlinear resis-
tance versus temperature curve.
3.2 IoT Sensors 61
c. Flow Sensors: Flow sensors (Fig. 3.6) are used to detect and record the rate of
fluid flow in a pipe or a system. They are also used to measure the flow/transfer
of heat caused by the moving medium. Sensing and measuring the flow is
critical for many applications ranging from brewing machines to more serious
applications such as flow monitoring for high purity acids.
A good example about the importance of flow sensing and monitoring is the
water crisis in Flint, Michigan, United States, which started in April 2014 and
resulted in criminal charges filed against three people in regard to the crisis by
Michigan attorney general in April 2016.
Flint basically changed its water source from treated Detroit Water that was
sourced from the great lakes and the Detroit River, to the Flint River. Officials
essentially had failed to detect a very high lead contamination creating a serious
public health danger. The acidic Flint River water caused lead from aging pipes
to leak into the water supply, causing extremely elevated levels of the heavy
metal. Thousands of children were exposed to drinking water with very high
levels of lead, and many experienced health problems.
d. Level Sensors: Level sensors (Fig. 3.7) are used to measure the level of fluids
continuously or at point values. The element to be measured can be inside a
container or can be in its natural form such as a well in an oil rig.
There are many uses for level sensors. Ultrasonic level sensors, for instance, are
used for non-contact level sensing of highly viscous liquids and even bulk
solids. They are also widely used in water treatment applications for pump
control and open channel flow measurement. Another example is the
capacitance-level sensors to measure the presence of a variety of solids and
liquids using radio frequency signals in the capacitance circuit.
e. Imaging sensors: Imaging sensors (Fig. 3.8) are sophisticated sensors used in
digital cameras, medical imaging machines, and night vision equipment. They
are utilized to measure image information by capturing and then converting
variable attenuation of waves into signals.
f. Noise Sensors: High noise can have damaging effects on humans (e.g., car-
diovascular) as well as on animals (e.g., hearing loss). Such noise is often
caused by machines, airplanes, trains, construction, and loud music especially in
closed spaces.
Many government agencies have started installing noise sensors to measure
noise pollutions or the so-called noise disturbance (excessive noise that may
harm humans or animals).
Ambient noise sensors continuously monitor noise levels in surrounding envi-
ronments. When the noise level changes, they send electronical signal to an
overall ambient noise system to take action. Such action may be an automatic
action (e.g., adjust music level) or a simple notification to authorities.
g. Air Pollution Sensors: Many governments have established agencies to mon-
itor and control the air quality in major cities. For instance, the USA has
established the EPA (Environment Protection Agency), in 1970, with a mission
to protect Americans from significant health risks by providing accurate envi-
ronmental information to its citizens.
Air pollution sensors detect and monitor the presence of air pollution in the
surrounding environment. They focus on five main components: ozone, par-
ticulate matter, carbon monoxide, sulfur dioxide, and nitrous oxide.
h. Proximity and displacement Sensors: Proximity sensors detect the presence or
absence of objects using electromagnetic fields, light, or sound. There are many
types, each suited to specific applications and environments.
• Inductive Sensors: Used for close-range detection of ferrous material;
• Capacitive Sensors: Used for close-range detection of nonferrous material;
• Photoelectric Sensors: Used for long-range target detection; and
• Ultrasonic Sensors: Used for long-range detection of targets with difficult
surface (Table 3.1).
64 3 The Things in IoT: Sensors and Actuators
Most IoT applications require smaller and smarter sensors with advanced func-
tionality to collect more data, low-power processors, longer battery life, faster
response time, and shorter time-to-market. Sensors are expected to be dynamic in
their natural surroundings with embedded ability to collect real-time data.
In general, sensors can be either self-directed (autonomous) where they work on
their own once they are installed, or user-controlled where collection conditions are
pre-programed by the user depending on their needs. Finally, sensors should also
have the capability to send the collected data (or a subset of it) to the appropriate
system via the IoT gateway as shown in Fig. 3.1.
IoT sensors are expected to have the following characteristics:
1. Data Filtering: A sensor’s core function is the ability to collect and send data to
IoT gateway or other appropriate systems. Sensors are not expected to perform
deep analytical functions. However, simple filtering techniques may be required.
Onboard data (or signal) processing microcontroller (as shown in Fig. 3.3)
3.2 IoT Sensors 65
makes a smart sensor smarter. The microcontroller filters the data/signals before
transmission to the IoT gateway or control network. It basically removes
duplicate or unwanted data or noise before transferring the data.
As we mentioned in Sect. 3.2.3, non-autonomous sensors are
custom-programmed to produce alerts automatically when certain condition is
met (e.g., temperature is above 70 °F in a data center). They often integrate
VLSI technology and MEMS devices to reduce cost and optimize integration.
2. Minimum power consumption: Several factors are driving the requirements
for low power consumptions in IoT. Sensors for multiple IoT verticals (e.g.,
smart grid, railways, and roadsides) will be installed in locations that are dif-
ficult to reach to replace batteries.
3. Compact: Space will also be limited for most IoT verticals. As such, sensors
need to fit in small spaces.
4. Smart Detection: An important sensing category for the IoT is remote sensing,
which consists of acquiring information about an object without making
physical contact with it; the object can be nearby or several hundred meters
away. Multiple technology options are available for remote sensing, and they
can be divided into three broad functions:
• Presence or proximity detection—when just determining the absence or
presence of an object is sufficient (e.g., security applications). This is the
simplest form of remote sensing.
• Speed measurement—when the exact position of an object is not required,
but the object’s speed is (e.g., traffic monitoring applications).
• Detection and ranging—when the position of an object relative to the sensor
must be determined precisely and accurately (e.g., vehicle collision
avoidance).
5. High Sensitivity: Sensitivity is generally the ratio of a small change in elec-
trical output signal to a small change in physical signal. It may be expressed as
the derivative of the transfer function (the functional relationship between input
signal and output signal) with respect to physical signal. Sensitivity indicates
how much the output of the device changes with unit change in input (quantity
to be measured). For example, if the voltage of a temperature sensor changes by
1 mV for every 1 °C change in temperature, then the sensitivity of the sensor is
said to be 1 mV/ °C.
6. Linearity: Linearity is the measure of the extent to which the output is linearly
proportional to the input. Nonlinearity is the maximum deviation from a linear
transfer function over the specified dynamic range.
7. Dynamic Range: The range of input signals which may be converted to
electrical signals by the sensor. Outside of this range, signals cause unsatis-
factory accuracy.
66 3 The Things in IoT: Sensors and Actuators
8. Accuracy: The maximum expected error between measured (actual) and ideal
output signals. Manufacturers often provide the accuracy in the datasheet; e.g.,
high-quality thermometers may list accuracy to within 0.01 % of full-scale
output.
9. Hysteresis: A sensor does not return the same output value when the input
stimulus is driven up or down. The width of the expected error in terms of the
measured quantity is defined as the hysteresis.
10. Limited Noise: All sensors produce some level of noise with their output
signals. Sensor noise is only an issue if it impacts the performance of the IoT
system. Smart sensors must filter out unwanted noise and be programmed to
produce alerts on their own when critical limits are reached. Noise is generally
distributed across the frequency spectrum. Many common noise sources pro-
duce a white noise distribution, which is to say that the spectral noise density is
the same at all frequencies.
11. Wide Bandwidth: Sensors have finite response times to instantaneous changes
in physical signal. Also, many sensors have decay times, which represent the
time after a step change in input signal for the sensor output to decay to its
original value. The bandwidth of a sensor is the frequency range between these
two frequencies. When a sensor is utilized to collect measurements, it is rec-
ommended to use sensors with the widest possible bandwidth. This ensures that
the basic measurement system is capable of responding linearly over the full
range of interest. The disadvantage, however, is that wider bandwidth may
result in sensor response to unwanted frequency.
12. High Resolution: The resolution of a sensor is defined as the smallest
detectable signal fluctuation. It is the smallest change in the input that the
device can detect. The definition of resolution must include some information
about the nature of the measurement being carried out.
13. Minimum Interruption: sensors must operate normally at all time with zero or
near-zero interruption and be programmed to produce instant alerts on their
own when their normal operation is interrupted.
14. Higher reliability: Higher reliability sensor provides the assurance to rely on
the accuracy of the output measurements.
15. Ease of use: Ease of use is considered the top requirement for any electronic
system nowadays. Clear examples we have all experienced are Apple’s iPhone
versus competitor devices with the same functionality. Users are willing to pay
more for easy to use devices, and sensors are no exception. The best user
interface is “no user interface” where sensors are expected to work by them-
selves once they are connected.
Other characteristics include some data storage and self-warning of anomalous
symptoms.
3.3 RFID 67
3.3 RFID
Another way of capturing information from “Things” is through the use of RFID
(radio frequency identification). RFID is not a sensor but a mechanism to capture
information pre-embedded into the so-called tag of a thing or an object using radio
waves.
RFID consists of two parts: a tag and a reader. Further, the tag has two parts: a
microchip that stores and processes information, and an antenna to receive and
transmit a signal. The tag contains the specific serial number for one specific object.
The reader reads the information encoded on a tag, using a two-way radio trans-
mitter–receiver, by emitting a signal to the tag using an antenna. The tag responds
with the information written in its memory. The reader will then transmit the read
results to an RFID computer program.
An RFID-based solution has some advantages over older reader-tag-based
solutions, such as barcode, including:
• RFID tag does not need to be within direct line of sight of the reader and can be
read from a distance up to 12 m for passive ultra-high frequency (UHF) system.
Battery-powered tags typically have a reading range of 100 m.
• RFID data on the tag can be modified based on business needs. The barcode
data is very difficult to change once deployed.
• RFID tags are durable. Barcodes, in comparison, are printed on a product for
everyone to see. They can be damaged or changed. RFID tags are hidden and
may be reused across multiple products. Also RFID tags are capable of storing
much more data.
• RFID data may be encrypted on the tag, thereby preventing unauthorized users
from changing the data or counterfeiting.
• RFID systems can read hundreds of tags simultaneously. This is significant in a
retail store as it saves the staff valuable time that they can spend on higher value
tasks.
Figure 3.9 shows the RFID main components: a programmable RFID tag for
storing data, a reader with an antenna to read the tags, and an application software
hosted on a computer to analyze the data.
Like any other technology, RFID has a number of disadvantages, but they are
relatively minor. A top disadvantage is the susceptibility of the tags to jamming by
blocking the RFID radio waves, for instance by wrapping the tags with metallic
material such as aluminum foil. Metallic ink on book covers can also affect the
transmission of the radio waves.
Another potential disadvantage is interference between multiple readers and tags
if the overall system is not set up appropriately. Each RFID reader basically scans
all the tags it picks up in its range. This may create a mix-up between tag infor-
mation (e.g., charging a customer for items in someone else’s shopping carts within
the same range).
68 3 The Things in IoT: Sensors and Actuators
RFID
Application
RFID Reader
with Antenna
RFID Tag
Thing
RFID is already used by a large number of application. Top examples include the
following:
• Access Control and Management: Many companies and government agencies
are using RFID tags in identification badges, replacing earlier magnetic stripe
cards. With RFID, employees as well as authorized guest may be greeted by
their name on a screen or by a voice message upon entering a building.
Companies are currently using data collected from the information associated
with each employee’s badge to plan for workplace optimization.
RFID tags are also widely used for electronic toll collections (e.g., California’s
E-ZPass) eliminating major delay on toll roads. Electronic toll collection system
determines whether the passing vehicle is enrolled in the program, automatically
issues traffic citations for those that are not, and automatically withdraws the toll
charges from the accounts of registered car owners.
• Passport: Many departments of state around the world (e.g., USA, Canada,
Norway, Malaysia, Japan, and many EU countries) are using RFID passports
that can be read from a reader located up to ten meters away. In this case,
passports are designed with an electronic tag that contains main information
with a digital picture of the passport holder. Most solutions are also adding a
thin metal lining to make it more difficult for unauthorized readers to scan
information when the passport is closed. Standards for RFID passports have
3.3 RFID 69
been established by the International Civil Aviation Organization and are con-
tained in ICAO Document 9303 (6th Edition, 2006).
• Healthcare: With 2014 veteran complaints including allegations that forty
veterans may have died waiting for care at a Phoenix VA hospital, many hos-
pitals or agencies, including the US Department of Veterans Affairs, have
already started or announced plans to deploy RFID in hospitals across the USA
to improve health care. RFID-based solutions in health care have started in
private and public hospitals across the world, at least several years before the
veteran’s complaints, to track and manage expensive mobile medical equipment,
thereby allowing hospital staff to track in real-time data relevant to healthcare
equipment or personnel, monitor environment conditions, and more importantly
protect healthcare workers from infections and other hazards.
• Logistics and Supply Chain Tracking: Major retailers in the world, (e.g.,
Walmart), as well as the US Department of Defense, have published require-
ments that their vendors place RFID tags on all shipments to improve supply
chain management. Such requirements allow retailers to manage their mer-
chandize without manual data entry. RFID can also help with automatic elec-
tronic surveillance and self-checkout process for consumers. Finally, many
factories are tracking their products throughout the manufacturing process using
RFIDs to better estimate delivery dates for customers.
• Athletic and Sport Event Timing: Tracking the exact timing of runners in
marathons or races is crucial, and often, a portion of a second makes a differ-
ence. Athletic timing is one of the most widespread use cases of RFID. Many
runners are not even aware that they are being timed with RFID technology.
Experts use such fact as an evidence of RFID’s seamless ability to enhance
consumer experience.
• Animal Tracking: Since the outbreak of mad cow disease, RFID has become
critical in animal identification management, although RFID animal tagging
started at least a decade before the disease. Some governments (e.g., Australia)
are now requiring all cattle, sheep, and goats sold to be RFID tagged.
• Other applications: RFID is also used for airport baggage tracking logistics,
interactive marketing, laundry management for employers with huge number of
uniforms (e.g., casinos), item-level inventory tracking, conference attendee
tracking, material management, IT asset management, library system, and
real-time location system.
Video tracking is the process of capturing and analyzing the video feeds, frame by
frame, of a particular object or person over a short-time interval. It is used to
measure and analyze movements, visual attention, as well as behavior. Video
tracking is used for customer identification, surveillance, augmented reality, traffic
control, and medical imaging.
70 3 The Things in IoT: Sensors and Actuators
• Retailers: Many retailers have started using video tracking solutions, often in
conjunction with Wi-Fi access point data (how?—see problem 22), to increase
sales and provide a better customer experience. Video traffic is analyzed using
complex algorithms that track eye movements and identify fixation (e.g.,
desirability, obsession, and attraction to a product) and glissades (e.g., wobbling
movements). The collected data is then filtered against well-established business
rules to determine an internal action (e.g., change location of merchandize and
add more checkout lines) or external action (e.g., offer the customer a certain
discount).
Determining the business rules is a very challenging problem. Many companies
use advanced systems and techniques (e.g., machine learning, analysis of social
media data, artificial intelligence) or hire a marketing firm to survey a large
number of customers to arrive at such rules. Examples of new rules are the fact
that the faster a shopper finds the first item s/he needs, the more s/he purchases
in such category. This dispels the pervious myth that the more time a shopper
spends in a particular area, the more s/he buys.
Video tracking is also used to improve the overall shopping experience in the
store as a service differentiation especially if the store is a bit more expensive
than similar stores in the area. The analysis of multiple grocery stores traffic
indicated that customers did not mind paying a bit more for faster checkout lines
with friendly cashiers, bright lights, and clean belts. Analyzed data also indi-
cated that the vast majority of customers do not pay attention to internal signs
inside the store.
• Banking: Similar to retailers, banks have also started using video tracking
solutions, often combined with Wi-Fi data. Access to Wi-Fi data in banks is
easier given that most of the customers download the bank’s mobile app on their
smartphones. With the right setting, mobile apps often allow the bank to track
the whereabouts of the customer.
3.4 Video Tracking 71
Banks use the data to quickly identify high-priority customers (e.g. with large
sum of money deposited at the bank), often before they lineup in the queue.
Special greeting and may be zero-wait private service is offered by the bank
manager.
• Other Uses: The applications of video tracking with advanced backend ana-
lytics are unlimited, ranging from physical monitoring and security to traffic
management and control, to augmented reality, where an actual view is aug-
mented by a computer-generated sensual input such as video.
Video tracking is typically used to track the movement of specific target (or targets).
Once the target is detected, captured sequential video frames are used by video
tracking algorithms with background subtraction process. Most common video
tracking algorithms include Kernel-based tracking, Contour tracking, the
well-known Kalman filter and the Particle filter.
3.5.1 Definition
As mentioned in Sect. 3.2, sensors are responsible to sense changes in their sur-
roundings, collect relevant data, and make such data available to monitoring sys-
tems. Collecting and displaying data by a monitoring system is useless unless such
data is translated into intelligence that can be used to control or govern an envi-
ronment before a service is impacted. Actuators use sensor-collected and analyzed
data as well as other types of data intelligence (see problem 11) to control IoT
systems. For example, shutting down gas flow when the measured pressure is below
a certain threshold.
72 3 The Things in IoT: Sensors and Actuators
• Electrical Actuators: Electric actuators are devices driven by small motors that
convert energy to mechanical torque. The created torque is used to control
certain equipment that requires multiturn valves or to control gates. Electric
actuators are also used in engines to control different valves.
• Mechanical Linear Actuators: Mechanical actuators convert rotary motion to
linear motion. Devices such as screws and chains are utilized in this conversion.
The simplest example of mechanical liner actuators is referred to as the “screw”
where leadscrew, screw jack, ball screw, and roller screw actuators all operate
on the same principle: By rotating the actuator’s nut, the screw shaft moves in a
line.
• Hydraulic Actuators: Hydraulic actuators are simple devices with mechanical
parts that are used on linear or quarter-turn valves. They are designed based on
Pascal’s law: When there is an increase in pressure at any point in a confined
incompressible fluid, then there is an equal increase at every point in the con-
tainer. Hydraulic actuators comprise of a cylinder or fluid motor that utilizes
hydraulic power to enable a mechanical process. The mechanical motion gives
an output in terms of linear, rotary, or oscillatory motion. Hydraulic actuators
can be operated manually, such as a hydraulic car jack, or they can be operated
through a hydraulic pump, which can be seen in construction equipment such as
cranes or excavators.
• Pneumatic Actuators: Pneumatic actuators work on the same concept as
hydraulic actuators except compressed gas is used instead of liquid.
• Manual Actuators: Manual actuator employs levers, gears, or wheels to enable
movement, while an automatic actuator has an external power source to provide
motion to operate a valve automatically. Power actuators are a necessity on
valves in pipelines located in remote areas.
There are two main philosophies to monitor and control IoT devices: local control
and global control. The first approach requires an intelligent local controller (e.g.,
home’s thermostat to control furnace and air-conditioning system). The second
approach is to move the control onto the cloud and simply embed inexpensive
sensors everywhere (e.g., in this case, thermostat is eliminated altogether and
instead put temperature sensors around the house). An extension of this would be to
pull the controller boards out of the furnace and air conditioner—connect their
inputs and outputs to the Internet as well, so a cloud application can directly read
their states and control their subsystems.
3.5 IoT Actuators 73
As we mentioned in Chap. 2, the most convenient way to identify every IoT device
is to assign unique IP address to each sensor and actuator. However, IPv4 addresses
are expensive and limited. IPv6 addresses are not widely deployed yet. In addition,
many sensors and actuators are not IP enabled. IoT getaways, however, do have
unique IP addresses. Hence, non-IP enabled sensors and actuators may be identified
by their associated gateways.
Chapter 5 will provide compressive details of various IoT protocols for sensors
and illustrate how IoT sensors and actuator will be tracked and identified.
3.7 Summary
This chapter defined the “Things” in IoT. Three main techniques to identify things
were discussed in details: embedded hardware sensors that sense the thing or
surrounding environment and notify a client application, RFIDs with a tag to store
information on a thing and a reader to read such information and pass them to an
application to analyze and finally video tracking. The advantages and disadvantages
of these solutions were discussed. Once the data is analyzed (from sensors or other
sources), IoT actuators are responsible for controlling or taking action if required.
Finally, we have discussed the procedure to identify various devices in IoT
networks.
1. List the top three requirements for “Things” in IoT? What is the purpose behind
these requirements?
2. Why Actuators are required in IoT networks?
74 3 The Things in IoT: Sensors and Actuators
3. What is the definition of a sensor in IoT? Why is there a need for A/D con-
vertors in most sensors?
4. Why sensors are required to convert Physical Signals into electrical signal?
5. In a table, list and compare the various types of actuators. Which actuator type
is considered to be environmentally friendly and why?
6. What are the key differences between sensors and actuators?
7. Chapter 1 mentioned that connecting objects together is not an objective by
itself. In this chapter it is mentioned that collecting data from sensors is not an
objective by itself either. What is the business objective for connecting things
and collecting data? How to achieve such objective?
8. What are the two main uses of Flow Sensors?
9. In a Table format, list the key functionality of all sensors (A through I) listed in
Sect. 3.2.3. Which sensor type is considered to be the least sophisticated and
which type is considered to be the most sophisticated? Why?
10. What is an autonomous sensor? When does it notify neighboring system(s) or
IoT Gateway? What is the difference between “autonomous” and
“user-controlled” sensors?
11. In a table, list and compare the ten characteristics of good sensors. Which
characteristic you believe is the most important and why?
12. It was mentioned in Sect. 3.2 that Actuators use sensor collected and analyzed
data as well as other types of data intelligence to control IoT systems. What is
data intelligence? Provide two examples of data intelligence.
13. What is the definition of Sensitivity and Dynamic Range? What are the typical
units of Sensitivity and Dynamic Range?
14. What is Hysteresis? What is a typical unit of Hysteresis?
15. How do touch screens operate with the presence of touch sensors?
16. In a table, list five examples of Industries where pressure sensors are used. In
each case, list at least one main application.
17. Some people have raised concerns about potential invasion of privacy in
RFID enabled solutions (e.g. track the whereabouts of a person who checked
out an RFID enabled library book). Is this a major concern? How would you
address it?
18. Athletic Timing: Athletic Timing is one of the most popular use cases of RFID,
but often race participants never realize they’re being timed using RFID
technology. How does it work?
3.8 Problems and Exercises 75
19. Describe how RFID works for Laundry Management. List three benefits.
20. Provide an example of how RFID works for Interactive Marketing.
21. How does RFID track the real time location of assets or employees? What other
technology can be used to track an employee location in real time?
22. How do retailers use Wi-Fi Access Point data in conjunction with video
tracking to improve sales and customer experience?
23. This chapter discussed three different ways to obtain information from IoT
“Things”: Sensors, RFID and Video Tracking. In a Table, compare the three
technologies addressing:
a. Advantages
b. Disadvantages
c. Key Requirements for the things
d. Two Applications
24. What are transducers? How are they related to Sensors and Actuators?
25. Wind speed sensors typically involve a rotating element that is set in motion by
wind. These sensor report the frequency of rotation of that moving element. An
application receiving the frequency readings needs to apply a “transfer func-
tion” to translate the frequency to actual wind speed. In the weather monitoring
station at Vancouver International Airport, two wind speed sensors are instal-
led: an RM Young 05103 Wind Sensor and a Vaisala WM30 Wind Sensor. The
first has the following transfer function:
Wind Speed (m/s) = 0.0980 * Frequency.
The second has this transfer function:
Wind speed (m/s) = 0.699 * Frequency –0.24.
A. If the RM Young sensor is reporting frequency of 20 Hz, and assuming both
sensors are measuring the same wind speed value, then what would be the
frequency reported by the Vasiala sensor?
B. What would be the actual wind speed measured?
References
1. A Framework for IoT Sensor Data Analytics and Visualisation in Cloud Computing
Environments, University of Melbourne. Online: http://www.cloudbus.org/students/
Krishnakumar-IoT-Project2011.pdf
2. Wikipedia, Online: https://en.wikipedia.org/wiki/Sensor
76 3 The Things in IoT: Sensors and Actuators
27. J. Thrasher, How is RFID Used in Real World Applications? Aug 2013. Online: http://blog.
atlasrfidstore.com/what-is-rfid-used-for-in-applications
28. M. Nystrom, K. Holmqvist, An adaptive algorithm for fixation, saccade and glissade detection
in eye tracking data. Behav. Res. Methods 42(1), 188–204 (2010)
29. Tank Monitoring on a New Level. Online: https://www.tankutility.com/
Chapter 4
IoT Requirements for Networking
Protocols
The success of the Internet is attributed, in part, to the Internet Protocol stack that
offers two key characteristics:
• A normalization layer (the IP layer), which guarantees system interoperability
while accommodating a multitude of link layer technologies, in addition to a
plethora of application protocols. IP constitutes the thin waist of the proverbial
hourglass that is the Internet protocol stack.
• Layered abstractions, which hide the specifics of a given layer from the one
above or below it. Such abstractions define contracts or “slip surfaces” allowing
innovations in one layer to proceed independently of the adjacent layers.
As researchers and technologists started delving into the world of IoT, it was
relatively straightforward to justify the benefits of employing a similar layered
architectural approach for the IoT protocol stack. However, a topic of lively debate
emerged in whether the Internet Protocol stack was suited for the IoT or whether a
new stack was needed. In the late 1990s and early 2000s, many researchers in the
field of wireless sensor networks did not shy away from denouncing IP networking
as unsuitable for that application domain.
It was deemed that the requirements of IoT were sufficiently different to warrant
a white canvas approach, rather than reusing the Internet technology, which fell
short of addressing the requirements in a number of areas. The decade and a half
that followed witnessed an evolution of the IP stack to address many of the cited
requirements for sensor networks and the shortcomings of IP technologies at the
time.
In this chapter, we will discuss the key IoT requirements, their impact on each of
the layers of the protocol stack. In the next chapter, we take a layer-by-layer view
and discuss the industry’s efforts, to date, to address these requirements. We will
also discuss the gaps that remain for further study and require future solutions.
The devices that are to be connected to the network in the IoT span a wide gamut of
capabilities and characteristics along the facets of computational power, mobility,
size, complexity, dispersion, power resource, placement, and connectivity patterns.
These and other device characteristics impose a set of requirements and restrictions
on the network infrastructure used for interconnecting them. In particular, the
devices’ computational capabilities as well as their power resources introduce
challenging requirements for IP networking technologies.
Stepping back and examining the devices that have traditionally connected to the
Internet, one can easily categorize them as homogeneous in terms of being fully
capable computers or peripherals (e.g., servers, desktops, laptops, and printers) that
have an endless source of power (e.g., mains powered or equipped with
rechargeable batteries). In the IoT, this homogeneity no longer holds: On the one
end of the spectrum are devices with very limited processing power and which
scavenge energy from their environment (e.g., pressure sensors), and on the other
end are devices with powerful processors, a generous amount of memory and
replenish-able power sources (e.g., smartphones).
Small devices with limited processing, memory, and power resources are
referred to as constrained devices. Generally speaking, a constrained device is
limited in one or more of the following dimensions:
• Maximum code complexity (ROM/Flash),
• Size of run-time state and buffers (RAM),
• Amount of computation feasible in a specific period of time (“processing
power”),
• Available power resources, and
• Management user interface and accessibility in deployment (ability to set
security keys, update software, etc.).
IETF RFC 7228 defines a taxonomy of constrained devices based on the first
two dimensions above, which recognizes three classes of devices as depicted in
Table 4.1 below.
Class 0 devices are the most severely constrained in memory and processing
power. In general, such devices do not have the resources to connect to an IP
network directly and will leverage the services of helper devices such as proxies or
gateways for connectivity. For example, sensor motes fall under this class.
Class 1 devices are highly constrained in terms of code space and processing
capacity; however, they are capable of connecting to an IP network directly,
Table 4.1 Classes of Name Data size (KB) Code size (KB)
constrained devices in RFC
7228 Class 0 10 100
Class 1 *10 *100
Class 2 *50 *250
4.1 Support for Constrained Devices 81
without the help of gateways, as long as they are “parsimonious with state memory,
code space, and often power expenditure for protocol and application usage” [2]. As
such, these devices face challenges in running certain demanding Internet Protocols
such as BGP, OSPF, HTTP, or Transport Layer Security (TLS), and in exchanging
data using verbose data serialization formats such as XML.
Class 2 devices are less constrained when compared to the first two classes and
are capable of running the same IP stack that runs on general compute nodes today.
Nevertheless, these devices can still benefit from lightweight and efficient com-
munication stacks since the resources may then be directed toward applications in
lieu of networking.
Another dimension that characterizes constrained devices is power and/or energy
resource constraints. These could be attributed to a number of factors such as the
device size, primary mode of use, cost, and operational environment. Again, with
this dimension, there is a spectrum of possibilities ranging from devices that harvest
energy from the environment, to battery-powered devices where the batteries are
replaceable or rechargeable, to non-field replaceable battery-powered devices
(which are discarded past the battery’s lifetime), to mains powered devices. Energy
consumption is a major issue for IoT devices. Research studies suggest that com-
munication is over three orders of magnitude more expensive in terms of energy
consumption than performing local processing functions. This is especially the case
when wireless communication is used, where the radio takes the lion’s share of the
energy consumed by the device. To this reason, a common strategy employed by
power-constrained devices is to remain in sleep mode with no network connectivity
for extended periods of time, and to connect only long enough to send the local data
either based on periodic timers or asynchronous triggers (e.g., when new data is
present or an event is detected).
To address the requirements of constrained devices, lightweight,
energy-efficient, and bandwidth-conscious communication protocols are required
across all the layers of the protocol stack.
The goal of the IoT is to build a uniform network that integrates and unifies all the
communication systems between smart objects in the world. To realize the full
potential of this vision, the interconnected things need to be individually address-
able for ubiquitous communication between systems. In many current deployments
of smart objects, the interconnection of things to the Internet, when available, is
through gateways or proxies. In this sense, the connected things are proverbial
second-class citizens of the Internet. Realizing the IoT vision requires that a global
IP address be assigned to each one of the billions of devices that will be connected.
Taking into account the fact that the IPv4 address space was completely depleted by
February 1, 2011, it becomes clear that the massive scalability of the IoT will
accelerate the transition of the Internet to IPv6.
The Internet encompasses diverse networks running different control plane proto-
cols for the purpose of discovering topology information, communicating con-
nectivity status or link health, signaling session or connection state, guaranteeing
quality of service, and, among other things, quickly reacting to faults. These pro-
tocols maintain distributed state that is synchronized using message exchanges
between peering nodes. In some cases, these peering relationships are hierarchical
in nature (e.g., a client–server model) or flat (e.g., overlay peers). The behavior of
the control plane functions together with the syntax and semantics of the messages
exchanged defines the specifics of the control plane protocol. As the number of
nodes participating in a given protocol increases, both the amount of state to be
maintained by each node increases and the volume of messages required for
keeping the distributed state tables in synchronization grows. Beyond a specific
limit, attempts to scale a specific control plane protocol typically lead to adverse
side effects on the protocol’s convergence time, the nodes resources, and the overall
network response. The scalability of the IoT calls for elastic control plane mech-
anisms that can accommodate the massive number of connected devices.
As the Internet of Things continues to evolve, one fact remains constant: These
things require connectivity. This global network of objects, sensors, actuators, etc.
must be connected to the Internet in some way, and in many cases wirelessly. The
wireless spectrum is a finite resource, and the licensed portion of this spectrum is
both expensive and scarce. With billions of devices coming online over the coming
decade or so, many of these devices will be contending for the airwaves.
As of now, many IoT systems operate in unlicensed radio frequencies, namely
the industrial, scientific, and medical (ISM) bands. For example, the 900 MHz band
for Electronic Product Code (EPC), one of the standards for Radio Frequency
Identification (RFID); the 13.56 megahertz (MHz) band for near-field communi-
cations (NFC) supporting mobile payments; and the sub-125 kilohertz (kHz) band
for physical security systems (video surveillance and access control). These tech-
nologies achieve connectivity using a range of different, and in some ways com-
peting, wireless protocol standards, such as ZigBee, Z-Wave, Bluetooth LE, and
Wi-Fi, all of which were designed to work in the unlicensed spectrum. There are no
spectrum bottlenecks for these bands yet, even though Wi-Fi services are
approaching the point where they are maximizing the number of channels that can
be fit into the allotted spectrum. However, when it comes to the licensed bands used
for cellular communication (e.g., the GSM bands defined in 3GPP TS 45.005), the
bottlenecks become more pronounced, especially with the accelerating growth in
data traffic over cellular networks. The term “spectrum crunch” has been used in
84 4 IoT Requirements for Networking Protocols
Fig. 4.2 Global machine-to-machine growth and migration from 2G to 3G and 4G (source
Cisco VNI Mobile, 2015)
recent years to refer to this issue. There are two variables at play here: growth in the
number of endpoints as well as growth in the volume of traffic per endpoint, both of
which contribute to the spectrum crunch phenomenon. Research by Cisco shows
that globally, mobile M2M connections will grow from 495 million in 2014 to more
than 3 billion by 2019, a sevenfold growth. Global mobile data traffic grew 69 % in
2014 reaching 2.5 exabytes per month at the end of 2014, up from 1.5 exabytes per
month at the end of 2013. Further, it is projected that global mobile data traffic will
increase nearly tenfold between 2014 and 2019 (Fig. 4.2).
4.3 Determinism
One of the value propositions of IoT is that the technology will allow for better
observation and monitoring of the physical world and will also enable the auto-
mated change of that world through closed-loop actuation. IoT opens up the door
for supporting use cases that demand mission critical networking with high
requirements for real-time response as well as overall network, protocol, and device
robustness. Some of these use cases emerge from industrial automation, such as
monitoring systems, movement detection systems for use in process control (i.e.,
process manufacturing) and factory automation (i.e., discrete manufacturing). Other
use cases have a much broader scope that spans mission critical automation (e.g.,
rail control systems), motion control (e.g., wind turbines), and vehicular networks
(e.g., infotainment, powertrain, and driver assistance). With the increasing demand
for connectivity and multimedia in transportation in general, use cases and appli-
cations are emerging in all elements of the vehicle from head units, to rear seat
entertainment modules, to amplifiers and camera modules. While these use cases
4.3 Determinism 85
are aimed at less critical applications than industrial automation, they do share
common requirements.
These use cases all share the common requirement to support real-time infor-
mation transfer: The time it takes for each packet to traverse a path from its source
to its destination should be determined; that is, the process must be deterministic.
Systems with control loops involving endpoints communicating over a network can
function properly only if the networks connecting those endpoints guarantee
determinism (imagine what would happen if a network delays a packet carrying a
control variable for a high-speed CNC mill).
In this context, a network is said to support determinism and is thereby deemed
to be a “deterministic network,” if the worst-case communication latency and jitter
of messages of interest are decidable based on a reasonable model of the network.
A model is considered reasonable when it sufficiently represents reality for the
target use cases of the networking system. Determinism does not imply speed. In
control functions, both speed and determinism are required. Speed is required to
attain the highest possible throughput. Determinism, on the other hand, is required
to specify a level of quality for the throughput, i.e., the highest speed throughput
that is in fact usable by the application.
Deterministic networking enables the migration of applications, which have so
far relied on special-purpose non-packet-based (fieldbus) technologies (e.g., HDMI,
CANbus, and profibus), to Internet Protocol technologies and the support of both
these new applications, in addition to existing IP network applications, over the
same physical network (Fig. 4.3). When applied in the context of industrial
applications, this leads to what is dubbed as the “OT/IT” convergence. Operational
technology (OT) refers to industrial networks, which due to their different goals
have evolved in silo but in a manner that is substantially different from information
technology (IT) networks. With OT, the focus has been on transporting fully
characterized traffic flows, over a small area (e.g., plant floor), in well-controlled
environment with a bounded latency, extraordinarily low frame loss, and a very
narrow jitter.
Experience with custom control and automation networks, as well as proprietary
audio/video networks has shown that these applications require one or more of the
following characteristics: Time synchronization of all hosts and network elements
(routers, bridges, etc.) that is accurate in the range of 10 ns–10 ls, depending on
the application. The applications also require support for critical packet flows that
need guarantees of the minimum and maximum end-to-end latency across the
network. Such flows can be either unicast or multicast and can in total consume
more than half of the available bandwidth of the network, thereby eliminating the
possibility of relying on over-provisioning. The applications mandate packet loss
ratios that are at least in the range of 1.0e-9 to 1.0e-12. Furthermore, the traffic for
these applications cannot be subjected to throttling, congestion feedback, or
stochastic network-imposed transmission delay.
86 4 IoT Requirements for Networking Protocols
The ubiquity of IoT and its potential to extend into all aspects of human life,
whether in transportation, health care, home automation, industrial control, etc.
make guaranteeing security and privacy paramount. With traditionally off-line
systems and applications being connected to the Internet, they quickly become
targets for attacks that will only continue to grow in magnitude and sophistication.
Such targets cover a multitude of industry segments, and the potential impact of
security attacks could lead to significant damage and even loss of life.
While the threats in IoT may, at the outset, seem largely similar to those in more
traditional IT environments, the potential impact of those threats is more profound.
This is why threat analysis and risk assessment efforts are key in IoT to measure the
impact of a security incident or breach.
A fundamental pillar in securing the IoT is around mechanisms to authenticate
device identity. As was discussed in Sect. 4.1, many IoT devices are constrained
devices, which lack the required processing, memory, storage, and power
requirements to support state-of-the-art authentication protocols. The
state-of-the-art encryption and authentication protocols are based on cryptographic
suites such as advanced encryption suite (AES) for confidential data transport,
Rivest–Shamir–Adleman (RSA) for digital signatures and key transport, and
Diffie-Hellman (DH) for key negotiations and management. While these protocols
are battle proven in deployments, they suffer from two shortcomings when it comes
to applying them to IoT. The first shortcoming is that these protocols are resource
hungry and generally demand high-capability compute platforms. Appropriate
4.4 Security and Privacy 87
M2M deployments, in one form or another, have existed for over two decades now.
However, the vision of the Internet of Things is far from being a reality and the
technology is yet to realize its full market potential. The complexity of developing,
deploying, and managing IoT applications remains a key challenge for the industry.
It constitutes a challenge for network operators who are trying to offer profitable
services tailored to the IoT market, for application developers building
vertical-specific applications, as well as for service providers who are trying to
speed time to market, reduce costs, and simplify robust application deployment.
This complexity drives up the cost of building IoT solutions.
The problem of complexity, and associated high cost, can be attributed in part to
the closed nature of the solutions, which are developed in vertical-specific silos,
thereby leading to each solution provider having to implement all the building
blocks required for a minimum viable product, as opposed to reusing standard and
open components. The resulting solutions are almost ubiquitously characterized by
having strong coupling between application entities. Here, we use the term appli-
cation entity to refer to an instance of application logic that may be implemented in
hardware (analog or digital), software, firmware, etc. Thus, an application entity
denotes any IoT endpoint responsible for producing or consuming data and spans
the entire gamut from a sensor/actuator to a cloud application.
The closed nature of existing IoT solutions renders them not only expensive to
implement initially, but also expensive and difficult to maintain and evolve over
time. This is primarily because application code often needs to be updated or
changed in the scenario where a device is swapped with another that is functionally
equivalent albeit manufactured by a different vendor, let alone the scenario where a
new device type needs to be integrated into the solution.
The above challenges lead to the requirement for application level interoper-
ability for the IoT. This requirement can be further broken down into requirements
for abstractions and standard application programmatic interfaces (APIs) as well as
requirement for semantic interoperability.
Realizing the full vision of the IoT will be difficult unless the application pro-
gramming interfaces (APIs) that control the functionalities of the devices and smart
objects adhere to common standards that guarantee interoperability. To reach full
API interoperability, the industry must converge on mechanisms for identifying the
4.5 Application Interoperability 89
data that application entities will share and methods for sharing it. APIs expose the
data that enables disparate devices to be composed in innovative ways to create new
and interesting workflows. With the availability of standard APIs, it is possible to
introduce abstractions for common IoT functions, including the following:
• Device management (activation, triggering, authentication, authorization,
software/firmware update, etc.)
• Data management (read, write, subscribe, notify, delete, etc.)
• Application management (start, stop, debug, upgrade, etc.)
The abstractions provide logical representations of the functions while hiding all
implementation nuances and variations. They define service contracts that are
governed by the syntax and semantics of the APIs, and which formally specify the
methods for interaction with modules supplying those functions. In other words, the
use of standard APIs introduces “slip surfaces” that eliminate coupling between
functionally discrete modules of a given IoT solution. This allows modules supplied
by different IoT vendors to seamlessly interwork and integrate into a cohesive
system. A given module can be replaced by another supplied by a different vendor
as long as it subscribes to the standard API governing the associated slip surfaces
between the system’s building blocks (Fig. 4.4).
Semantic interoperability guarantees that application entities in the IoT can access
and interpret data unambiguously. Providing unambiguous data descriptions that
can be machine processed and interpreted by application entities is one of the key
enablers of automated information communications and interactions in IoT.
4.6 Summary
The Internet Protocol (IP) stack was among the factors that contributed to the
success of the Internet. While this IP stack provides a strong foundation for building
the IoT, a number of shortcomings need to be addressed to meet the peculiar
requirements of IoT. These requirements include: support for resource constrained
devices that have very limited compute capabilities and limited power, support for
the massive scalability of IoT, with billions of connected devices, the need for
deterministic networks to support real-time mission critical applications, the
requirement for lightweight security protocols and ensuring data privacy, and
finally the requirement for application interoperability through the use of APIs and
unified data semantics.
4.7 Problems and Exercises 91
References
The IoT protocol stack can be visualized as an extension of the TCP/IP layered
protocol model and is comprised of the following layers (refer to Fig. 5.1):
• Physical layer
• Link layer
• Network layer
• Transport layer
• Application Protocol layer
• Application services layer
Note that the application layer of the TCP/IP protocol stack is expanded into two
layers in the IoT protocol stack: Application Protocol and Application Services. It is
as if the proverbial “narrow waist” of the hourglass is being extended further up the
stack to provide interoperability between heterogeneous “things.”
In this section, we will examine the impact of the IoT requirements on the link layer
through a combined view of the challenges that those requirements impose on
networking technologies, industry efforts to address those challenges, and
remaining gaps.
5.1.1 Challenges
The challenges that the IoT presents to the link layer of the protocol stack can be
broadly categorized into the following four areas: device characteristics, traffic
characteristics, access characteristics, and scalability (Fig. 5.2).
© Springer International Publishing AG 2017 93
A. Rayes and S. Salam, Internet of Things—From Hype to Reality
DOI 10.1007/978-3-319-44860-2_5
94 5 IoT Protocol Stack: A Layered View
On the device characteristics front, the IoT will encompass a wide spectrum of
“things” that span from fully capable (non-constrained) compute nodes to highly
constrained devices. The latter typically have limited energy resources to expend on
processing and communication. As discussed earlier, network communication is
typically more power consuming when compared to local processing. Hence,
communication technologies need to be optimized to accommodate low-power
devices. Implementation of protocols at all layers of the protocol stack can affect
energy consumption. However, the link layer in particular has a significant impact
due to the fact that this layer is responsible for the nuances of the physical trans-
mission technology, framing, media access control (MAC), and retransmissions.
For instance, it is reported that, depending on the link load, between 50 and 80 % of
the communication energy is used for repairing lost transmissions at the MAC
layer.
The traffic characteristics of IoT endpoints vary widely depending on the
application’s demands and nature of devices. Some applications have relaxed
requirements on packet loss, latency, and jitter (e.g., a meteorological monitoring
application) whereas others have very tight availability, latency, and jitter tolerance
(e.g., a jet engine control application). It is worth noting here the contrast between
the meteorological monitoring and jet engine control applications: both applications
may be using the same types of devices (temperature sensors, pressure sensors) and
observing the same physical entities (temperature, pressure). However, it is the
applications’ requirements that dictate the traffic characteristics that the network
must deliver. By the same token, some IoT devices generate short bursty traffic
(e.g., point of sale terminal) whereas other devices generate long-tailed traffic (e.g.,
video camera). The dichotomy in traffic characteristics, between solutions that
expect determinism and those that can withstand best-effort (random) communi-
cations, creates drivers for link layer technologies that support deterministic and
time-sensitive networking.
The access characteristics of IoT endpoints become increasingly diverse as the
footprint of the network grows beyond traditional IT environments, dominated by
5.1 Link Layer 95
familiar local area network (LAN) and wide area network (WAN) technologies, and
into new deployment environments such as industrial plant floor, oil fields, marine
platforms, mines, wells, power grids, vehicles, locomotives, and even the human
body. IoT devices in these environments may connect to the network using a mix of
wireless and wired technologies. The devices, when connected wirelessly may be
either mobile or stationary, and depending on the logistics of the deployment may
require either long-range or short-range connectivity solutions. To accommodate
this diversity, new link layer protocols that form the foundation of field area net-
work (FAN), neighborhood area network (NAN), and personal area network
(PAN) technologies are required.
IoT scalability demands present interesting challenges for the link layer of the
protocol stack, especially for wireless technologies. On the one hand, these tech-
nologies offer a number of appealing characteristics that make them a good fit for
the IoT: low upfront investments, wide geographic coverage, fast deployment and
pleasing aesthetics (no unsightly wires).
On the other hand, these technologies are susceptible to scalability issues. For
instance, cellular technologies are subject to the spectrum crunch problem, which
drives demand for technology optimizations and cellular off-load solutions such as
Wi-Fi and femtocell. Also, wireless mesh technologies suffer from challenges such
as forwarding latency and slow convergence as the diameter of the mesh scales.
Now that we have covered the main challenges that IoT presents to the link layer of
the protocol stack, we will shift our focus to describe the industry’s progress in
addressing those challenges through open standard solutions.
IEEE 802.15 Task Group 4 (TG4) was chartered to investigate a low data rate wireless
connectivity solution with focus on very low complexity and extended battery lifes-
pan that is in the range of multiple months to multiple years. The solution was meant to
operate in an unlicensed, international frequency band. While initial activities of the
task group focused on wearable devices, i.e., PANs, the eventual applications proved
to be more diverse and varied. Potential applications of the solution include sensors,
interactive toys, smart badges, remote controls, and home automation. As can be seen
from the applications, the focus of the solution has primarily revolved around enabling
“specialty,” typically short-range, communication.
The resulting IEEE 802.15.4 technology is a simple packet-based radio protocol
aimed at very low-cost, battery-operated devices (whose batteries last years) that can
intercommunicate and send low-bandwidth data to a centralized device. The pro-
tocol supports data rates of 1 Mbps, 850, 250, 100, 40, and 20 kbps. The data rate is
dependent on the operating frequency as well as on the coding and modulation
scheme. The standard operates over several frequency bands, which vary by region:
• 868–868.6 MHz
• 902–928 MHz
• 2400–2483.5 MHz
• In China 314–316, 430–434, and 779–787 MHz
• In Japan 950–956 MHz
In addition, the standard supports multiple modulation schemes, including
BPSK, ASK, O-QPSK, MR-FSK, MR-OFDM, and MR-O-QPSK. The transmis-
sion range varies from tens of meters up to 1 km, the latter introduced with IEEE
802.15.4g. The protocol is fully acknowledged for transfer reliability. The basic
frame size is limited to 127 bytes in the original specification, and the philosophy
behind that is two-fold: to minimize power consumption and to reduce the prob-
ability of frame errors. However, with IEEE 802.15.4g, the maximum frame size is
increased to 2047 bytes, accompanied by an increase of the frame check sequence
(FCS) from 16 to 32 bits for better error protection.
The standard offers optional fully acknowledged frame delivery for transfer
reliability in lossy environments (e.g., high interference). If the originator of a frame
does not receive an acknowledgment after a certain time period, it assumes that the
transmission failed and retransmits the frame. If an acknowledgment is still not
received after multiple attempts, the originator may either terminate the transaction
or continue retrying.
The IEEE 802.15.4 standard only defines the functions of the physical and MAC
layers. It serves as the foundation for several protocol stacks, some of which are
non-IP, including: Zigbee, Zigbee RF4CE, Zigbee Pro, Wireless HART, ISA
100.11a, and RPL.
There are two types of devices in an 802.15.4 network. The first one is the full-
function device (FFD). It implements all of the functions of the communication
5.1 Link Layer 97
stack, which allows it to communicate with any other device in the network. It may
also relay messages, in which case it is dubbed as a PAN coordinator. The PAN
coordinator is in charge of its network domain: It allocates local addresses and acts
as a gateway to other domains or networks. The second type of device is the
reduced-function device (RFD). RFDs are meant to be extremely simple devices
with very modest resource and communication capabilities. Hence, they can only
communicate with FFDs and can never act as PAN coordinators. The rationale is
that RFDs are to be embedded into the “things.” Networks can be built using either
a star, mesh, or cluster-tree topology (Fig. 5.3). In all three cases, every network
needs at least a single FFD to act as the PAN coordinator. Networks are thus formed
from clusters of devices separated by suitable distances.
In the star topology, all devices communicate through a single central controller,
namely the PAN coordinator. This is a hub-and-spoke model: the PAN coordinator
is the hub and all other devices form spokes that connect only to the hub. The PAN
coordinator is typically mains-powered while the devices are most likely
battery-operated. Use cases that make use of this topology include smart homes
(home automation), computer peripherals, personal health monitors, toys, and
games. Each star network chooses a PAN identifier, which is not currently in use by
any other network within the radio range. This allows each star network to operate
independent of other networks.
The mesh topology (also called peer-to-peer) differs from the star topology in
that any device can communicate with any other device as long as the two are
within radio range. A mesh network can be ad hoc in formation, self-organizing,
and self-healing on node or link failures. It also provides reliability through mul-
tipath routing. Use cases such as industrial control and process monitoring, wireless
sensor networks (WSN), precision agriculture, security, asset tracking, and inven-
tory management all can leverage this topology.
The cluster-tree topology is a special case of a mesh network that comprises of
chained clusters. In a cluster-tree, the majority of the devices are FFDs. RFDs may
connect to the network as leaf nodes at the end of a tree branch. As with any 802.15.4
topology, the network has a single PAN coordinator. The PAN coordinator forms the
first cluster by declaring itself as the cluster head (CLH) with a cluster identifier
(CID) of zero, selecting an unused PAN identifier, and broadcasting beacon frames
to other neighbor devices. A device, which receives beacon frames, may request
from the CLH to join the cluster. If the CLH allows the device to join, it will add the
new device as a child device in its neighbor list. The newly joined device will add the
CLH as its parent in its neighbor list and commence broadcasting periodic beacon
frames. This allows other candidate devices to join the same cluster at that device.
Once the requirements of the application or network are met, the PAN coordinator
may instruct a device to become the CLH of a new cluster that is adjacent to the first.
The advantage of this daisy-chained cluster structure is the ability to achieve larger
coverage area at the expense of increased message latency.
subject to fading or interference, then by changing the frequency used for com-
munication between nodes with every new message, only a subset of the messages
will be lost due to those conditions. Whereas, if all communication were to occur on
the same frequency, then all messages between the nodes communicating over the
affected frequency would be lost during the fading or interference event.
The nodes in the network obey a TSCH schedule. The schedule is a logical
two-dimensional matrix with one dimension determining the Slot Offset in the Slot
frame, and the second dimension designating the channel offset in the available
frequency band. The schedule instructs each node on what it is supposed to do in a
given timeslot: transmit, receive or sleep. The schedule also indicates for every
communicating node its neighbor’s address and the channel offset to be used for
said communication. The width of the schedule is equal to the slot frame width,
whereas the depth of the schedule is equal to the number of available frequencies in
the allotted band. Each cell in the schedule corresponds to a unique slot offset and
channel offset combination. The organization of communication in the schedule
allows the network to operate using collision-free communication, by ensuring that
only a single station transmits in a given cell. Alternatively, it can allow the network
to operate in a slotted Aloha paradigm (i.e., Carrier Sensing MultiAccess with
Collision Detection—CSMA/CD) by allowing multiple stations to transmit in the
same cell (Fig. 5.4). IEEE 802.15.4e does not define the mechanisms by which the
TSCH schedule is built, and leaves that responsibility to upper protocol layers.
The popularity of IEEE 802.11 wireless technologies (Wi-Fi) has grown steadily
over the years in home, business as well as metropolitan area networks (MANs).
The technology, however, cannot sufficiently address the requirements of IoT, due
to the following two reasons:
• High power consumption for Client Stations: Wi-Fi has the reputation of not being
very power efficient, due to the need for client devices to wake up at regular
intervals to listen to AP announcements, waste cycles in contention processes, etc.
• Unsuitable frequency bands: Wi-Fi currently uses the 2.4–5 GHz frequency
bands, which are characterized by short transmission range and high degree of loss
due to obstructions. A common solution to this is the use of repeaters, but those add
to the power consumption of the solution and add to the network’s complexity.
To address these issues, IEEE 802.11 formed Task Group “ah”. The 802.11ah
group was chartered to develop a wireless connectivity solution that operates in the
license-exempt sub-1 GHz bands to address the following IoT requirements: large
number of constrained devices, long transmission range, small (approximately 100
bytes) and infrequent data messages (interarrival time larger than 30 s), low data
rates, and one-hop network topologies. The solution is intended to provide a
transmission range of up to 1 km in outdoor areas with data rates above 100 kbps,
while maintaining the current Wi-Fi experience for fixed, outdoor, and
point-to-multipoint applications. From a design philosophy perspective, the solu-
tion optimizes for lower power consumption and extended range at the expense of
throughput, where applicable. In addition, the solution aims for scalability by
supporting a large number of devices (up to 8191) per Wi-Fi access point.
IEEE 802.11ah introduces new PHY and MAC layers. The new layers are
designed for scalability, extended range, and power efficiency. Compared to
existing Wi-Fi technologies which operate in the 2.4–5 GHz range, the use of the
sub-1 GHz band provides longer range through improved propagation and allows
better penetration of the radio waves through obstructions (e.g., walls).
However, one of the challenges in the use of the sub-1 GHz spectrum is that its
availability differs from one country to the next, with large channels available in the
US, whereas many other regions only have a few channels. This led the 802.11ah
group to create several channel sizes: 1, 2, 4, 8, and 16 MHz channels based on the
needs and regulatory domains of different countries. It also led the group to define
operation over several frequency bands, which vary by region:
• Europe: 868–868.6 MHz
• Japan: 950–958 MHz
• China: 314–316, 390–434, 470–510 and 779–787 MHz
• Korea: 917–923.5 MHz
• USA: 902–928 MHz
IEEE 802.11ah will support data rates ranging from 150 kbps up to 340 Mbps.
The supported modulation schemes include BPSK, QPSK, and 16–256 QAM.
In order to address the IoT requirements of low power consumption and massive
scalability, the emerging 802.11ah introduces several enhancements to Wi-Fi
technology that can be categorized into three functional areas:
• Providing mechanisms for Client Stations to save power through longer sleep
times and reducing the need to wake up;
• Improving the mechanisms by which a client station accesses the medium by
providing procedures to allow the station to know when it will be able to, or will
have to, access the channel;
• Enhancing the throughput of a client station that accesses the channel, by
reducing the overhead associated with current IEEE 802.11 exchanges through
5.1 Link Layer 101
To enhance throughput, 802.11ah adds support for a shorter MAC header compared
to the current 802.11 standard. Information contained in the QoS and HT Control
fields (the latter introduced to the MAC header with 802.11n) are moved to a Signal
(SIG) field in the PHY header. The other non-applicable parts of the header are
suppressed: e.g., no duration/ID fields, since there is no virtual clear channel
assessment (CCA). The new header is 12 bytes shorter than the standard 802.11n
header. Following the same logic, the acknowledgment (ACK) frame is replaced
with a null data packet, which only contains the PHY header (no MAC header, no
FCS). That frame is sent at a special reserved modulation and coding scheme
(MCS) to make it recognizable. MCS is a simple integer assigned to every per-
mutation of modulation, coding rate, guard interval, channel width, and number of
spatial streams.
To enable support for a large number of Client Stations, 802.11ah extends the
association identifier (AID), which is limited to 2007 in the current 802.11 standard,
by creating a hierarchical identifier with a virtual map, bringing the number up to
8191.
In current 802.11 frame exchanges, a client station first has to contend for the
medium, then transmit its frames, and then wait for an acknowledgment from the
access point (AP). If the client station expects a response, it has to stay awake while
the AP contends for the medium and then sends. The client station finally sends an
acknowledgment. With the 802.11ah Speed Frame Exchange mechanism, the
dialog can occur within a single transmission opportunity (TXOP): the client station
wakes up, contends for the medium, sends the frame to the AP, and the AP
immediately replies after just a short interframe gap, allowing the client station
(e.g., sensor) to immediately go back to sleep mode after receiving the answer,
saving on uptime wasted in interframe, and 2-way acknowledgments.
102 5 IoT Protocol Stack: A Layered View
(iv) Relay
Client Stations often need to exchange information with one another, going through
one or more intermediary APs when a direct connection is not available. In such
exchanges, the Client Stations are forced to stay awake for the entire duration of the
dialog. This process is greatly optimized with 802.11ah relay coupled with speed
frame exchange. The Client Station wakes up and sends a frame to the AP, asking
the latter to relay. The Client Station can then immediately go back to sleep/power
saving mode. The AP may relay the frame through another AP or deliver it directly
to the destination. This model is appealing due to a number of reasons: the AP is
usually mains-powered and has enough resources to buffer the frame until the
destination Client Station wakes up. The same process can be repeated for the
response message, allowing both Client Stations to optimize power consumption
when they are not actively sending or receiving. This also eliminates the need for
the Client Stations to synchronize wake/sleep cycles.
With Target Wake Time (TWT), the AP can inform Client Stations when they will
gain the right to access the medium. A Client Station and an AP can exchange
initial frames expressing how much access the former needs. Then, the AP can
assign a TWT for the station, which can be either aperiodic or periodic (thus
eliminating the need for the Client Station to have to wake up to listen to TWT
values). Outside of the TWT, the Client Station can sleep and does not have to wake
up to listen to any messages, not even beacon frames. At those TWTs, the AP can
send a null data packet paging (NDP) that tells the Client Station about the AP
buffer status. This allows the AP to smoothly deliver buffer content to all Client
Stations one after the other, instead of having all stations wake up at beacon time.
(vi) Grouping
Client Stations can be grouped based on their location, using a group identifier
assignment that relies on their type or other criteria. The AP then announces which
groups are allowed to be awake for the next time period, and which groups can go
back to sleep mode because they will not be allowed to access the channel. This
saves battery power on the sleeping groups, as these do not have to listen to the
traffic. This logic brings a form of time division multiplexing (TDM) to Wi-Fi, by
allowing transmission to each group based on time periods.
5.1 Link Layer 103
The AP can define a Restricted Access Windows (RAW), which is a time duration
composed of several time slots. The AP can inform Client Stations that they have
the right to send or receive only during certain time slots within the window, in
order to distribute traffic evenly. The AP would use the RAW Parameter Set
(RPW) to determine and communicate these slots and transmission or reception
privileges. A Client Station that has traffic to send upstream, but for which the AP
does not have traffic to send downstream can send a request message to indicate to
the AP that it needs a slot upstream.
The requirements for Time Sensitive Networking (TSN) originate from real-time
control applications such as industrial automation and automotive networks. These
requirements contribute to some of the most prominent gaps that current Internet
technologies need to address at the link layer to realize the vision of IoT. In the case
of industrial automation, the networks are relatively large (in the order of one to
several kilometers) and may include up to 64 hops for a factory and up to 5 hops
within a work cell (e.g., robot). The network needs to accommodate, in addition to
real-time control traffic, other long-tailed traffic such as video or large file transfers.
One of the key requirements for such networks is precise time synchronization, in
the order of ±500 ns within a work cell, and ±100 ls factory wide. Another key
requirement is deterministic delay, which is not to exceed 5 ls within a work cell
and 125 ls factory wide. Last but not least, a fundamental requirement for such
networks is high availability as it is critical for the safety of the operators. This
translates to a requirement for redundant paths with seamless or instantaneous
switchover time, not to exceed 1 microsecond. In the case of automotive networks,
the physical size of the deployments is relatively small but the number of ports
required is large: as an example, the network may span 30 m over 5 hops with over
100 devices connected (sensors, radar, control, driver-assist video, information, and
entertainment audio/video). A key requirement for these networks is support for
deterministic and very small latency, less than 100 ls over 5 hops using 100 Mbps
104 5 IoT Protocol Stack: A Layered View
switch delays need to be reduced by almost two orders of magnitude. Third, path
selection and reservation for critical streams need to be made faster and simpler in
order to accommodate high scale deployments with thousands of streams.
As discussed previously, network high availability is of paramount importance
in real time IoT applications. Ethernet has historically, and for a long period of time,
relied on the Spanning Tree Protocol (STP) in order to support redundancy and
failure protection. However, in the past decade or so, requirements for massively
scalable Ethernet networks in data center and MAN deployments have resulted in
the evolution of the Ethernet control plane toward the use of the Intermediate
System to Intermediate System (IS-IS) protocol, as defined in IEEE 802.1aq-2012
(Shortest Path Bridging) and IEEE 802.1Qbp-2014 (Equal Cost Multiple Path).
IS-IS provides mechanisms for topology discovery and setup of redundant paths. It
also includes mechanisms for network reconfiguration in the case of failures with
reasonable delays (better than STP). These standards, however, are still lacking in
the following areas: there are no standardized mechanisms to engineer paths with
non-overlapping or minimally overlapping links and nodes. Also, there are no
mechanisms that provide extremely fast (i.e., instantaneous) switchover in the case
of failures. Finally, there are no mechanisms for redundant (simultaneous) trans-
mission of streams along non-overlapping paths.
The IEEE TSN task group was formed in November 2012, by renaming the
AVB task group, with the goal of addressing the gaps highlighted above. Under that
umbrella, work on three emerging standards commenced: 802.1Qca Path Control
and Reservation, 802.1Qbv Enhancements for Scheduled Traffic and 802.1CB.
This emerging standard extends the use of IS-IS to control Ethernet networks
beyond what is defined in IEEE 802.1aq Shortest Path Bridging. It provides explicit
path control, bandwidth, and stream reservation and redundancy (through protec-
tion or restoration) for data streams. It proposes the use of IS-IS for topology
discovery and to carry control information for scheduling and time synchronization.
The new protocol will enable the use of non-shortest paths and will provide explicit
forwarding path (Explicit Tree—ET) control. Path calculation and determination
will be done through a Path Computation Element (PCE) , the latter being defined
by the IETF PCE workgroup. The PCE is an application that computes paths
between nodes in the network based on a representation of its topology. In
802.1Qca, IS-IS is currently being proposed as the protocol to convey the topology
information from the Ethernet network to the PCE. The PCE may be centralized
and reside in a dedicated server or in a Network Management System (NMS), or it
may be distributed and embedded in the network elements (e.g., routers or bridges)
themselves.
Figure 5.5 shows an example Ethernet network controlled by a single PCE
residing in end station X. This end station is connected to SPT Bridge 11. The PCE
peers with the bridge using IS-IS to learn the topology. The PCE can compute
106 5 IoT Protocol Stack: A Layered View
Explicit Trees based on, for example, bandwidth or delay requirements, and
communicates them using IS-IS extensions to the bridges.
The IEEE 802.1Qbv standard will provide real-time control applications with
performance assurances for network delay and jitter over “engineered” LANs, while
maintaining coexistence with IEEE 802.1Qav/Qat reserved streams and best-effort
traffic on the same physical network. Engineered LANs are so-called because traffic
transmission schedules for the network can be designed offline. These
pre-configured schedules assign dedicated transmission slots to each node in the
network, for the purpose of preventing congestion, and enabling isochronous
communication with deterministic latency and jitter. The emerging standard will
define time-aware shaping algorithm that enables communicating nodes to schedule
the transmission of messages based on a synchronized time. It is proposed that
priority markings carried in the frames will be used to distinguish between
time-scheduled, reserved stream (credit-based), and best-effort traffic.
Figure 5.6 depicts the traffic queue architecture for a bridge port that implements
this emerging standard. A transmission gate is associated with each traffic queue;
the state of the transmission gate determines whether or not queued packets can be
selected for transmission on the port. Global Gate Control logic determines what set
5.1 Link Layer 107
of gates is open or closed at any given point of time. A packet on a queue cannot be
transmitted if the transmission gate, for that queue, is in the closed state or if the
packet size is known and there is insufficient time available to transmit the entirety
of that packet before the next gate-close event associated with that queue.
In order to maximize the availability and reliability of the network, IEEE 802.1CB
proposes mechanisms that will enable “Seamless Redundancy” over 802.1Qca
networks. With Seamless Redundancy, the probability of packet loss is reduced by
sending multiple copies of every packet of a stream. Each copy is transmitted along
one of a multitude of redundant paths. Duplicate copies are then eliminated to
reconstitute the original stream before it reaches its intended destination.
This is effectively done by tagging packets with sequence numbers to identify
and eliminate the duplicates, and by defining new functions for bridges: a split
function, responsible for replicating packets in a stream, and a merge function
responsible for eliminating duplicate packets of a stream (Fig. 5.7).
IEEE 802.1CB proposes introducing a new tag to the 802.1Q frame, the
redundancy tag, which includes a 16-bit sequence number. The emerging standard
recognizes that alternate tagging mechanisms are possible, for example, through the
use of Multiple Protocol Label Switching (MPLS) pseudowires [RFC 4448] or
using IEEE 802.1AE MacSec.
108 5 IoT Protocol Stack: A Layered View
5.2.1 Challenges
and the device capabilities. For example, if the devices are battery-powered, then
protocols that require frequent communication will deplete the nodes’ energy faster.
As described above, LLNs are inherently lossy: a characteristic that is typically
unpredictable and predominantly transient in nature. The design of the Internet layer
protocols must account for these characteristics. In conventional networks, these
protocols react to loss of connectivity by quickly reconverging over alternate routing
paths. This is to minimize the extent of data loss by routing around link, node, or
other failures as quickly as possible (e.g., MPLS Fast Reroute mechanism strive for
reconvergence within 50 ms). In LLNs, such quick reaction to failures is undesirable
due to the transient nature of loss in these networks. As a matter of fact, it would lead
to instability and unacceptable control plane churn. Instead, the protocols should
follow a paradigm of under-reacting to failures in order to dampen the effect of
transient connectivity loss, combined with confidence-monitoring model to deter-
mine when to trigger full reconvergence. The varying link quality levels in LLNs
have direct bearing on protocol design, especially with regards to convergence
characteristics and time. In traditional networks, global reconvergence is triggered to
minimize the convergence time, whereas in LLNs local reconvergence is preferred,
where the traffic is locally redirected to an alternate next hop during transient
instabilities. This is to minimize the effect of routing instabilities that may lead to
overall network oscillations or forwarding loops. Another consideration for LLNs is
the dynamic nature of link and node metrics used in route computation. There are so
many dynamic factors in LLNs, such as link quality deteriorating due to interference,
node switching from mains power to battery power, and momentary CPU overload
on a node. These factors cause node and link metrics to be time varying in nature,
and the routing protocols must be able to handle that.
Existing routing protocols such as OSPF and IS-IS in their current form do not
satisfy the routing requirements imposed by the above challenges (Fig. 5.8).
5.2.2.1 6LowPAN
As discussed previously, one of the challenges imposed by IoT on the Internet layer
is the adaptation of this layer’s functions to link layer technologies with restricted
frame size. A case in point is adapting IP, and specifically the scalable IPv6, to the
IEEE 802.15.4 link layer. The base maximum frame size for 802.15.4 is 127 bytes,
out of which 25 bytes need to be reserved for the frame header and another 21 bytes
for link layer security. This leaves, in the worst case, 81 bytes per frame to cram the
IPv6 packet into. What add to the problem are two issues: first, the IPv6 packet
header, on its own, is 40 bytes in length, and second, IPv6 does not perform
segmentation and reassembly of packets: this function is left to the end-stations or
to lower layer protocols. Even though 802.15.4g increases the maximum frame size
to 2047 bytes, it is still highly desirable to be able to compress IPv6 packet headers
over this link layer. For the aforementioned reasons, the IETF defined IPv6 over
Low-power Wireless Personal Area Networks (6LowPAN). 6LowPAN is defined in
RFC 6282. It is an adaptation layer for running IPv6 over 802.15.4 networks
(Fig. 5.9). 6LowPAN provides three main functions: IPv6 header compression,
IPv6 packet segmentation and reassembly, and Layer 2 forwarding (also referred to
as mesh under). With 6LowPAN, it is possible to compress the IPv6 header into 2
bytes, as most of the information is already encoded into the Link layer header.
6LowPAN introduces three headers for each of the three functions that it pro-
vides. Those headers are: compression header, Fragment header, and Mesh header.
One or more of these headers may be available in any given packet depending on
which functions are applied (Fig. 5.10)
6LowPAN defines new mechanisms to perform IPv6 Neighbor Discovery
(ND) operations including link layer address resolution and duplicate address
detection.
A recurring issue when adapting IPv6 to any link layer technology is support for
a single broadcast domain, where a host can reach any number of hosts within the
subnet by sending a single IP datagram. Accommodating a single broadcast domain
within a 6LoWPAN network requires link layer routing and forwarding functions,
often referred to as Mesh Under, since the multihop mesh topology is abstracted
away from the IP layer to appear as a single network segment. However, the IETF
has not specified a mesh-under routing protocol for 6LoWPAN. Hence, this con-
stitutes a technology gap, especially for IoT applications that can benefit from or
that rely on intra-subnet broadcast capabilities.
Even though the scope of 6LoWPAN was originally focused on the IEEE
802.15.4 link layer, the technology has very limited dependency on 802.15.4
specifics, thereby allowing other link technologies (e.g., power line communication
—PLC) to utilize the same adaptation mechanisms. Consequently, the term
“6LoWPAN networks” is often generalized to refer to any link layer mesh network
built on low-power and lossy links leveraging 6LoWPAN mechanisms.
The Routing over low-power and lossy networks (ROLL) workgroup in IETF has
defined in RFC 6550 an IPv6 routing protocol for LLNs, known as RPL.1 RPL is a
distance-vector routing protocol. The reason for choosing a distance-vector proto-
col, as opposed to a link-state paradigm, is primarily to address the requirement of
minimizing the amount of control plane state (memory) that needs to be maintained
on the constrained nodes of LLNs. Link-state routing protocols build and maintain a
link-state database of the entire network on every node, and hence tend to be
heavier on memory utilization compared to distance-vector algorithms. RPL
computes a Destination Oriented Directed Acyclic Graph (DODAG) based on an
objective function and a set of metrics and constraints. In the context of routing, a
Pronounced as “ripple”.
1
112 5 IoT Protocol Stack: A Layered View
Directed Acyclic Graph (DAG) is formed by a series of nodes and links. Each link
connects one node to another in a directed fashion such that it is not possible to start
at a Node N and follow a directed path that cycles back to Node N. A Destination
Oriented DAG is a DAG that includes a single root node. The DODAG is a logical
topology built over the physical network for the purpose of meeting specific criteria
and carrying traffic subject to certain requirements. These criteria and requirements
are captured in the objective function, metrics, and constraints. The objective
function captures the goal behind setting up a specific topology. Example objective
functions include minimizing the latency of communication or maximizing the
probability of message delivery. Metrics are scalar values that serve as input
parameters to the best-path selection algorithm. Example metrics include link
latency or link reliability, or node energy level. Constraints refer to conditions that
would exclude specific nodes or links from the topology if they do not meet those
constraints, such as: exclude battery-powered nodes or avoid unencrypted links.
RPL supports dynamic metrics and constraints, where the values change over time,
and the protocol reacts to those changes.
In a RPL network, a given node may be member of different logical topologies,
or DODAGs, each with a different objective. This is supported through the notion
of RPL “instances”. An RPL instance is a set of DODAGs rooted at different nodes,
all sharing the same objective function (Fig. 5.11).
5.2 Internet Layer 113
The DODAG root is typically a border router that connects the LLN to a
backbone network. It is always assigned a rank of 1. RPL calculates ranks for all
nodes connected to the root based on the objective function. The rank value
increases moving down from the root toward leaf nodes. The rank indicates the
node’s position or coordinates in the graph hierarchy.
RPL has two characteristics that render it well suited for LLNs: First, it is a
proactive protocol, i.e., it can calculate alternate paths as part of the topology setup,
as opposed to reactive protocols which rely on exchanging control plane messages
after a failure occurs to determine backup paths. Second, RPL is under-reactive: it
prefers local repair to global reconvergence. Failures are handled by locally
choosing an alternate path, which makes the protocol well suited for operation over
lossy links.
5.2.2.3 6TiSCH
As discussed previously, IEEE 802.15.4 TSCH defines the Medium Access Control
functions for low-power wireless networks with time scheduling and channel
hopping. TSCH can fit as the link layer technology in an IPv6-enabled protocol
stack for LLNs, with 6LoWPAN and RPL. The functional gap in the solution is a
set of entities that can take control of defining the policies to build and maintain the
TSCH schedule, matching that schedule to the multihop paths maintained by the
RPL routing protocol and adapting the resources allocated between adjacent nodes
to traffic flows.
As such, an adaptation layer is required in order to run the IPv6 stack on top of
IEEE 802.15.4 TSCH. The IETF has recently formed the 6TiSCH workgroup in
order to address this technology gap and define what is referred to as the “6 top”
adaptation layer. This adaptation layer is sandwiched in between 802.15.4 link layer
and the 6LoWPAN adaptation layer. Its goals are to address the following issues:
The adaptation layer must control the formation of the network. This includes two
functions: the mechanisms by which new nodes securely join the network and the
mechanisms by which nodes that are already part of the network advertise its
presence.
After the network is formed, the adaptation layer needs to maintain the network’s
health and ensure that the nodes stay synchronized. This is because a TSCH node
114 5 IoT Protocol Stack: A Layered View
must have a time-source neighbor to which it can synchronize at all times. The
adaptation layer is responsible for assigning those neighbors to the nodes, to
guarantee the correct operation of the network.
The adaptation layer needs to gather basic topological information, including node
and link state, and provide this information to RPL, so the latter can compute
multihop routes. Conversely, the adaptation layer needs to ensure that the TSCH
schedule contains cells corresponding to the multihop routes calculated by RPL.
While TSCH defines mechanisms by which a node can signal to its neighbors when
it can no longer accept incoming packets, it does not, however, specify the policies
that govern when to trigger those mechanisms. Hence, it is the responsibility of the
adaptation layer to specify mechanisms for input and output packet queuing poli-
cies, manage the associated packet queues and indicate to TSCH when to stop
accepting incoming packets. The adaptation layer should also handle transmission
failures, in the scenario where TSCH has attempted to retransmit a packet multiple
times without receiving any acknowledgment.
(vi) Determinism
The adaptation layer is responsible for providing deterministic behavior for appli-
cations that demand it. This includes providing mechanisms to ensure that data is
delivered with guaranteed upper bounds on latency and possibly jitter, all while
maintaining coexistence between deterministic flows and best-effort traffic.
5.2 Internet Layer 115
TSCH defines mechanisms for encrypting and authenticating frames, but it does not
define how the security keys are to be generated. Hence, the adaptation layer is
responsible for generating the keys and defining the authentication mechanisms by
which a new node can join an existing TSCH network. The layer is also expected to
provide mechanisms for the secure transfer of signaling (i.e., control) as well as
application data between nodes.
The envisioned 6TiSCH protocol stack is depicted in Fig. 5.12. RPL will be the
routing protocol of choice for the architecture. As the work in IETF progresses,
there may be a need to define a new 6TiSCH specific objective function for RPL.
For the management of devices, the architecture will leverage the Constraint
Application Protocol Management Interface (COMI), which will provide the data
model for the 6 top adaptation layer management interface. Centralized scheduling
will be carried out by the PCE. The topology and device capabilities will be
exposed to the PCE using an extension to a Traffic Engineering Architecture and
Signaling (TEAS) protocol. The schedule computed by the PCE will be distributed
to the devices in the network using either a lightweight Path Computation Element
publisher. When the publisher has new data available from that class, it pushes it in
messages to interested subscribers. Besides the obvious proclamation that this
paradigm is optimal for IoT applications that require one-way communication, the
Pub/Sub model is well suited for IoT deployments that can benefit from the fol-
lowing characteristics:
– Loose coupling between the communicating endpoints, especially when com-
pared with the client-server model.
– Better scalability by leveraging parallelism and the multicast capabilities of the
underlying transport network.
5.3.3 QoS
Application Protocols should provide mechanisms for fine-grained control over the
real-time behavior, dependability, and performance of IoT applications by means of
a rich set of QoS Policies. These policies should provide control over local
resources and the end-to-end properties and characteristics of data transfer. The
local properties controlled by QoS relate to resource usage, whereas the end-to-end
properties relate to the temporal and spatial aspects of data communication.
This policy allows applications to specify the minimum interarrival time between
data samples. Samples that are produced at a faster pace are not delivered. This
policy allows control of both network bandwidth as well as memory and processing
power for applications which are connected over limited bandwidth networks and
which might have limited computing resources.
Application Protocols should provide a set of QoS policies that allow control of the
timeliness properties of distributed data. Specifically, the QoS policies that are
desirable are described below:
This QoS policy allows an application to define the maximum interarrival time for
data. Missed deadline can be notified by the protocol to the application.
This QoS policy provides a means for the application to communicate to the
Application Protocol the level of urgency associated with a data communication.
The latency budget specifies the maximum amount of time that should elapse from
the instance when the data is transmitted to the instance when the data is placed in
the queue of the associated recipients.
Application Protocols should provide the following QoS policies to allow control of
data availability:
5.3 Application Protocols Layer 121
This QoS policy provides control over the degree of persistence of the data being
transmitted by the application. At one end of the spectrum, it allows for data
volatility, while at the other end, it allows for data persistency. It is worth noting
that data persistence enables time decoupling between the producing and the
consuming endpoint by making the data available for late joining consumers or
even after the producer has disconnected.
This QoS policy allows control of the interval of time for which a data sample will
be valid.
This QoS policy provides a mean to control the number of data samples that have to
be kept available for the recipients. Possible values are the last sample only, the last
N samples, or all the samples.
Application Protocols should provide QoS policies to allow control of how data is
delivered. These include:
This QoS policy allows the application to control the level of reliability associated
with data distribution. The possible choices are reliable and best-effort distribution.
With reliable distribution, the Application Protocol must ensure message delivery
and handle acknowledgments and retransmissions without direct application
involvement.
This QoS policy allows the application to take advantage of transports that are
capable of sending messages with different priorities. Application Protocols are
responsible for interacting with the underlying transport layer in order to map this
122 5 IoT Protocol Stack: A Layered View
QoS policy to the right underlying transport network QoS markings (e.g., IP DSCP,
TOS or PCP).
the client (hence the name Representational State Transfer). REST interfaces are
representation centric. Hence, a small set of operations (also called verbs), which
are uniform across all use cases, can be used in the interface. Usually, this set of
verbs is referred to as CRUD for create, read, update, and delete. In REST inter-
faces, there is no out-of-band contract that defines the types of actions that can be
initiated by a client. Rather, this information is discovered dynamically by the client
from prior server interactions through hypermedia (i.e., by hyperlinks within
hypertext). This characteristic of the interface is known as Hypermedia as the
Engine of Application State (HATEOAS).
Code on Demand
Client functionality may be extended or modified by the server through the transfer
of executable pieces of code that can be executed on the client side (e.g., scripts or
applets). This is an optional REST constraint known as “code on demand”.
5.3.5.1 CoAP
5.3.5.2 XMPP
The Extensible Messaging and Presence Protocol (XMPP) was originally designed
for instant messaging, contact list and presence information maintenance. It is a
124 5 IoT Protocol Stack: A Layered View
message centric protocol based on the XML. Due to its extensibility, the protocol
has been used in several applications, including network management, video, voice
over IP, file sharing, social networks and online gaming among others. In the
context of IoT, XMPP has been positioned for Smart Grid solutions, for example, as
depicted in RFC 6272. XMPP originally started as an open source effort, but the
core protocol was later standardized by the IETF in RFC 6120 and 6121. Moreover,
the XMPP Standards Foundation (XSF) actively develops open extensions to the
protocol.
The native transport protocol for XMPP is TCP. However, there is an option to
run XMPP over HTTP.
5.3.5.3 MQTT
5.3.5.4 AMQP
The Advanced Message Queuing Protocol (AMQP) originates from financial sector
applications but is generic enough to accommodate other types of applications.
AMQP is a binary message-oriented protocol. Due to its roots, AMQP provides
message delivery guarantees for reliability, including: at least once, at most once,
and exactly once. The importance of such guarantees can be easily seen in the
context of financial transactions (e.g., when executing a credit or debit transaction).
AMQP offers flow control through a token-based mechanism, to ensure that a
receiving endpoint is not overburdened with more messages than it is capable of
handling. AMQP assumes a reliable underlying transport protocol, such as TCP.
AMQP was standardized by OASIS in 2012 and then by the International
Standards Organization (ISO) and the International Electrotechnical Commission
5.3 Application Protocols Layer 125
(IEC) in 2014. Several open source implementations of the protocol are available.
AMQP defines a type system for encoding message data as well as annotating this
data with additional context or meta-data. AMQP can operate in simple peer-to-peer
mode as well as in hierarchical architectures with intermediary nodes, e.g., mes-
saging brokers or bridges. Finally, AMQP supports both point-to-point communi-
cation and multipoint publish/subscribe interactions.
5.3.5.5 SIP
The Session Initiation Protocol (SIP) handles session establishment for voice,
video, and instant messaging applications on IP networks. It also manages presence
(similar to XMPP).
SIP invitation messages used to create sessions carry session descriptions that
enable endpoints to agree on a set of compatible media types. SIP leverages ele-
ments called proxy servers to route requests to the user’s current location,
authenticate and authorize users for services, implement call-routing policies, and
provide features. SIP also defines a registration function that enables users to update
their current locations for use by proxy servers. SIP is a text-based protocol and can
use a variety of underlying transports: TCP, UDP or SCTP, for example. SIP is
standardized by the IETF as RFC 3261.
CoAP REST resource manipulation via CRUD LLNs UDP Binary IETF
Resource tagging with attributes
Resource discovery through RD
MQTT Light weight Pub/sub messaging Enterprise Telemetry TCP Binary OASIS
Message queuing for future subscribers
AMQP Message orientation, queuing & pub/sub Financial services TCP Binary OASIS
Data transfer with delivery guarantees (at least
once, at most once, exactly once)
IEEE 1888 Read/write data into URI Energy & Facility SOAP / XML IEEE
Handling time -series data Management HTTP
DDS Pub/Sub messaging with well -defined data types Real time distributed UDP Binary OMG
(RTPS) Data Discovery systems (military,
industrial, …)
5.4.1 Motivation
M2M deployments have existed for over two decades now. However, what has
characterized these deployments is a state of fragmentation: vertical solutions are
implemented in silos with proprietary communication stacks and very tight cou-
pling between applications and devices. The paradigm can be best described as
5.4 Application Services Layer 127
“one application—one device.” The application code is exposed to all the device
specifics under this modus operandi. This, in turn, creates complexity and increases
the cost of the solution’s initial development and ongoing maintenance. For
instance, if the operator of a deployment wanted to replace a defective device with
another from a different manufacturer, parts of the application source code would
have to be rewritten in order for the replacement device to be integrated into the
solution. By the same token, adding new types of devices to the solution cannot be
performed without application source code changes. Furthermore, the networks
interconnecting the devices and the applications are in many cases closed propri-
etary systems, and interconnecting those networks requires application gateways
that are complex and expensive. These issues constitute a major current gap in IoT.
What is required is a layer of abstraction that fits in between the applications and the
devices, i.e., things, and enables the paradigm of “any application—any device”
(Fig. 5.15).
In other words, this abstraction layer provides a common set of services that
enables an application to interface with potentially any device without under-
standing a priori the specifics and internals of that device. This abstraction layer is
referred to as the application services layer in our model of the IoT protocol stack. It
provides seamless interoperability between applications and devices and promotes
nimble development of IoT solutions.
From a business perspective, the emergence of this new layer is driven, in part,
by communication service providers (CSPs) looking at using IoT to gain additional
revenue from their networks. Key to this revenue will be differentiating beyond
providing simple IP connectivity. CSPs know well the value of IoT is in the data,
not the way it is transported. To unlock this value, the application services layer
aims to turn the network to a common platform to enable diverse IoT applications.
This common platform will be built across an ecosystem of heterogeneous devices
and will enable CSPs to monetize IoT data access, storage, management, and
security.
128 5 IoT Protocol Stack: A Layered View
The network architecture adopted by the ETSI M2M effort draws heavily on existing
technologies. The architecture comprises of three domains: M2M Device Domain,
Network Domain, and Application Domain (Fig. 5.16). The M2M Device Domain
provides connectivity between things and gateways, e.g., a FAN or PAN. Devices
are entities that are capable of replying to request for data contained within those
entities or capable of transmitting data contained within those entities autonomously.
Gateways ensure that end devices (which may not be IP enabled) can interwork and
interconnect with the communication network. Technologies in the M2M device
domain include IEEE 802.15.4, IEEE 802.11, ZigBee, Z-WAVE, and PLC.
The network domain includes the communication networks, which interconnect
the gateways and applications. This typically includes access networks (xDSL,
FTTX, WiMax, 3GPP, etc.) as well as core networks (MPLS/IP). The application
domain includes the vertical-specific applications (e.g., Smart Energy, eHealth,
Smart City, and Fleet Management.) in addition to the service capabilities layer
(SCL), a middleware layer that provides various data and application services. The
main focus of the ETSI M2M standards is on defining the functionality of the SCL.
The SCL provides functions that are common across different applications and
expose those functions through an open API. The goal is to simplify application
development and deployment through hiding the network specifics.
The functions of the SCL may reside on entities deployed in the field such as
devices and gateways or on entities deeper in the network (e.g., servers in a data
center). This gives rise to three flavors of SCL, depending on its placement: device
SCL (D-SCL), gateway SCL (G-SCL), and network SCL (N-SCL). While the three
flavors of SCL do share some common functions, they also differ due to the
5.4 Application Services Layer 129
different operations that need to be carried out by devices, gateways and network
nodes (servers). In general, the SCL provides the following functions:
• Registration of devices, applications, and remote SCLs
• Synchronous and asynchronous data transfer
• Identification of applications and devices
• Group management for bulk endpoint addressability and operations
• Security mechanisms for authentication, authorization, and access rights control
• Remote device management (through existing protocols)
• Location information
ETSI M2M adopted a RESTful architecture style where all data in the SCL is
represented as resources. This includes not only the data generated by the devices,
but also data representing device information, application information, remote SCL
information, and access rights information. Resources in the SCL are uniquely
addressable via Universal Resource Identifiers (URIs). Manipulation of the
resources is done through a RESTful API, which provides the CRUD primitives (C:
Create, R: Read, U: Update, D: Delete). The API can be bound to any RESTful
protocol, such as HTTP or CoAP. ETSI technical specification TS 102 921 specifies
the API binding to HTTP and CoAP protocols.
Resources within the SCL are organized in a well-specified hierarchical structure
known as the Resource Tree (Fig. 5.17). This provides a number of advantages: It
provides a data mediation function, describes how resources relate to each other,
allows traversal and query of data in an efficient manner, and speeds up the
development of platforms. The Resource Tree of an SCL includes:
• Location of other SCLs in the network (in other devices or GWs)
• List of registered Applications
130 5 IoT Protocol Stack: A Layered View
5.4.2.2 oneM2M
• Connectivity Handling: This ensures efficient, reliable and scalable use of the
underlying network.
• Remote Device Management: This includes configuration and diagnostic
functions.
• Data Exchange: Supports storing and sharing of data between applications and
devices, in addition to event notification.
• Security and Access control: Provides control over access to data (who can
access what and when, etc.).
• Discovery: Provides discovery of entities as well as data and resources.
• Group Management: Support of bulk operations and access.
• Location: Provides an abstraction for managing and offering location informa-
tion services.
The CSE is, more or less, logically equivalent to the ETSI M2M SCL.
The Network Services Entity provides value added services to the CSE, such as
QoS, device management, location services and device triggering.
The oneM2M reference architecture identifies five different types of logical
nodes: Application Dedicated Nodes, Application Service Nodes, Middle Nodes
(MNs), Infrastructure Nodes and None-oneM2M Nodes. These nodes may map to
one or more physical devices in the network, or may have no corresponding
physical mapping.
5.4 Application Services Layer 133
While ETSI and oneM2M have made strides in defining standard APIs and com-
mon application services for IoT, several gaps remain.
First, in terms of search and discovery capabilities, the IoT application services
layer should provide support for:
• Mechanisms by which devices as well as applications can automatically dis-
cover each other as well as discover middleware/common services nodes.
• Mechanisms by which applications can search for devices with specific attri-
butes (e.g., sensors of particular type) or context (e.g., within a specific distance
from a location).
• Mechanisms by which applications can search for data based on attributes (e.g.,
semantic annotations) or context (e.g., spatial or temporal).
Both ETSI and oneM2M define basic mechanisms for Resource search based on
metadata or text strings. However, these are rudimentary capabilities and do not
provide the contextual search functions that will be needed for IoT. Furthermore, no
mechanisms for device or gateway auto-discovery are provided by either standard.
It is assumed that the various instances of the middleware (SCL in case of ETSI,
and CSE in case of oneM2M), which need to communicate with each other, have a
priori knowledge of their respective IP addresses. The same assumption holds
between application endpoints and other entities (devices or middleware instances)
that they need to communicate with.
Second, with regards to data encoding, interpretation, and modeling, the appli-
cation services layer should encompass:
• Mechanisms that render IoT data understandable to applications without a priori
knowledge of the data or the devices that produced it.
• Mechanisms that enable application interaction at a high level of abstraction by
means of physical/virtual entity modeling.
• Mechanisms that enable data management services to host the semantic
description of IoT data that is being handled.
• Framework for defining formal domain-specific semantic models, or ontologies,
including but not limited to defining an upper level ontology for IoT.
ETSI’s effort stopped at defining opaque containers for holding data. The
interpretation of that data was outside the scope of what was standardized. oneM2M
went one step further by providing an attribute to link the data container to an
ontology reference (URI). However, no formal effort has been undertaken to define
any ontologies or define any associated framework for tying semantic systems with
the rest of the architecture, beyond this simple linkage.
136 5 IoT Protocol Stack: A Layered View
5.5 Summary
In this chapter, we started with an overview of the IoT Protocol Stack, and then we
examined each of the link layer, Internet layer, application protocols layer and
application services layer in details. For each of these layers, we examined the IoT
challenges and requirements impacting the protocols, which operate at that
respective layer, and discussed the industry progress and gaps.
In the course of the discussion on the link layer, we covered IEEE 802.15.4,
TCSH, IEEE 802.11ah, and TSN. In the Internet layer, we discussed 6LowPAN,
RPL and 6TiSCH. In the application protocols layer, we surveyed a subset of the
multitude of available protocols. Finally, in the application services layer, we
covered the work in ETSI M2M and oneM2M on defining standard application
middleware services.
sensor reports along with every temperature reading a timestamp using the ISO
8601 format (CCYY-MM-DDThh:mm:ss).
a. If the current temperature measured by the sensor is 342.5°F, construct the
payload of a CoAP message with the reading encoded in XML, then in
JSON.
b. Assuming that the sensor consumes 3 nano-Joules per byte (character)
transmitted over a wireless network, calculate the total energy required to
transmit each message. Which of the two encoding schemes (XML or
JSON) is more energy efficient? By what percentage?
12. Compare the bandwidth utilization for the XML vs. JSON messages of
Question 11 in bits per second assuming UTF-8 text encoding is being used.
13. An IoT water level monitoring application requires updates from a sensor
periodically, using the command/response paradigm. The application triggers a
request every 1 second. The round-trip propagation delay between the appli-
cation and the sensor is 12 milliseconds. The sensor consumes 3 milliseconds
on average to process each request. The application consumes 2 milliseconds to
send or receive any message. If the application blocks on every request to the
sensor, how much of its time budget can be saved by redesigning the appli-
cation to use the publish/subscribe communication model in lieu of the
command/response approach?
14. A utility company uses IPv6 enabled Smart Meters running in an IEEE
802.15.4 mesh. If the mesh is operating at 1Mbps without 6LoWPAN IPv6
header compression, what is the throughput of the Smart Metering application
in the worst-case scenario?
15. An automotive parts manufacturer is looking to upgrade the network that
controls their Computer Numerical Control (CNC) mill. At full speed, the mill
can cut into solid steel at a rate of 1″ per second. The manufacturer’s quality
assurance (QA) guideline mandates that the dimensions of any part produced
must be accurate within ±1/100″. In order to meet the QA guideline, what is
the maximum jitter that needs to be guaranteed by the new deterministic net-
work that connects the mill to the controlling computer?
16. Given the following IEEE 802.15.4 mesh running the RPL protocol. The
numbers indicated next to each link is the associated latency. If the objective
function is to minimize the communication latency to the Internet, what will be
the topology computed by RPL?
17. An automation engineer is looking to deploy a deterministic network in a sheet
metal factory. The control system in charge of safety expects a message from
the embedded application of a heating element controller every 50 millisec-
onds, otherwise it immediately shuts down the production line. The network in
question has on average a delay of 1 msec per link and 2 msec per node. What
138 5 IoT Protocol Stack: A Layered View
is the maximum number of hops that can separate the control system from the
heating element controller?
18. Why does channel hopping improve the reliability of wireless sensor networks?
19. An application protocol supporting a Time Filter Policy for client applications
must not deliver messages at a rate higher than what the client application is
willing to consume. What are common strategies to achieve this?
20. Which application layer protocol would you choose for deploying an IoT
solution for a financial institution? Why?
References
1. J. Yick et al., Wireless sensor network survey. Comput. Netw. 52(12), 2292–2330 (2008)
2. M. Sichitiu, Wireless mesh networks: opportunities and challenges. Wireless World Congress,
1–6, 2005
3. IEEE 802.15.4-2011, September 2011
4. R. Krasteva et al., Application of wireless protocols Bluetooth and ZigBee in telemetry system
development. Problems Eng Cybern Robot 55, 30–38 (2005)
5. N. Garg, M. Yadav. A review on comparative study of Bluetooth and ZigBee, in Proceedings
of the Second International Conference on Advances in Electronics, Electrical and Computer
Engineering, EEC, 2013
6. IEEE 802.15.4g-2012, April 2012
7. T. Adame et al., IEEE 802.11ah: the Wi-Fi approach for M2M communications. IEEE
Wireless Communications, December 2014
8. IEEE draft standard 802.11ah Draft 4
9. M. Teener, IEEE 802 time sensitive networking: extending beyond AVB
10. Industrial ethernet: a control engineer’s guide, Cisco Whitepaper
11. D. Pannell, Audio Vidor bridging Gen 2 assumptions, July 2011
12. IEEE 802.1Qca Draft 2.0, April 2015
13. P. Meyer, et al., Extending IEEE 802.1 AVB with time-triggered scheduling: a simulation
study of the coexistence of synchronous and asynchronous traffic, IEEE Vehicular Networking
Conference (VNC), At Boston, Massachusetts, 2013
14. IEEE 802.1Qbv Draft 2.3, April 2015
15. IEEE Standard 802.15.4e-2012
16. T. Watteyne, et al., Using IEEE 802.15.4e time-slotted channel hopping (TSCH) in the
internet of things (IoT): problem statement, IETF RFC 7554, May 2015
17. X. Su, et al., Enabling semantics for the internet of things—data representation and energy
consumption, Internet of Things Finland, Jan 2013
18. Z. Shelby et al., The constrained application protocol (CoAP), IETF RFC 7252, June 2014
19. Z. Shelby et al., CoRE resource directory, draft-ietf-core-resource-directory, work in progress,
March 2016
20. F. Baker, D. Meyer, Internet protocols for the smart grid, IETF RFC 6272, June 2011
21. J. Rosenberg, et al., SIP: session initiation protocol, IETF RFC 3261, June 2002
22. T. Watteyne, et al., Reliability through frequency diversity: why channel hopping makes
sense, in PE-WASUN ‘09 Proceedings of the 6th ACM Symposium on Performance Evaluation
of Wireless Ad Hoc, Sensor, and Ubiquitous Networks, pp. 116–123, Oct 2009
Chapter 6
Fog Computing
There are several IoT requirements that act as the drivers for the fog architecture.
These will be discussed next.
It has been claimed that 5 exabytes of data have been generated from the dawn of
humanity to 2003.1 Now, this much data is generated every 2 days1, and the rate is
only increasing. The billions of devices that are projected to be connected to the
Internet will only exacerbate the data deluge problem. At heart of the issue is the
question of whether the state of the art will evolve fast enough to handle the
imminent explosion of data? There are two technology evolution curves at play
here: One represents the evolution of compute and storage technologies, which is
governed by Moore’s Law, and the second represents the growth of bandwidth at
the network edge, which is covered by Nielsen’s Law. Moore’s Law stipulates that
compute and storage technologies will double in capability/capacity every
18 months. Nielsen’s Law, on the other hand, projects that the bandwidth at the
network edge doubles every 24 months. Acknowledging that there is a positive
correlation between the growth of compute and storage technologies and the growth
in data volume, it is conceivable to foresee an IoT future, where data will be
produced at rates that far outpace the network’s ability to backhaul the information
from the network edge, where it is produced by the billions of Things, to the cloud
where it will ultimately need to be processed and potentially stored. This disparity
between the data volume and the available bandwidth is best exemplified with the
analogy of attempting to push a golf ball through a straw. Luckily, Moore’s Law is
not only a culprit by contributing, in part, to the problem but is also a key enabler to
the solution: It can be leveraged to augment the functions of the network itself with
compute and storage capabilities at the edge. This allows the network to perform
processing, analysis, and storage of data in lieu of blindly pushing all data up to the
1
As quoted by Eric Schmidt, Executive Chairman of Google.
6.2 Drivers for Fog 141
cloud. With that, cloud computing is brought closer to the data sources, the Things,
which gives rise to the notion of fog computing. Cloud becomes fog when it is
closer to Things, pun intended.
Certain IoT use cases require support for rapid mobility of Things, for example,
sensors on a speeding vehicle communicating with road-side infrastructure or a
passenger with a smart-phone commuting on a train. Due to rapid mobility, network
conditions may vary frequently, due to signal fading, interference, or other con-
ditions. This may even lead to severe service degradation or intermittent loss of
connectivity to the cloud. Another consideration is the characteristics of the com-
munication path to the cloud: Bandwidth and/or latency limitations may have
adverse side effects on the operation of the IoT application. Multiple variables will
typically be at play to contribute to these characteristics, including radio coverage,
interference, and the amount of resources shared with other mobile nodes.
To guarantee the quality of service and reliability required by the application,
especially when dealing with mobility over extended geographic distances, the
cloud infrastructure needs to be augmented with compute and storage functions that
move with the mobile Things. The mobility of these functions may be either
physical or virtual. In the former case, the compute and storage are physically
situated with the moving Thing, whereas in the latter, these functions maintain close
proximity by shadowing and following the Thing albeit in the network edge. In this
capacity, fog augments the cloud to achieve the required pervasiveness and relia-
bility required by rapid mobility in IoT.
IoT applications that focus on closed-loop control and actuation often share the
following characteristics: the data input space and the processing logic required to
produce the control decision have intensive computational and considerable storage
demands. The sensing and actuating devices are typically constrained devices and
therefore need to offload the storage and compute functions to external systems or
infrastructure. In many cases, these control applications require very low latency for
correct operation. In a subset of the scenarios, connectivity to the cloud may be
either too expensive (e.g., satellite links connecting sensors deployed in oilfields) or
unreliable due to rapid mobility patterns.
The combination of the above characteristics makes it unpalatable to rely on
cloud computing to support reliable real-time control with fixed latency. This is
where fog computing can complement the cloud to address that IoT application
niche.
142 6 Fog Computing
A class of IoT applications are characterized with the confluence of very large scale,
in terms of the number of devices generating data, widespread geographic footprint
where these devices are deployed, vast amounts of data that need to be collected,
aggregated, processed, and exposed to consuming entities, as well as real-time
analytics or closed-loop control. For such class of applications, a data management
and analytics platform that can handle the scale and performance requirements is
needed. Experience with large-scale information and communication systems has
proven that distributed systems built on hierarchical division of functions provide
the elasticity required while maintaining key performance metrics. Such systems
typically exploit locality of data for their most basic functions. In other words, they
tend to minimize the amount of data required from remote sources for critical
functions. Interactions between widespread entities are typically confined to system
wide functions. For data management and analytics, this operating paradigm is even
more relevant because the IoT data often needs to be operated on within a context,
which is well known at the edge of the network, close to the data sources, and is
often lost or is irrelevant as the data travels deeper in the network and into the
cloud. Take as an example an ambient noise sensor in a Smart City application,
which is constantly measuring noise levels and streaming the recorded data.
Backhauling all the data to the cloud is both unnecessary and inefficient, especially
when compared with an alternate design where a local analytic function situated
close to the sensor filters readings below a specified threshold (depending on the
context associated with where the sensor is deployed) and only propagates to the
cloud interesting readings above that threshold, e.g., to alert city personnel.
Fog computing, in concert with cloud computing, provides the necessary com-
pute and storage infrastructure required to support such distributed and hierarchical
data management and analytics.
The fog and the cloud both comprise of the same three building blocks: compute,
storage, and networking. However, there are multiple characteristics that uniquely
shape the fog and distinguish it from the cloud:
First are the network edge location, location awareness, and low latency. Fog
locates the services close to the data sources and consumers where it is possible to
enrich the data with location context and operate on it with minimal latency.
Second is geographical and architectural distribution. This is in stark contrast to the
cloud model where are all services are centralized in the data center.
Third is the extremely large number of nodes. While the cloud drives demand for
massively scalable data centers (MSDC), the fog pushes the envelope further on
scalability.
6.3 Characteristics of Fog 143
Fourth is mobility of nodes and endpoints. The data sources, consumers, compute,
or storage resources can all be mobile.
Fifth is real-time interaction. In the fog, the focus is on real-time analysis of
streaming data as opposed to batch processing. Fog requires analysis of data in
motion as opposed to data at rest.
Sixth is predominance of wireless access. In the cloud, connectivity relies on
wireline technologies, predominantly Gigabit Ethernet (10 Gbps, 40 Gbps, and
soon 100 Gbps), whereas the fog will be mostly connected over wireless links, both
because of the impracticality of running wires everywhere, as well as to support the
mobility requirements.
Seventh is the heterogeneity of resources. In the cloud, a given data center is
managed by a single business entity, which goes about deploying homogeneous
resources in order to minimize complexity and operational costs. With the fog, the
architecture is federated over resources managed by different business entities.
Hence, these resources will vary widely in capabilities, form factors, and operating
environment.
Table 6.1 summarizes the main facets of difference between cloud and fog
computing.
Inherent to fog computing is the ability to locate compute functions close to data
producers and/or consumers. This assumes the availability of lightweight compute
virtualization technologies that allow workloads to be instantiated, as needed, on
fog nodes. The latter act as shared compute resources among potentially a multitude
of IoT applications.
Virtualization technologies combine or partition computing resources to present
one or more operating environments using techniques such as hardware and soft-
ware partitioning or aggregation, hardware emulation, resource sharing, or time
multiplexing. Virtualization provides a number of advantages: It enables consoli-
dation of both hardware and applications, thereby eliminating the expense associ-
ated with procuring and managing underutilized infrastructure. It also enables
sandboxing, i.e., providing application with secure isolated execution environ-
ments. Virtualization also provides the flexibility of multiple simultaneous oper-
ating systems over the same hardware infrastructure. It eases the migration of
software stacks and allows the packaging of applications as stand-alone appliances.
Furthermore, virtualization enables the portability and mobility of applications from
one hardware or physical location to another with ease.
Virtualization technologies generally differ in the abstraction level at which they
operate: CPU instruction set level, hardware abstraction layer (HAL) level, and
operating system level.
Virtualization at the CPU instruction set level allows an “emulator” to provide to
an application the illusion of running on one processor architecture, whereas the
real hardware actually belongs to a different architecture. It is the job of the
emulator to translate the guest instruction set (offered to the application) to the host
instruction set (used by the actual hardware).
Virtualization at the HAL level involves a virtual machine manager, or hyper-
visor, which is a software layer that sits above the physical hardware (sometimes
referred to as “bare metal”) and provides a virtualized view of all its services. The
hypervisor can create multiple virtual machines (VMs) on top of the bare metal. The
VMs can be running different operating systems. Applications can run within their
respective operating systems and are completely oblivious to the underlying
virtualization.
Virtualization at the operating system level relies on virtualization software that
runs on top of or as a module within the operating system. It provides an abstraction
of the kernel-space system calls to user-space applications, in addition to security
and sandboxing capabilities to prevent one application from causing collateral
damage to another.
Other higher levels of virtualization are possible, such as library and
application-level virtualization, but these are not relevant for the purpose of this
discussion.
6.4 Enabling Technologies and Pre-requisites 145
Both containers and VMs are popular virtualization constructs employed in cloud
computing today. Each of the two technologies has its own set of advantages and
trade-offs. Virtual machines (VMs) are a virtualization technology at the HAL level.
VMs provide an abstraction of a compute platform’s hardware and software
resources, complete with all the drivers, full operating system, and needed libraries.
Containers, on the other hand, are a virtualization technology at the operating
system level. They include portions of the operating system and select libraries: the
minimal pieces that are absolutely required to run the application. Containers share
the same operating system and, where applicable, common libraries (Fig. 6.2). Due
to this, containers are lighter weight when compared to VMs, both in terms of their
memory and processing requirements. As a result, given a specific hardware (e.g., a
server) with a fixed resource profile, it is possible to support more containers than
VMs running concurrently. This gives containers a clear scalability advantage over
VMs, not only for cloud computing but also for the fog. In fact, the compact
memory footprint for containers gives them another advantage in the fog context:
They are faster to migrate from one hosting node to another, a matter which
characterizes them with the nimbleness required to support rapid mobility.
6.4.1.2 Docker
As previously discussed, rapid mobility is one of the drivers for fog computing. To
ensure uninterrupted operation of the IoT application, the network infrastructure
that is providing the underlying communication fabric for the fog deployment must
support seamless mobility of the communicating endpoints.
Networking systems rely on the address of the endpoints in order to deliver
messages to their intended recipients. Depending on the technology at hand, the
address connotes either the identity or the location of the endpoint. For example,
media access control (MAC) addresses are identity addresses, because they are
burnt into the machine and uniquely identify it on a network. IP addresses, on the
other hand, are typically used as location addresses because they indicate the
geographic locality of the endpoint. In some contexts, IP addresses are used as
identity addresses as well, for example, in wireless mobile IP applications.
Applications that are deployed in a virtualization construct, such as a virtual
machine, can perform seamless mobility. With seamless mobility, the application’s
MAC and IP addresses remain unchanged as the associated VM moves from one
physical server node to another. The network infrastructure needs to handle the
application mobility event and update the forwarding information on the routers
and/or switches to deliver the messages correctly to the right physical server that is
now hosting the VM. In order to do this, the network infrastructure needs to treat
the VM’s IP and MAC addresses as identity addresses and correlate them with
dynamic location addresses that get updated automatically as the VM moves from
one locality to another. In order to properly scale the solution, the knowledge of
identity addresses should be confined to the edge of the network, whereas the core
of the network performs forwarding solely based on the location addresses. This is
achieved by relying on tunnels established between the edge nodes of the network
to forward the end-host traffic over the core. The tunnel encapsulation uses location
addresses and hides identity addresses from the core network nodes. The correlation
between identity addresses and location addresses is established through a mapping
service provided by the network infrastructure. In a way, this is similar to how the
post office mail forwarding service works: If a person moves her home, then she
148 6 Fog Computing
informs the post office in order to update the association of her name (identity
address) from an old home address (old location address) to a new home address
(new location address), in order to guarantee uninterrupted delivery of mail
(packets) (Fig. 6.3).
The industry has recently been working on defining networking solutions to
support seamless VM mobility, primarily driven by enterprise mobility, data center,
and cloud use cases. The solutions generally differ in how the mapping service (for
identity to location address) is implemented: Some proposals use a centralized
server for the mapping service, whereas others rely on a distributed control pro-
tocol. These solutions can be leveraged by fog computing. We will discuss two of
the most promising solutions: Ethernet Virtual Private Network (EVPN) and
Locator/Identifier Separation Protocol (LISP).
6.4.2.1 EVPN
Ethernet Virtual Private Network (EVPN) is an overlay technology that allows Layer
2, and even Layer 3, virtual private networks to be created over a shared Internet
Protocol (IP) or Multiprotocol Label Switched (MPLS) transport network. EVPN
was standardized by the IETF in RFC 7432. EVPN uses the Border Gateway
Protocol (BGP) in order to build the forwarding tables on the participating network
elements. Given that EVPN is an overlay technology, only network elements that are
at the edge of the network need to support it, and core network elements are
oblivious to the fact that EVPN is running in the network. The edge nodes, which run
6.4 Enabling Technologies and Pre-requisites 149
EVPN, are known as EVPN provider edge (PE) nodes. PE nodes learn the MAC and
IP addresses of connected hosts, from the access side, either by snooping on the host
traffic in the data plane (similar to how Ethernet bridges learn addresses) or by
running some control protocol (e.g., the Address Resolution Protocol—ARP).
The PE nodes then build a database of the local addresses and advertise these
addresses to remote PEs using BGP route messages (Fig. 6.4). Remote PEs, which
receive the BGP route messages, build their own forwarding databases where they
associate the MAC and IP addresses (identity addresses) of the hosts with the next
hop address (location address) of the PE that advertised the route. Host traffic packets
received by ingress PE nodes are tunneled (using IP or MPLS encapsulation) over
the core network to egress PE nodes, where the tunnel encapsulation is removed, and
the original host packets are forwarded to their intended destination(s).
To handle application mobility, EVPN introduces new BGP messages and
dedicated protocol machinery. These mechanisms provide a solution for two issues:
first, updating the network infrastructure with the new identity address to location
address mappings and, second, guaranteeing optimal forwarding to the default IP
gateway after mobility. These two issues and how they are addressed with EVPN
will be discussed next.
learn the application/VM IP and MAC addresses. This PE, call it PEorigin, will then
advertise the VMs addresses in BGP to all the remote PEs in the virtual private
network instance. The remote PEs will then update their forwarding tables to
indicate that the VM IP and MAC addresses are reachable via PEorigin. Now,
assume that the VM moves to a new physical server, which is serviced by a
different PE, call it PEtarget. If the PE nodes continue to send traffic for the VM to
PEorigin, then this traffic will not be delivered to the VM because the latter is no
longer on the old server. EVPN solves this issue as follows: When the VM starts
sending traffic from its new location, PEtarget will receive the packets over its access
interfaces and will deduce that the VM is locally connected. PEtarget would also
recognize that the VM’s IP and MAC addresses were previously learnt from a
remote PE, PEorigin, via a previous BGP route advertisement. Hence, PEtarget
deduces that the VM must have moved, and so it needs to update the rest of the
network with the new location of the VM. PEtarget would then advertise BGP routes
for the VM’s IP and MAC addresses with a special attribute to indicate the mobility
event. This route is sent to all remote PEs, including PEorigin. When PEorigin pro-
cesses the BGP route message, the special attribute indicates to it that the VM has
moved, so PEorigin withdraws its previously advertised BGP route for that VM’s
addresses. This handshake mechanism results in all the PEs converging on using
PEtarget as the new next hop (location address) for the VM traffic (Fig. 6.5).
As a VM moves from one physical server to another, both its memory (RAM) and
disk image are maintained unchanged. This means that the VM’s configuration
remains unmodified. The configuration includes, among other things, the address of
the default IP gateway that the VM should use in order to forward network traffic to
remote nodes. Typically, the default IP gateway should be in close topological
proximity to the server that is hosting the VM, in order to guarantee optimal
forwarding of network traffic originating from the VM. However, with VM
mobility, the VM may land on a new host server that is topological distant from the
original default IP gateway. In such a case, network traffic sourced by the VM will
most likely follow a suboptimal forwarding path to its destination.
For example, consider the network of Fig. 6.6, where VM1 is in communication
with VM2 (hosted on Server 3). VM1 is originally hosted on Server 1, and its
network traffic that is destined to VM2 initially follows an optimal forwarding path
through the default IP gateway (the dotted black line). When this VM moves from
its initial location to a new location on Server 2, the network traffic will start
following a suboptimal path from Server 2, via the same default gateway, to Server
3 (the solid black line).
To address this problem, EVPN delegates the default IP gateway function to the
edge of the network (the PE nodes) and enables all the PEs to act as a distributed
logical default gateway for hosts that are attached over the PE access interfaces.
When a host sends an ARP request for the default IP gateway IP address, the
EVPN PE intercepts the ARP message and responds to it with its own MAC
address. The default gateway IP address is the same across all the participating
EVPN PEs. This is specifically to cater for the fact that the VM retains its con-
figured default gateway address after a mobility event (Fig. 6.7).
This approach solves the problem by ensuring that the default gateway is always
in topological proximity to the VM after it moves from one physical host to another.
152 6 Fog Computing
6.4.2.2 LISP
“Map-Request” toward the Map Resolver. The latter forwards it to the right Map
Server, which in turn forwards the request to the authoritative ETR. This ETR
replies to the requesting ITR with a “Map-Reply” message that contains the list of
the RLOCs having the capability to reach the requested EID, with their charac-
teristics in terms of priority of usage and weighted load partitioning (Fig. 6.8).
To handle application mobility, LISP introduces specific protocol mechanisms.
These mechanisms provide a solution for the two issues discussed in the previous
section: first, updating the network infrastructure with the new identity address to
location address mappings and, second, guaranteeing the optimal forwarding to the
default IP gateway after mobility.
Mobility is enabled on an ETR by configuring the node with the list of the mobile
IP subnets (EIDs) that the ETR is to support. This ETR then becomes the local
default IP gateway for these mobile EIDs. When an application, with its unique
EID, moves into the LISP site, the first packet that it will send to its local default IP
gateway will trigger the mobility detection on the ETR. The ETR then registers this
specific EID with the Map Server. The latter, in turn, deregisters the EID from the
previous authoritative ETR. What remains is to update the map caches of all the
ITRs that have communicated with the application prior to its move, as those ITRs
will have stale entries to the RLOC of the old authoritative ETR. This function is
performed by the old authoritative ETR itself, which upon receiving any data traffic
for the EID that has moved, sends back a “Solicit-Map-Request” message to the
originating ITR. This message instructs the ITR to refresh its cache (Fig. 6.9).
154 6 Fog Computing
LISP solves the default IP gateway problem by ensuring that every site has a default
gateway configured for the same prefix. This gateway must use the same (virtual) IP
and MAC addresses in order to guarantee that the traffic originating from the moved
VM follows an optimal path out of the local LISP tunneling router rather than being
forwarded to another site. First Hop Redundancy Protocols (e.g., VRRP) must be
configured with identical gateway and MAC addresses in all sites, and their packets
must not be allowed to leak beyond a given site. This way, when a VM moves, it
will always find the same default gateway regardless of its location.
6.4.3.1 Topology
Cloud orchestration systems that are available today make assumptions about the
network: the physical layout of the topology (3-tiered, 4-tiered, fat tree, etc.), the
abundance of available bandwidth, and the fact that the network elements are
capable devices and therefore have no restrictions on the size of the routing tables.
While these assumptions are valid in the cloud, they do not hold true in the fog. Fog
topologies are ad hoc best-fit affairs. They have heterogeneous interconnects as well
as dynamically varying bandwidth, latency, and reliability characteristics. Fog
orchestration software has to deal with isomorphic topologies that are directly
connected to Things.
With fog, the orchestration software needs to be able to deploy applications, which
need direct access to Things (e.g., legacy applications), on fog nodes that are
physically connected to these specific devices. To enable the communication
156 6 Fog Computing
between the applications and their associated devices, specialized device drivers
need to be initialized on the fog nodes by the orchestration system. Furthermore,
applications may require data from remote Things, in which case the orchestration
software needs to dynamically establish network overlays to facilitate network
communication between the applications and those remote Things.
Orchestration systems for the cloud are capable of deploying applications on nodes
that can offer the right performance guarantees in terms of processing power,
memory, and disk space. For fog, these performance guarantees alone are not
enough. Another dimension of complexity arises due to Control Applications that
require network performance guarantees, in terms of upper bounds on latency and
jitter, in their communication with Things. In order to support these control
applications in the fog, the orchestration system needs to be able to incorporate
network latency and jitter into the application placement and scheduling algorithms.
Mobility complicates this further, as the placement decisions need to be recalcu-
lated with changing conditions.
There are vast amounts of data crossing the network every day. However, those bits
and bytes provide a wealth of information about actions, time, location, and
devices. By gathering and combining pieces of information together, it is possible
to start seeing patterns and gain greater insights. In other words, it is possible to
gain knowledge. And it is through knowledge that we, as humans, can learn and
apply wisdom, leading to better outcomes.
New data sources are being created and added to the network every day. From a
video camera in a transit bus, a tire pressure sensor in a truck, a temperature sensor
in a jet engine, to a smart meter attached to a house. These devices are creating a
constant stream of data. Very soon, the data generated by the IoT will make up the
majority of all information available on the Internet and will change the face of Big
Data. It will not be possible to store all this data and analyze it later. The real-time
nature of these new sources of data requires that their output be evaluated in motion
and in a meaningful way. The value of data is often dictated by time—being at its
highest value when it is first created. Actionable insights can be extracted and acted
upon, as data is generated, to create advantage here and now or even predict the
future. Mastery of data—moving from data to wisdom (Fig. 6.11)—has the
potential to improve various aspects of our personal and business life.
6.4 Enabling Technologies and Pre-requisites 157
With the availability of massive amounts of data, the need arises for reliable and
effective mechanisms of searching for information that is useful and relevant.
Search technologies have made great strides since the inception of the World Wide
Web. However, these technologies, and the engines that utilize them, target static or
slowly changing Web data and are generally lacking when dealing with the con-
stantly streaming data in IoT.
IoT requires a solution for distributed data search, where queries can be prop-
agated throughout the fog domains. The solution can be logically organized into
two planes: Things Plane and Search Plane. The Things Plane encompasses the
physical Things, network, and compute nodes in the fog. The Search Plane is a
logical view of the various fog nodes that support the distributed search func-
tionality together with the network overlay that enables communication between
them. Such overlay could be implemented, for instance, using a Federation
Message Bus (Fig. 6.13). Search queries are injected into the Search Plane at some
fog node and propagate throughout the Search Plane. Special considerations are
required to ensure that such propagation does not lead to traffic storms that over-
whelm the network or the fog nodes. Furthermore, mechanisms are required to limit
the search scope, or radius, in order to guarantee scalability and relevance of
returned results. One approach would be to rely on wave algorithms, such as the
echo algorithm, for query distribution and perform tree-based aggregation of partial
results. These algorithms typically result in very low latency, have a low overhead,
and generally scale to hundreds of thousands of nodes.
6.4 Enabling Technologies and Pre-requisites 159
As discussed in Chap. 5, both the ETSI and oneM2M standards define basic
mechanisms for data search based on metadata. However, these mechanisms only
allow elementary search procedures based on string matching between requests and
the resource metadata. This provides a syntactic search capability with binary
(yes/no) outcomes based on exact matches. Exact matches are highly unlikely in
real-world IoT deployments with heterogeneous devices and Things from different
vendors and providers. As such, effective search mechanisms should allow for
“fuzzy matches,” with partial correspondence between the request and the available
data. Such mechanisms, ideally, would provide a measure of the semantic similarity
between the original request and the retrieved results. To achieve this, Semantic
Web technologies could be applied to the IoT: The IoT data can be enriched with
semantic-based annotations that reference shared domain conceptualizations, and
the search mechanisms can utilize semantic matching techniques to perform the
ranking of potential results. Ruta et al. [15] propose such a framework that utilizes
an enhanced version of CoAP as the underlying protocol for the Federation
Message Bus.
Clouds are deployed in data centers, where network topologies are well defined and
the infrastructure is physically secured with solid walls and cages. Network input
and output between applications deployed in the data center and the outside world
(e.g., Internet) are mediated through security appliances, such as firewalls, which
provide applications with a well-incubated environment under which they can
160 6 Fog Computing
6.5 Summary
In this chapter, we introduced the concept of fog computing and discussed its
relationship to cloud computing. The various IoT requirements driving the need for
fog were covered. We also discussed the prerequisites and enabling technologies for
fog, in terms of virtualization technologies, network mobility technologies,
orchestration, and data management technologies.
5. What are the two problems that all network mobility solutions aim to address?
6. Why can’t traditional data management and analytics techniques be applied to
IoT?
7. What three functions should a Fog Orchestration solution address and solve?
8. What is “data in motion”?
9. Why are semantic search mechanisms important for IoT?
10. Consider the following Fog domain shown in the Figure below. For each Fog
node, the diagram shows the number of virtual CPUs (vCPU) and RAM
available. Also, the communication latency from each node to a remote sensor
(labeled R1 through R4) is captured.
There are 5 applications that need to be placed on the Fog nodes, and each
application has specific demands for CPU, RAM and communication as
depicted in the table below:
Find the optimal placement of the 5 applications on the 3 Fog nodes such as to
minimize the communication latency between each application and the sensor
that it needs to connect to.
11. A Fog domain is using EVPN to support workload mobility. The topology of
the domain is as shown in the figure below. Every BGP speaker requires
approximately 10 milliseconds to process a BGP message, including any
transmission/reception delay. A VM moves from the Melville server farm to the
Granville server farm.
162 6 Fog Computing
a. If N1, N2 and N3 form a BGP route-reflector (RR) cluster (i.e. fully meshed
BGP sessions) and each of PEb, PEg and PEm have a BGP session with
their directly attached RR, how long would it be before all other applica-
tions are capable of communicating with the VM in its new location
assuming it takes 20 millisecond for GARP messages to be received and
processed by the PE connected to the new server?
b. If N1, N2 and N3 are MPLS core routers, rather than route-reflectors, how
does the above convergence time change?
such that Fog nodes are placed roughly 50 meters apart, on street lighting poles.
The car’s embedded application is searching for parking availability within a 1
km radius from the current vehicle’s location. Assume that the Fog domain is
using the Echo algorithm to search for data. If node processing latency and link
propagation latency are 2 milliseconds and 1 millisecond respectively, how
long would it be before the search request has reached all nodes in the Fog
domain?
14. A Fog orchestration system is responsible for the mobility of workloads among
three Fog nodes dispersed in three locations: Coal Harbor, Yaletown and West
End. The choice of a server for a given workload is a function of the CPU load
of that server and the network communication latency from the server to the
client. The orchestrator assigns a score between 0 and 1 to each server based on
its CPU load, with a score of 1 for servers having less than 25 % utilization, a
score of 0.5 for servers with utilization between 25% and 75%, and a score of
0.25 for utilization above 75%. The orchestrator ranks the servers based on
network latency and assigns them a score between 0 and 1 linearly depending
on their rank in the ordered list, with a score of 0 assigned to the server with the
highest latency and a score of 1 assigned to the server with the least latency.
Assume that a user on her smartphone is roaming between the three locations.
The network latency from her phone to the Coal Harbor Fog node is 200
mircoseconds, to the West End Fog node is 300 microseconds and to the
Yaletown Fog node is 250 microseconds. The average CPU utilization for the
servers is 80% for Coal Harbor, 13% for Yaletown and 50% for West End Fog
nodes.
a. If the Fog orchestrator is configured to give equal weight to communication
latency as server CPU load, which server would the orchestrator select?
b. If the communication latency carries twice the weight of the server CPU
load, what would be the server that the orchestrator selects?
15. Explain the difference between the three different levels of virtualization: CPU
instruction set level, hardware abstraction layer (HAL) level, and operating
system level.
16. What distinguishes LISP from other networking solutions that support
mobility?
17. Describe Nielsen’s Law. How does it relate to Moore’s Law? What are the
implications for IoT?
18. How is network connectivity different in the Fog from the Cloud?
19. How does rapid mobility impact communicating IoT applications?
20. When you conduct a search on your favorite Web search engine, is the search
conducted over the Internet in real time? Will this model work for IoT?
164 6 Fog Computing
References
1. http://www.nngroup.com/articles/law-of-bandwidth/
2. M. Yannuzzi et al., Key ingredients in an IoT recipe: fog computing, cloud computing and
more fog computing. IEEE 19th International Workshop on Computer Aided Modeling and
Design of Communication Links and Networks (CAMAD), December 2014
3. F. Bonomi et al, Fog computing and its role in the internet of things. SIGCOMM 2012
4. P. Mell, T. Grance, in The NIST Definition of Cloud Computing. National Institute of
Standards and Technology Special Publication 800-145, September 2011
5. S. Nanda et al, in A Survey on Virtualization Technologies. http://www.ecsl.cs.sunysb.edu/tr/
TR179.pdf
6. Docker, www.docker.com
7. T. Kondo et al, in A Mobility Management System for the Global Live Migration of Virtual
Machine Across Multiple Sites. Computer Software and Applications Conference Workshops
(COMPSACW), 2014 IEEE 38th International, July 2014
8. A. Sajassi et al, in BGP MPLS-Based Ethernet VPN. IETF RFC 7432, February 2015
9. Y. Rekhter et al, in Network-related VM Mobility Issues, draft-ietf-nvo3-vm-mobility-issues.
Work in progress, June 2014
10. D. Farinacci et al, in The Locator/ID Separation Protocol (LISP). IETF RFC 6830, January
2013
11. Y. Hertoghs, M. Binderberg, in End Host Mobility Use Cases for LISP,
draft-hertoghs-lisp-mobility-use-cases. Work in progress, February 2014
12. C. Morales, in A Vision for Fog Software and Application Architecture. Fog Computing Expo,
November 2014
13. M. Uddin et al, in Graph Search for Cloud Network Management. Network Operations and
Management Symposium (NOMS), 2014 IEEE, May 2014
14. E.J.H. Chang, Echo algorithms: depth parallel operations on general graphs. IEEE Trans.
Softw. Eng. SE-8(4) (1982)
15. M. Ruta et al, in Resource Annotation, Dissemination and in the Semantic Web of Things: A
CoAP Based Framework. IEEE International Conference on Green Computing and
Communications and IEEE Internet of Things and IEEE Cyber, Physical and Social
Computing (2013)
Chapter 7
IoT Services Platform: Functions
and Requirements
IoT is expected to connect billions of sensors, devices, and applications over the
Internet. One of the most critical prerequisites for successful, scalable, and effective
IoT solutions is a Services Platform that provides abstraction across the multitude of
diverse devices and data sources in addition to allowing for the management and
control of a range of systems and processes. The operation of this platform requires
a comprehensive and diverse set of requisites to gather relevant data, analyze it, and
create actionable insights.
The Services Platform must surpass vertical solutions by integrating all essential
technologies and required components into a common, open, and multi-application
environment. The functions of the IoT Services Platform include the ability to
deploy, configure, troubleshoot, secure, manage, and monitor IoT devices. They
also include the ability to manage applications in terms of software/firmware
installation, patching, starting/stopping, debugging, and monitoring. The Services
Platform also provides capabilities that simplify application development through a
core set of common application services that include data management, temporary
caching, permanent storage, data normalization, policy-based access control, and
exposure. In addition to these, the Services Platform is expected to offer some
advanced application services, which include support for business rules, complex
event processing, data analytics, and closed loop control. Figure 7.1 shows
examples of key IoT Services Platform functions. A more detailed and structured
list will be provided in Sects. 7.2–7.12.
As can be seen from the list in Fig. 7.1, many of the capabilities of the IoT
Services Platform represent what can be loosely categorized as “management
functions.” These, however, are different from traditional network management.
Traditional network-level management functions were originally defined, in the
early 1980s, by the Open Systems Interconnection—Systems Management
Overview (OSI-SMO) standard as FACPS: fault, configuration, accounting,
IoT Applications
Chapter 7
IoT Services Platform Area of Focus
IoT Network
IoT Gateway
IoT Devices
IoT Network
IoT Devices
Before introducing the main functions of the IoT Services Platform, we will first
revisit the key components of IoT solutions that consist of IoT device elements, IoT
network elements, IoT Services Platform, and IoT Applications as shown in
Fig. 7.3.
• IoT Device Entities: IoT devices include sensing devices, actuators, and
gateways. The main functions of the gateways are (1) collecting and aggregating
information from the devices, (2) on-site filtering and simple correlation of
collected information, (3) transferring correlated data to the network layer, and
(4) taking action on the devices (e.g., shutting power off) based on commands
from higher layers.
• IoT Network Entities: IoT network entities provide services from the under-
lying network to the Services Platform. They include super-gateways, access
routers, switches, and possibly element management servers with specific net-
work management functions.
• IoT Services Platform Entity: The IoT Services Platform is sometimes referred
to as “IoT Platform” or “The IoT Application Services Platform” of any IoT
solution. It is responsible for monitoring and controlling IoT elements in the IoT
168 7 IoT Services Platform: Functions and Requirements
device and network layers. It is also liable for the creation of direct integration
between physical devices (e.g., sensors, actuators, gateways) and
computer-based application systems to improve efficiency, accuracy, and eco-
nomic benefit.
IoT Services Platform receives information from IoT device and network enti-
ties and provides services to the application entities. More importantly, it pro-
vides network-level and often service-level management functions as will be
discussed in this chapter.
• IoT Application Entities: Application entities receive information from the
Services Platform and provide services and business-level functions. These
functions are typically vertical dependent. Examples of application entities
include an IoT-based Automated Parking application and an IoT-based
Hurricane Alert System application.
Without a doubt, the IoT Services Platform constitutes the linchpin of successful
IoT solutions. It is responsible for many of the most challenging and complex tasks
of the solution. The IoT Services Platform includes numerous fundamental func-
tions to ensure proper and secure deployment and comprehensive supervision and
control. In this chapter, we will identify key IoT Services Platform functions by
grouping related requirements together and by utilizing recent IoT standards such as
those devised by oneM2M (the global standards initiative for Machine to Machine
Communications and IoT) and ESTI (European Telecommunications Standards
Institute) standard bodies. More information on these IoT standards was provided in
Chap. 5 (Sect. 5.4.2).
The overall functions of the IoT Services Platform can be categorized into the
following eleven key areas:
1. Platform Manager
2. Discovery and Registration Manager
3. Communication Manager
4. Data Manager
5. Firmware Manager
6. Topology Manager
7. Group Manager
8. Billing and Accounting Manager
9. Subscription and Notification Manager
10. API Manager
11. Element Manager: Configuration management, fault management, performance
management and security management.
Figure 7.4 shows the IoT Services Platform functions. It does not constrain the
multiplicity of the entities nor the relationships among them.
7.2 IoT Platform Manager 169
API Manager
The IoT Platform Manager, also known as IoT Service Platform’s management
entity in some standards, is responsible for managing the IoT Service Platform
internal modules and interfaces. It works with the Communication Manager
(Sect. 7.3) and the Element Manager (Sect. 7.5) to monitor, configure, trou-
bleshoot, and upgrade the Services Platform modules. It is really the “manager of
managers” responsible for providing the overall management of the entire Services
Platform functions.
The Platform Manager is used for the overall control and management of the
common management functions. It allows the system administrator, or an appli-
cation in the application layer, to manage IoT Services Platform components and
interfaces. This includes initiating an action (e.g., discovery) and receiving results
(e.g., discovered elements) within a specific amount of time.
The Platform Manager is expected to have a full user interface, allowing the
system administrator to initiate requests and review reports and providing interfaces
to receive and send information. It must be noted that user and application
authorization (specifying access rights level) and authentication (verifying the
user’s credentials) are top requirements.
The Platform Manager may be a physical system/server or virtual system with
functions distributed among the common management components.
The IoT Platform Manager is responsible for:
• Performance monitoring and fault management of the Services Platform func-
tions. This includes continuous monitoring, troubleshooting, fault identification,
fault correction, and diagnostics. This requires constant collection of logs,
170 7 IoT Services Platform: Functions and Requirements
performance, and fault parameters from the platform functions (e.g., system
logs, alarms).
• Software lifecycle management allowing the IoT Platform Manager to manage
any software packages related to the above Services Platform functions. This
includes upgrading, updating, installing, uninstalling/removing, and down-
loading software packages. Complete configuration backups with rollback
capabilities must be supported (Why? See Problem 24).
• Configuring any of the platform functions when they are first installed. This
includes the configuration of the services offered to application entities.
• Supporting multiple levels of IoT Platform Managers operating in a hierarchical
environment. For instance, supporting two Platform Managers, representing two
separate networks, and a third “Super Platform Manager” with full read and
write access to the first two. Hence, Platform Managers should have the ability
to establish relationships among each other including establishing parent–child
and read–write relationships.
The concept of Super Platform Manager is needed to address high availability
requirements.
7.3.1 Registration
IoT device registration can be defined as the process of delivering the device
information to the management entity (or to another server) in order for IoT
devices to communicate and exchange information. Most IoT devices will be
identified and tracked by their IP addresses. However, as we mentioned in Chap. 2,
7.3 Discovery: Entities, Services, and Location 171
not all IoT devices are IP-enabled. In such case, devices (e.g., basic sensors) may be
tracked by their local addresses (e.g., local identifier) in combination with their
corresponding gateway IP address. Gateways are expected to have unique IP
addresses and are responsible for providing a means to uniquely identify their
associated sensors and actuators.
In order for the IoT registration process to work, the following key capabilities
are necessary:
• IoT devices must have the capability to register to an associated Platform
Manager entity. This procedure may be self-registration (preferred solution)
where a new IoT device identifies itself to the management entity as soon as it
joins the IoT network or identifies itself during the discovery process as will be
discussed in the next section. The following registration requirements must be
addressed in all IoT domains:
– Ability for new sensors and actuators to register themselves with their
associated gateways.
– Ability for new gateways to register themselves with their associated
Platform Manager entities.
– Ability for Platform Managers to register themselves with a Super (or
another) Platform Manager(s) as defined by the network administrator.
• Once the registration is completed,
– The IoT Platform Manager must be able to access the IoT gateway and
retrieve information. In other words, IoT gateways must grant access priv-
ilege to the associated IoT Platform Manager(s). Hence, all resource infor-
mation must be available to the IoT Platform Manager.
– The IoT gateways must be able to access their associated sensors and
actuators and retrieve information. In this case, sensors and actuators’
resource information must available to the associated IoT gateway(s).
– Super Platform Manager(s), if present, must be able to access their corre-
sponding IoT Platform Managers and retrieve information. Hence, all
resource information must be available to the super-management entities
where applicable.
7.3.2 Discovery
1
(37.76724070774898, −122.37890839576721) are the GPS coordinates for a northern California
area.
2
Yang is a tree-structured data modeling language (defined by IETF) used to model configuration
and state data [6].
7.3 Discovery: Entities, Services, and Location 173
• Ability to provide a global view of the state of the entire underlying platform
network. This is needed to address the next requirement.
• Ability to determine the optimal time to establish the communication connection
to deliver information between at least two platform entities. Such decision is
based on the source delivery request as well as traffic/congestion control opti-
mization techniques within the platform. Data may be stored/buffered for future
delivery time per the provisioned Communication Manager policies.
• Ability to deliver required information within the delivery request time.
• Ability to publish its own polices to external systems.
• Ability to provide information to external systems to drive policies describing
details of the usage of network resources (i.e., 5 % of bandwidth on link X at
time T was utilized for service Y).
• Ability to communicate, select paths for a given amount of time, and manage
buffers based on Communication Manager polices.
without a concrete use case but typically include running code to extract specific
parameters and writing the extracted data to a database.
• Data Storing: The Data storage and management function supports taking data
from various sources and storing it based on pre-defined policy. Raw data,
aggregated data, and parsed data may be stored with different polices (e.g., store
raw data for 6 months, store parsed data for 2 years). Associated contextual
information is also stored with the data. Examples of contextual information
include the following: data type (e.g., temperature), data format (e.g., −100 to
+100 °C), data source (e.g., sensor ID and associated gateway ID), retrieval time
and date (e.g., 03:45:00 PM EST on 12/12/2016), and retrieval location (e.g.,
lg = −122.37890839576721; lt = 37.76724070774898).
• Access to data based on defined access control policy: The data storage and
management function needs to have the capability of providing local or remote
data access based on a well-defined access control policy. The policy, which is
typically defined by the network administrator, needs to capture the types of
functions a specific user or application can perform on the data (read-only,
write-only, read/write). The policy may include temporal access restrictions and
may be role-based (e.g., administrator vs. user).
Management
IoT Gateway
Client
IoT Sensor
3
TR-069 uses a bidirectional SOAP/HTTP-based protocol which was originally used for remote
management of end-user devices. It was published by the broadband forum and labeled CPE WAN
Management Protocol (CWMP).
4
LWM2M (lightweight machine-to-machine) protocol is defined by the Open Mobile Alliance for
M2M/IoT as an application layer communication protocol between a LWM2M server and a
LWM2M client (located in a LWM2M Device).
7.6 Element Manager (Managing IoT Devices and Network Elements) 177
• Ability for the management server to create a new element to be managed (e.g.,
gateway, sensor), delete an existing element, update any parameters of any
existing elements, update the firmware of any element, and to retrieve infor-
mation of any existing elements.
LW M2M
Server
LW M2M
Client
IoT Sensor
178 7 IoT Services Platform: Functions and Requirements
IoT service providers need to be able to configure a new service (turn-on a service
for a customer) and then identify any problem or potential problem and have the
tools to fix it quickly. No service provider will survive in the market if they do not
have the capabilities and processes to discover problems promptly (preferably
before they occur in most cases) and take quick action to prevent service inter-
ruption or service degradation that could result in service-level agreement (SLA)
violation.
Fault management is among the most challenging and important management
functions of IoT networks. This is due to the fact that large-scale deployment of
inexpensive sensors (i.e., with very limited processing capability, storage capacity,
and limited energy) means that failures from various defects will be common. It is
also due to the fact that managing IoT devices in remote locations and often harsh
environments will be demanding, especially when dealing with various IoT
topologies and verticals.
Fault management typically consists of three main functions: fault detection,
fault isolation (or diagnostic), and fault correction as shown in Fig. 7.7. In this
section, we will first describe these three functions. Then, we will introduce the
concepts of diagnostic signature and fault tolerance. Finally, we will list the overall
fault management requirements for IoT devices and services.
• Fault Detection is the process of identifying error (or potential error) of an IoT
element typically using collected statistics. The collected data may be
time-based (e.g., fault-related data collected from the IoT element by the fault
manager function every t seconds) or event-based (e.g., IoT element notifies the
7.6 Element Manager (Managing IoT Devices and Network Elements) 179
fault manager only if pre-defined fault-related conditions are met). When a fault
or event occurs in the event-based case, an IoT element will send an alarm or
notification to the fault manger (and often notify the network administrator)
immediately. An alarm is a persistent indication of a fault that clears only when
the triggering condition has been resolved.
An example of fault-related data is the Simple Network Management Protocol
(SNMP) Entity Sensor Management Information Base (MIB) as described by IETF
RFC 3433. The Entity Sensor MIB provides generalized access to information
related to sensors that are often found in network equipment. The complete list of
the MIB information is shown in Table 7.2. One of the key variables of the Entity
Sensor MIB is “Entity Sensor Status” with three defined possible values:
– Entity Sensor Status = 1 indicates that the sensor data value can be obtained
(normal operation);
– Entity Sensor Status = 2 indicates that the sensor data value is unavailable
(operational but no data was collected);
– Entity Sensor Status = 3 indicates that the sensor is broken and cannot collect
the sensor data value (failure). Once the failure status is received by the network
administrator/operator, he/she needs to investigate the issue further to determine
whether the failure is due to disconnected wire, out-of-range, violently fluctu-
ating readings, or something else.
Fault detection will be triggered if the value of “Entity Sensor Status” variable is
3 (Table 7.2—Raw 5).
• Fault Diagnostic and Isolation (also referred to as fault root cause analysis) is
the process of hierarchal filtering and correlation of fault messages, typically
from hundreds of IoT elements or systems, to pinpoint the faulty element to a
stage where corrective action can be taken. Such process is often based on
artificial intelligence, pattern recognition combined with models of abnormal
behavior, and/or intelligent rule-based systems.
180 7 IoT Services Platform: Functions and Requirements
of administrators (i.e., send e-mail or SMS text to a mobile phone) for inter-
vention when needed, or to launch a program or script to take corrective action.
Critical IoT systems should be designed around the concept of fault tolerance. In
principle, they must be able to continue working at least to some acceptable level in
the presence of faults. Network element redundancy (e.g., multiple sensors per-
forming identical tasks, dual modular sensing engines in the same sensor, and
failover power supply) is a common fault tolerance example that is designed to
prevent failures due to hardware components.
It should be noted that fault tolerance is not just a property of individual IoT
elements; it may also impact IoT communication protocols as discussed in Chap. 5.
For example, the Transmission Control Protocol (Chap. 2) was designed as a
reliable two-way communication protocol, even in the presence of failed or over-
loaded communications links. It achieves this by requiring the endpoints of the
communication to expect errors such as packet loss, packet reordering, packet
duplication, and corruption.
The element diagnostics and fault management function in IoT allows network
engineers to troubleshoot sensors and actuators (typically over their gateways) or
any other IoT entity remotely. Service troubleshooting (i.e., when devices are
working correctly but the service-level parameters are not being meet) is also
addressed through this function.
The diagnostics and fault management function supports the following areas:
• Ability to connect and uniquely identify any device in the network including
sensors, actuators, and gateways. Sensors and actuators are often identified by
their corresponding gateways.
• Once the connection is established, fault management function requires the
ability to retrieve device information that identifies a device, its model, and
manufacturer, e.g., device universal ID, device product ID, device serial num-
ber, and SKU.
• Ability to retrieve device information for the software and firmware installed on
the device, e.g., embedded software version.
• Ability to retrieve information related to a battery embedded within the device.
• Ability to retrieve information related to memory in use by a device.
• Ability to reconfigure/change (Write option) device specific parameters to
diagnose or fix an identified problem.
• Ability to compare results from main system and backup system (if backup
system is deployed and operational) and provide error messages for different
results.
• Ability to provide the current list of problems occurring on the network to the
fault manager/network management systems/system administrator. Such list is
cleared only when the triggering condition has been resolved or cleared by the
network administrator.
• Ability to retrieve the event logs from any IoT device.
182 7 IoT Services Platform: Functions and Requirements
5
Some researchers use the term QoS to refer to both QoS and GoS as defined above.
7.6 Element Manager (Managing IoT Devices and Network Elements) 183
capacity), end-to-end delay and jitter, packet lost ratios, packet error rates, and
any other parameters that impact services carried on the network. These will
continue to be important for IoT-based networks.
• Where to measure? Theoretically, performance should be measured through the
network at all time. Practically, performance should be measured at least
between the network end points where the service is delivered, e.g., sensor to
gateway, gateway to platform, and platform to application.
• How to measure the above parameters and then construct QoS and GoS mea-
sures to perform the actual monitoring?
Similar to fault management, performance management supports the following
areas for IoT network elements and devices:
• Ability to connect and uniquely identify any device (e.g. by retrieving device
serial number) in the network including sensors, actuators, and gateways.
Sensors and actuators are often identified by their corresponding gateways.
• Ability to retrieve device information for the software and firmware installed on
the device, e.g., embedded software version.
• Ability to retrieve information to measure the performance of a device or a
module within the device (e.g., battery).
• Ability to measure any performance-related parameter including, but not limited
to, element utilization, delay, jitter, packet loss, packet error rates, and amount
of memory in use by a device.
• Ability to allow a system administrator to monitor events from multiple
systems/locations.
• Ability to notify administrators of critical and/or other performance-related
activities (based on pre-defined rule-based list) via e-mails, text message, and
calling mobile phones.
In the past, firmware management was not even an issue as older devices rarely
required operating system updates. In fact, firmware is not part of the traditional
FCAPS capabilities that we described in Sect. 7.1.
186 7 IoT Services Platform: Functions and Requirements
Firmware refers to the device’s operating system that controls and operates the
device. Firmware is a program written into read-only memory (ROM), rather than
simply being loaded into normal device storage, where it may be easily erased in
the event of a crash, and initially added at the time of manufacturing. It is called
firmware rather than software to highlight that it is very closely tied to the particular
hardware components of a device.
Nowadays, firmware updates are provided by vendors on a regular basis, often as
a way to fix bugs or introduce new functionality (e.g., Apple’s iOS, Cisco’s IOS,
Android).
Key firmware requirements for IoT solutions include the following:
• Ability for IoT device to store and maintain multiple firmware images and to
manage individual firmware images.
• Ability for IoT management solution to provide a user-friendly device firmware
management site that provides lifecycle management for firmware associated
with a device. This includes:
– Downloadable versions of latest firmware images.
– Step-by-step instructions to download/update images on various supported
devices that guarantee full migration of existing settings and applications on
an IoT device.
– Step-by-step instructions to remove a firmware image and roll back into an
older image if needed with full device backup of existing applications and
settings.
– Support for downloading and updating within the same action.
– Download, update, and removal of firmware process should be done within a
reasonable amount of time (typically less than 10 mins) with clear progress
bar visible to the user.
– Q&A and troubleshooting support.
• Ability for IoT management solution to support both wire-line and mobile (the
so-called FOTA (firmware over-the-air) firmware upgrade. FOTA is a mobile
software management (MSM) technology in which the operating firmware of a
mobile device is wirelessly upgraded and updated by its manufacturer.
FOTA-capable devices download upgrades directly from the service provider.
IoT network topology refers to the arrangement of the various elements (sensors,
gateways, switches, links between gateways and switches, etc.). Topology may be
physical or logical and is often presented explicitly in a structured graph. Physical
topology is the placement of the actual IoT elements on a graph (e.g., map) as they
7.8 Topology Manager 187
are connected with physical information (e.g., locations). Logical topology, on the
other hand, displays virtual information such as network virtualization data and data
flow on the network.
Key requirements for topology management include the following:
• Ability to display IoT physical network that includes all IoT devices (e.g.,
sensors, actuators) and IoT network elements (gateways, switches, routers). User
should have the ability to filter which devices to display.
• Ability to display IoT virtual network (often on top of a physical view).
• Ability to display specific element management parameters (e.g., utilization,
devices with faults) based on user selection criteria.
• Ability to filter/configure the topology.
• Ability to retrieve information related to any IoT element.
• Ability to retrieve information related to an IoT protocol.
Unlike traditional networks, a typical IoT network often contains a large number of
IoT devices (e.g., sensors). Hence, it is important to allow network administrators to
group IoT elements of the same characteristics into groups instead of managing
each element separately.
Group management is responsible for handling group-related requests. The
request is sent to manage a group and its membership as well as for any bulk
operations, including broadcasting/multicasting, that are supported by the
group. Group management security is handled by the element management system.
When facilitating access control using a group, only members with the same
access control policy for a resource are included in the same group. Also, only
application entities, which have a common role with regard to access control policy,
are included in the same group. This is used as a representation of the role when
facilitating role-based access control.
Group management key requirements include the following:
• Ability to create, retrieve, update, or delete groups. Groups are created by
selecting IoT elements of similar characteristics. An IoT element may belong to
multiple groups. New members may be added and/or deleted at any time. When
new members are added to a group, the group manager should validate whether
the member complies with the purpose of the group. Requests to create, retrieve,
update, or delete are assumed to be initiated by an application.
• Ability to create super-group (group of a group). In this case, operations (e.g.,
forwarding) are done recursively.
188 7 IoT Services Platform: Functions and Requirements
• Ability to initiate and execute a request for the entire members of a group. The
request may be a simple notification or read operation (i.e., retrieve information
form sensors), or write operation (changing a common parameter).
• Ability to support subscriptions to individual groups.
• Ability to notify group members when they are added to or deleted from a
group, or when the group is updated.
Billing and accounting management are used to calculate and report the charges
based on subscription and/or usage of a service. It supports different charging
models including online real-time credit control by interacting with the charging
system in the underlying IoT network. Billing polices include the ability to trigger a
charge based on specified events and to charge even when the billing system is
offline. The system may record information for other purposes such as for event
logging. The main charging models include the following:
• Subscription-based charging (flat rate): Typically per service layer subscription.
• Event-based charging (per event or task): Charging based on service layer
chargeable events. For example, an operation on data (create, update, and
retrieve) can be an event.
• Time-based charging: Chargeable events are configurable to initiate information
recording. More than one chargeable event can be simultaneously configured
and triggered for information recording.
• Usage-based charging: Charge based on bandwidth (or other parameters) con-
sumption. Users are allowed to change usage level within a task (e.g., high
bandwidth for first hour and then switch to lower bandwidth).
Key billing and accounting requirements include the following:
• Ability to bill based on subscription (flat rate), event (per event), time (charge
per hour), or usage.
• Ability to allow an application (or network administrator) to develop
billing-related policies. Further, the billing and accounting module has the
ability to start and end the actual billing by applying charging-related policies,
configurations, and communicating with the charging system in the underlying
network.
• Ability to start and end charges based on the defined charge policies. Such
charges must be recorded in a billing system or database.
• Ability to handle offline billing-related operations. The offline billing function
generates service charging records based on billing polices and recorded
information. A service charging record is a formatted collection of information
7.10 Billing and Accounting 189
about a chargeable event (e.g., amount of data transferred) for use in billing and
accounting.
6
Alternatively, an authorization, authentication, and accounting (AAA) server may be used for
device authorization.
190 7 IoT Services Platform: Functions and Requirements
The main function of the API Manager is to manage communication with IoT
network and devices, for obtaining network service functions in a common way. It
is intended to shield other platform modules from developing their own technology
and mechanisms supported by the underlying networks.
Key functions of the API Manager include the following:
• Ability to provide adaptation for different sets of network service functions
supported by various underlying networks.
• Ability to maintain the necessary connections between the platform entities and
the underlying network.
• Ability for the API Manager to provide information to the Communication
Manager related to the IoT network so the Communication Manager can include
that information to determine proper communication handling.
7.13 Summary
Without a doubt, the IoT Services Platform constitutes the cornerstone of successful
IoT solutions. It is responsible for many of the most challenging and complex tasks
of the solution. The Services Platform automates the ability to deploy, configure,
troubleshoot, secure, manage, and monitor IoT entities ranging from sensors to
applications in terms of firmware installation, patching, debugging, and monitoring,
just to name a few functions. The Service Platform also provides the ability for data
management and analytics, temporary caching, permanent storage, data normal-
ization, policy-based access control, and exposure.
Given the complexity of the Services Platform in IoT, this chapter grouped the
core capabilities into eleven main areas: Platform Manager, Discovery and
Registration Manager, Communication (Delivery Handling) Manager, Data
Manager, Firmware Manager, Topology Manager, Group Manager, Billing and
Accounting Manager, Subscription and Notification Manager, API Manager, and
Element Manager addressing configuration management, fault management, per-
formance management, and security management across all IoT entities.
7.14 Problems and Exercises 191
14. What are the most basic two management functions to provide a when a new
service is introduced?
15. Provide an example of Service-Level Diagnostics where all devices are
working correctly but the service level parameters are not being meet.
16. Why is fault management considered by many experts to be one of the most
challenging and important management functions of IoT-based networks?
17. What are the three main functions of Fault management? Provide detailed
description of each term.
18. What is fault tolerance in IoT networks? Give three examples
19. Fault tolerance is not just a property of individual IoT elements; it may also
impact the IoT communication protocol. For example, the Transmission
Control Protocol (TCP) was designed as a reliable two-way communication
protocol, even in the presence of failed or overloaded communications links.
How is this achieved in TCP?
20. There are special software and instrumentation packages designed to detect
failures. A good example is a fault masking system. How does Fault Masking
system detect failure?
21. What is Diagnostic Signature? Where is it used?
22. In priority order, what are the top three IoT management functions that a
service provider needs to provide to provide very basic services? Justify your
answer.
23. What are the main differences between managing IoT network and a traditional
network?
24. Why is IoT management considered to be challenging and complex?
25. Section 7.0 indicated the need for complete configuration backups with
roll-back capabilities as a key requirement for the IoT Platform Manager. What
is configuration roll-back? Why is it needed? Provide an example?
26. What is the definition of Sensitivity and Dynamic Range? What are the typical
units of Sensitivity and Dynamic Range?
27. What is Hysteresis? What is a typical unit of Hysteresis?
28. What is a Firmware? What does it do? Why is it called Firmware?
29. Why Firmware Images are loaded into ROM and not the device storage?
30. How come Firmware Management was not part of the traditional FCAPS?
31. Data may be retrieved from various IoT sources including IoT devices and
network elements (e.g. sensors, gateways, switches), IoT subscribers and IoT
7.14 Problems and Exercises 193
References
15. G. Huston, Measuring IP network performance. Internet Protocol J, 6(1), Online: http://www.
cisco.com/web/about/ac123/ac147/archived_issues/ipj_6-1/measuring_ip.html
16. H. Hui-Ping, X. Shi-De, M. Xiang-Yin, Applying SNMP technology to manager sensors in
IoT. Open Cybern. Syst. J. pp. 1019–1024. Online: http://benthamopen.com/contents/pdf/
TOCSJ/TOCSJ-9-1019.pdf
17. L. Adaro, Monitoring 101 eBook, Nov 2015. Online: https://thwack.solarwinds.com/docs/
DOC-187523
18. Stanford Sensor Course. Online: http://web.stanford.edu/class/me220/data/lectures/lect02/
lect_2.html
19. B. Hedstrom, A. Watwe, S. Sakthidharan, Protocol Efficiencies of NETCONF versus SNMP
for Configuration Management Functions, University of Colorado, May 2011. Online: http://
morse.colorado.edu/*tlen5710/11s/11NETCONFvsSNMP.pdf
20. OMA LightweightM2M v.10, Open Mobile Alliance. Online: http://technical.
openmobilealliance.org/Technical/technical-information/release-program/current-releases/
oma-lightweightm2m-v1-0
21. S. Duquet, Smart Sensors, Enabling Detection and Ranging for IoT and Beyond, Ladder
Technology Magazine Elektronik Praxis, April 2015. Online: http://leddartech.com/smart-
sensors
22. Sensors Applications for Smarter World, Libelium. Online: http://www.libelium.com/top_50_
iot_sensor_applications_ranking/
23. P. Seneviratne, Internet Connected Smart Water Sensors, September 2015. Online: https://
www.packtpub.com/books/content/internet-connected-smart-water-meter
24. P. Jain, Pressure Sensors, Prototype PCB from $10. Online: http://www.engineersgarage.com/
articles/t
25. D. Merrill, J. Kalanithi, P. Maes, Siftables: Towards Sensor Network User Interfaces. Online:
http://alumni.media.mit.edu/*dmerrill/publications/dmerrill_siftables.pdf
26. Whatis.com, Online: http://whatis.techtarget.com/definition/firmware
27. Mobileburn, Online: http://www.mobileburn.com/definition.jsp?term=firmware
Chapter 8
Internet of Things Security and Privacy
8.1 Introduction
The Internet of Things (IoT) promises to make our lives more convenient by turning
each physical object in our surrounding environment into a smart object that can
sense the environment, communicate with the remaining smart objects, perform
reasoning, and respond properly to changes in the surrounding environment.
However, the conveniences that the IoT brings are also associated with new security
risks and privacy issues that must be addressed properly. Ignoring these security
and privacy issues will have serious effects on the different aspects of our lives
including the homes we live in, the cars we ride to work, and even the effects will
reach our own bodies.
If your home does not already have a smart meter, it will soon have multiple of
those meters that are dedicated to monitor and control the power consumption, the
heating, and the lighting of your house. This is not to mention the smart gadgets that
will be found all over your house such as the smart camera that notifies your
smartphone during business hours when movement is detected, the smart door that
opens remotely, and the smart fridge that notifies you when you are short of milk.
Imagine now the level of control that an attacker can gain by hacking those smart
meters and gadgets if the security of those devices was overlooked. In fact, the
damage caused by cyber-attacks in the IoT era will have a direct impact on all the
physical objects that you use in your daily life. The same applies to your smart car
as the number of integrated sensors continues to grow rapidly and as the wireless
control capabilities increase significantly over time, giving an attacker who hacks
the car the ability to control the windshield wipers, the radio, the door lock, and
even the brakes and the steering wheel of your car. Our bodies, also, will not be safe
from cyber-attacks. In fact, researchers have shown that an attacker can control
remotely the implantable and wearable health devices (e.g., insulin pumps and heart
pacemakers) by hacking the communication link that connects them to the control
and monitoring system. This gives the attacker, for example, the ability to tune the
injected insulin dose causing serious health problems that may even cause death to
patients wearing those smart health devices. In fact, such concerns have made
doctors disable the wireless capability of the heart pacemaker of Dick Cheney, the
former US vice president, in order to protect him from such malicious attacks
[50, 51].
The security risks are also extremely serious when IoT devices are used in
business enterprises. If an attacker hacks any of those smart objects that are used in
a big enterprise, then the sensing capabilities that those smart objects have can be
used by the attacker to spy on the enterprise. Such cyber-attacks can also be used to
steal sensitive information such as the company earnings report and credit card
information. In fact, such stealing attacks are very common in big enterprises such
as the largest financial hacking case in the US history, which took place in 2013,
where a group of five hackers stole $160 million credit cards and over hundreds of
millions in criminal loot.
Maintaining users’ privacy in IoT is also crucial as there is an enormous amount
of information that an outsider can learn about people’s life by eavesdropping on
the sensed data that their smart house appliances and wearable devices report. In
fact, people will be living in a “Big Brother” world where smart things record our
daily activities anytime and everywhere. The advances in the fields of facial,
speech, and human activity recognition amplify the amount of information that the
sensed data can reveal if it falls in the wrong hands. Even if your IoT objects are
merely reporting metadata, you would be surprised by the amount of information
that an outsider can learn about your personal life when aggregating the metadata
collected from multiple hacked objects that surround you over time. It is thus
essential to find solutions to preserve people’s privacy in the IoT era.
The objective of this chapter is to shed the light on some of the security and
privacy issues that the IoT paradigm is exposed to. We also survey the techniques
that were proposed to address these issues. Some of the discussed techniques
prevent security breaches from taking place while others try to detect malicious
behavior and trigger an appropriate mitigating countermeasure. The rest of the
chapter is organized as follows. Section 8.2 identifies the new security challenges
that are encountered in the IoT paradigm. Section 8.3 identifies the IoT security
requirements. Section 8.4 briefly describes the three domains in the IoT architec-
ture. Sections 8.5, 8.6, and 8.7 survey the security attacks and countermeasures at
the cloud domain, the fog domain, and the sensing domain, respectively. Finally,
Sect. 8.8 summarizes the chapter and provides directions for future work related to
the area of IoT security.
IoT has unique characteristics and constraints when it comes to designing efficient
defensive mechanisms against cyber-security threats that can be summarized by the
following:
8.2 IoT Security Challenges 197
developing security protocols especially with the fact that the traditional and
mature cryptography techniques are known to be computationally expensive.
(g) Remote Locations: In many IoT verticals (e.g., smart grid, railways, road-
sides), IoT devices, typically sensors, will be installed in unmanned locations
that are difficult to reach. Attackers can interfere with these devices without
being seen. Cyber and physical security monitoring systems must be installed
in safeguarded location, operate in extreme environmental conditions, fit in
small spaces, and operate remotely for routine updates and maintenance
avoiding delayed and expensive visits by network technicians.
(h) Mobility: Smart objects are expected to change their location often in the IoT
paradigm. This adds extra difficulties when developing efficient defensive
mechanisms in such dynamic environments.
(i) Delay-Sensitive Service: The majority of IoT applications are expected to be
delay-sensitive and thus one should protect the different IoT components from
any attack that may degrade their service time or may cause a service
disruption.
We summarize in this section the security requirements for IoT. These requirements
include the following:
• Confidentiality: It ensures that the exchanged messages can be understood only
by the intended entities.
• Integrity: It ensures that the exchanged messages were not altered/tampered
with by a third party.
• Authentication: It ensures that the entities involved in any operation are indeed
who they claim to be. A masquerade attack or an impersonation attack usually
targets this requirement where an entity claims to be another identity.
• Availability: It ensures that the service is not interrupted. Denial-of-service
attacks target this requirement as they cause service disruption.
• Authorization: It ensures that entities have the required control permissions to
perform the operation they request to perform.
• Freshness: It ensures that the data is fresh. Replay attacks target this require-
ment where an old message is replayed in order to return an entity into an old
state.
• Non-repudiation: It ensures that an entity cannot deny an action that it has
performed.
• Forward Secrecy: It ensures that when an object leaves the network, it will not
understand the communications that are exchanged after its departure.
• Backward Secrecy: It ensures that any new object that joins the network will not
be able to understand the communications that were exchanged prior to joining
the network.
8.4 IoT Three-Domain Architecture 199
Before introducing IoT security issues, we briefly describe in this section the
three-domain architecture that we consider in our security analysis.
As illustrated in Figs. 8.1 and 8.2, the architecture is made up of the following
three domains:
(a) IoT Sensing Domain: This domain is made up of all the smart objects that
have the capability to sense the surrounding environment and report the sensed
data to one of the devices in the fog domain. The smart objects in the sensing
domain are expected to change their location over time.
IoT Applications
IoT Cloud Domain
Server
Server Server
Cloud
Domain
Fog
Domain
IoT IoT IoT
Gateway Gateway Gateway
Sensing
Domain
(b) Fog Domain: This domain consists of a set of fog devices that are located in
areas that are highly populated by many smart objects. Each fog device is
allocated a set of smart objects where the allocated objects report their sensed
data to the fog device. The fog device performs operations on the collected
data including aggregation, preprocessing, and storage. Fog devices are also
connected with each other in order to manage the communication among the
smart objects and in order to coordinate which fog device will be responsible
for handling which object as objects change their location over time. Each fog
device is also connected to one or multiple servers in the cloud domain.
(c) Cloud Domain: This domain is composed of a large number of servers that
host the applications that are responsible for performing the
heavy-computational processing operations on the data reported from the fog
devices.1
As mentioned earlier, the cloud domain holds the IoT applications that are per-
forming different operations on the data collected by the IoT objects. Each IoT
application is dedicated one or multiple virtual machines (VMs) where each VM is
assigned to one of the servers in the cloud data center and gets allocated certain
amount of CPU and memory resources in order to perform certain computing tasks.
The cloud data center is made up of thousands of servers where each server has
certain CPU, memory, and storage capacities and thus each server has a limit on the
number of VMs that it can accommodate. The servers in the cloud data center are
virtualized which allows multiple VMs to be assigned to the same server as long as
the server has enough resource capacity to support the resource requirements of
each hosted VM. Figure 8.3 shows an illustration of how multiple VMs can be
assigned to the same server thanks to virtualization (more details on virtualization
were discussed in Chap. 6). Each IoT application is hosted on a VM that has its
own operating system (OS). The hypervisor (sometimes also called the virtual
machine manager) monitors those running VMs and manages how these VMs share
the server’s hardware. The hypervisor also provides the logical separation among
the VMs and also separates each VM from the underlying hardware. The hypervisor
has also a migration module that manages how to move a VM that is currently
1
Light-computational applications may also reside in the Fog Domain.
8.5 Cloud Domain Attacks and Countermeasures 201
Fig. 8.3 Illustration of how multiple IoT applications can be hosted on the same server thanks to
virtualization
hosted on the server to another server. The migration module also manages the
reception of a VM that is moved from other servers.
Cloud computing is considered a high-risk environment for many businesses and
consumers as they feel its perimeter cannot be defined nor controlled. In addition,
many government agencies must comply with regulatory statutes, such as the
Health Insurance Portability and Accountability Act (HIPAA), the Sarbanes–Oxley
Act of 2002 (SOX), and the Federal Information Security Management Act
(FISMA). The IoT applications running in the cloud domain are susceptible to
numerous security attacks. We summarize next the most popular ones:
(a) Hidden-Channel Attacks: Although there is a logical separation among the
VMs running on the same server, there are still some hardware components
that are shared among those VMs such as the cache. This opens opportunities
for data leakage across the VMs that reside on the same server. Three steps are
followed by the attacker in order to leak information from a target VM. These
three steps are explained next:
• Step1: Mapping Target VM: The first step toward launching an attack
against a VM in a cloud data center is to locate where the target VM
resides. A cloud data center is typically divided into multiple management
units called clusters, where each cluster is located in a certain geographical
location and is made up of thousands of servers. Each cluster is divided
into multiple zones where each zone consists of a large number of servers.
202 8 Internet of Things Security and Privacy
attacker can now, for example, learn what lines of cache (data or
instruction) the target VM has accessed recently. This can be done as
follows. When the shared cache is assigned to the malicious VM that is
under the control of the attacker, the attacker fills the whole shared cache
by dummy data. The malicious VM then yields the shared cache to the
target VM which performs some data access operations. The malicious VM
sends an interrupt after a short time from yielding the cache to the target
VM asking to assess the cache so that the target VM yields the cache for
the malicious VM. Now the malicious VM probes the different lines of the
cache asking to fetch the dummy data that were previously filled in the
cache. By observing the time it takes to access each chunk of the dummy
data, the malicious VM can tell which chunks of the dummy data were
fetched from the cache and which chunks were fetched from memory as
they were replaced by data that was accessed by the target VM. This gives
information to the malicious VM about what addresses the target VM has
accessed recently. Knowing what addresses the target VM accesses over
time can help the malicious VM recover parts of the security keys that the
target VM is using.
Different countermeasures can be taken to prevent hidden-channel attacks
from taking place. The first two steps needed to launch this attack (map-
ping the target VM and placing a malicious VM on the same server as the
target VM) can be prevented by not allowing the VMs hosted in the cloud
data center to send probing packets such as traceroute packets. Preventing
data from being leaked across VMs that are hosted on the same server can
be achieved by one of the following techniques:
• Hard Isolation: The basic idea behind this preventive technique is to
maintain high levels of isolation among the VMs. One way to do this is to
separate the cache dedicated for each VM through hardware or software.
Another way to achieve hard isolation is by assigning only one VM to each
server. Although this completely prevents data leakages across VMs, it is
not a practical solution as it leaves the servers within the cloud data center
underutilized. A better way to achieve hard isolation is by letting each
cloud client specify a list of trusted cloud users called the white list. The
cloud client is fine with sharing the server with only the VMs belonging to
the white list users. New scheduling algorithms are needed in that case in
order to decide on what server each VM should be placed such that only
VMs belonging to the white list share the same server. Security constraints
of each VM that are specified by the white and black lists are met. A key
limitation of this technique is that each VM must have a list of identified
untrusted VMs.
• Cache Flushing: This technique flushes the shared cache every time the
allocation of the cache is switched from a VM to another. The downside of
this countermeasure is that the VMs running on the server will experience
frequent performance degradation as the shared cache will be emptied
204 8 Internet of Things Security and Privacy
every time a switch from a VM to another occurs, which increases the time
needed to access and fetch data due to higher cache msises.
• Noisy Data Access Time: This technique adds random noise to the amount
of time needed to fetch data, which makes it hard to tell whether or not the
data was fetched from the cache or from the memory. By doing this, it
becomes harder for a malicious VM to identify what segments of the cache
were populated by another VM that shares the same server. Of course this
has a price as the fetched data gets delayed a little bit due to the noise
(variable time delay) that is added to the time needed to fetch the data.
• Limiting Cache Switching Rate: A mitigation technique to limit the
amount of data that can be leaked across VMs can be achieved by limiting
how often the cache is switched from a VM to another. The idea here is
that if the cache is not switched from a VM to another too soon, then the
VM that possesses the cache will modify the content of the where multiple
lines of cache will be replaced multiple times. This makes it hard for
another VM to attain fine-grained knowledge of what data the previous
VM has accessed when probing the cache.
(b) VM Migration Attacks: The virtualization technology supports live VM migra-
tion, which allows moving a VM transparently from a server to another [30].
The term live refers here to the fact that the application running on the VM is
disrupted for a very short duration due to this migration where the disruption is as
low as hundreds of milliseconds. Before delving into the security issues that VM
migration brings, we explain briefly the mechanism for performing VM migration
and the scenarios where VM migration is usually performed.
The mechanism of moving a VM from a source server to a destination server is
done by copying the VM’s memory content. The VM’s hard disk content does not
need to be copied as it is usually stored on a Network-Attached Storage
(NAS) device and can be accessed from any location within the cloud cluster. If the
destination server where the VM will be moved to lies on the same local network as
the source server, then the VM keeps the same IP address even after migration in
order to avoid the need for communication redirection. Maintaining the same IP
address even after moving to another server is done after copying the memory
content of the VM by sending a gratuitous ARP reply packet that informs the
routing devices within the cloud about the VM’s new physical address, so that any
packet destined to the VM’s IP address gets routed to the VM’s new location on the
destination server. Each server has a dedicated module in the hypervisor called the
VM migration module that is responsible for sending the VM content for the source
server or receiving the VM’s memory content for the destination server.
VM migration is very useful in multiple scenarios. Consider, for example, the case
when a server that is hosting some VMs needs to be taken offline for maintenance or
for patch installation. VM migration can be used in this case to move all the VMs
currently running on the server into other servers so that the server can be taken down
8.5 Cloud Domain Attacks and Countermeasures 205
for maintenance without terminating the running VMs that are hosted on that server.
VM migration is also a very useful tool for managing the servers in the cloud data
center where it can be used to balance the workload among the servers, or to con-
solidate the scheduled VMs on a smaller number of powered servers so that a larger
number of servers can be powered down to save energy. However, the conveniences
that VM migration brings raise new security threats. The attacks that exploit VM
migration can be divided into two subcategories based on the target plane:
• Control Plane Attacks: These attacks target the module that is responsible for
handling the migration process on a server which is called the migration module
that is found in the hypervisor. By exploiting a bug in the migration module
software, the attacker can hack the server and take full control over the
migration module. This gives the attacker the ability to launch malicious
activities including the following:
• Migration Flooding: This attack is illustrated in Fig. 8.4 where the attacker
moves all the VMs that are hosted on the hacked server to a victim server that
does not have enough resource capacity to host all the moved VMs. This
causes a denial of service [49] for the applications running in the VMs of the
victim server as there will not be enough resources to satisfy the demands of all
the hosted VMs leading into VM performance degradation and VM crashes.
• False Resource Advertising: The hacked server claims that it has a large
resource slack (a large amount of free resources). This attracts other servers
to off-load some of their VMs to the hacked server so that the cloud
workload gets distributed over the cloud servers. After moving VMs from
other servers to the hacked server, the attacker can exploit other vulnera-
bilities to break into the offloaded VMs as now these VMs are placed on a
server that is under the control of the attacker.
• Data Plane Attacks: These constitute the second type of VM migration attacks
and those attacks target the network links over which the VM is moved from a
server to another. Examples of data plane attacks include:
• Sniffing Attack: Sniffing attack is where an attacker sniffs the packets that
are exchanged between the source and destination and reads the migrated
memory pages.
• Man-In-The-Middle Attack: The attacker fabricates a gratuitous ARP
Reply packet similar to the one that is usually sent when a VM moves from a
server to another. This fabricated ARP packet informs the routing devices
that the physical address where the victim VM resides was changed to
become the physical address of the attacker’s malicious VM. Now the
incoming packets that are destined to the victim get routed to the new
physical address where the attacker resides. The attacker can then passively
monitor the received packets while continuing to forward them to the actual
physical address where the victim VM resides so that the victim does not
detect that any malicious activity is going on. The attacker can also modify
the content of the received packets if the integrity of the packets is not
protected by any security mechanism. An illustration of the
man-In-the-middle attack is shown in Fig. 8.5.
Having explained the VM migration attacks, we now discuss the possible
countermeasures. Unfortunately, little attention was given to secure VM migration
where the focus was more on how to optimize the performance degradation or the
energy overhead associated with those migrations. In order to secure VM migration,
mutual authentication should be performed between the server initiating the
migration and the server that will be hosting the migrated VM. The control messages
that are exchanged between the servers to manage the migration should also be
encrypted and signed by the entity that is generating those control messages in order
to avoid altering the content of those control messages and in order to prevent other
entities from fabricating fake control messages. Sequence numbers or timestamps
should also be included in the exchanged control messages in order to prevent a
malicious entity from replaying an old control message that was sent earlier. Also,
gratuitous ARP reply packets that update the physical address of the VM should be
accepted only after authentication in order to prevent man-in-the-middle attacks. The
reader interested in learning more about VM migration attacks and countermeasures
is referred to [19] for further information on this topic.
(c) Theft-of-Service Attack: In this attack, a malicious VM misbehaves in a way
that makes the hypervisor assigns to it more resources than the share it is
supposed to obtain. This extra allocation of resources for the malicious VM
comes at the expense of the other VMs that share the same server as the
malicious VM, where these victim VMs get allocated less share of resources
than what they should actually obtain, which in turn degrades their
performance.
Xen is a well-known hypervisor that is susceptible to this attack. One of the main
roles of Xen hypervisor is to decide to which VM among the ones running on the
server each physical core should be assigned to over time. In order to do that, Xen
samples every 10 ms to check the VMs that are utilizing the cores. Xen then
assumes that the VM that is detected to be using one of the cores at the sampling
time has been using the server’s core during the entire 10 ms. The hypervisor then
calculates how much time each VM has been assigned the cores. VMs that utilized
the cores less than the remaining VMs are given higher priority to utilize the
server’s core in future in order to guarantee a fair allocation of the shared resources.
The fact that Xen performs periodic sampling can be exploited by a malicious
VM by using one of the cores at times other than the sampling time. As illustrated
in Fig. 8.6, the malicious VM can yield the acquired core to another VM shortly
before the sampling tick. The hypervisor then assumes that the other VM that has
yielded the core has been using the core during the entire 10 ms. The malicious VM
does not get logged as using the core and thus keeps having high priority to use the
cores in future.
Two countermeasures were proposed to handle this attack. The first counter-
measure is to log more accurately the start and end time when each VM was
utilizing the cores using accurate clocks. Another solution is to randomize the
sampling times.
(d) VM Escape Attack: Virtual machines are designed in a way that isolate each
VM from the other VMs running on the same server, which prevents VMs from
accessing data that belongs to other VMs that reside on the same server.
However, in reality, software bugs can be exploited to break this isolation. If a
VM escapes the hypervisor layer and reaches the server’s hardware, then the
malicious VM can gain root access to the whole server where it resides. This
gives the VM full control on all the VMs hosted on the hacked server. Different
techniques were proposed to prevent a malicious VM from bypassing the
hypervisor layer and obtaining the root privileges. An example of such tech-
niques is CloudVisor which basically adds an extra isolation layer between the
hardware and the hypervisor through nested virtualization that prevents the
malicious VM from obtaining the root privileges even if it bypasses the
hypervisor layer. Other architecture solutions were also proposed to avoid VM
Escape attacks.
(e) Insider Attacks: In all the previously discussed attacks, we were treating the
administrators of the cloud data center as trusted entities and we were focusing
only on the attacks that are originating from other malicious VMs that are
hosted in the cloud data center. However, some sensitive applications may have
serious concerns about hosting their collected information on the cloud data
center in the first place as the cloud data center administrators will in that case
have the ability to access and modify the collected data. Different techniques
were proposed to protect the data from these insider attacks. Homomorphic
encryption is a form of encryption that can be used to prevent such attacks as it
allows the cloud servers to perform certain computing operations on encrypted
input data to generate an encrypted result. This encrypted result when decrypted
matches the result of performing the computational operation on the unen-
crypted input data. Applying Homomorphic Encryption in the IoT paradigm
allows cloud servers to perform the necessary processing operations on the
encrypted data that is collected from the smart devices without giving the cloud
servers the ability to interpret neither the input data nor the result as they are
both encrypted using a secret key that is not shared with the cloud. Only the
smart objects and the user running the IoT application can interpret these data
as they have the key needed for decryption. Another form of protection against
insider attacks is to chop the data collected by the smart object into multiple
chunks and then to use a secret key to perform certain permutations on those
chunks before sending the data to the cloud servers. This allows storing the data
on the cloud servers in an uninterpretable form for the cloud administrators.
Only authorized entities that have the secret key can return the stored data to an
interpretable form by performing the correct permutations.
For convenience, Table 8.1 summarizes all the cloud domain attacks that were
discussed in this section. The second, third, and fourth columns of Table 8.1
8.5 Cloud Domain Attacks and Countermeasures 209
Theft-of- Periodic sampling of VMs’ Availability - Fine -grain sampling using high precision
Service used resources Non- clocks
Attack Repudiation - Random sampling
VM Hypervisor software bugs Confidentiality - Add an isolation domain between the
Escape Availability hypervisor and hardware
Attack Integrity
Insider Lack of trust in cloud Confidentiality - Homomorphic Encryption
Attacks administrators Integrity - Secret storage through data chopping and
permutation based on a secret key
describe, respectively, the vulnerability that causes this attack, what security
requirement each attack violates, and what are the countermeasures that can be used
to prevent or detect and mitigate each attack.
Recall that the fog domain is made up of a set of fog devices where each fog device
collects the sensing data that is reported from a set of smart objects. The fog device
performs different operations on the collected data which includes the following:
data aggregation, data preprocessing, and data storage. The fog device may also
perform some reasoning operations on the collected data. After processing and
aggregating the collected data, the fog device forwards these data to the cloud
domain. It is worth mentioning that not only fog devices are connected with the
cloud domain but also fog devices are usually connected with each other in order to
allow the fog devices connecting different smart objects to communicate directly
with each other and in order to coordinate assigning objects to fog devices as their
location changes. Fog devices can be independent components or could be built on
top of existing gateways. Each fog device provides computing resources to be used
by the IoT smart objects that are located close to the fog device. These computing
210 8 Internet of Things Security and Privacy
resources are virtualized in order to allow the connected objects to share the
computing resources that are offered by the fog device where each object or set of
connected objects are allocated a virtual machine that performs the necessary data
processing operations.
One can see that the computing capabilities provided by fog devices are very
similar to the computing services provided by the servers in the cloud as they are
both virtualized environments. The high similarities between the fog domain and
the cloud domain make the fog domain susceptible to all the cloud domain attacks
that were described in Sect. 8.6.
Although the fog domain is highly similar to the cloud domain, there are three
key differences that distinguish fog devices from cloud servers:
1. Location: Unlike cloud servers which are usually located far from smart objects,
fog devices are placed in areas with high popular access and thus are placed
close to the smart objects. This placement plays an important role in giving the
fog devices the ability to respond quickly to changes in the reported data. This
also gives the fog devices the ability to provide location-aware services as smart
objects connect to the closest fog device and thus each fog device knows the
location of the objects connected to it.
2. Mobility: Since the location of the smart object may change over time, then the
VMs created to handle those objects at the fog domain must be moved from a
fog device into another, in order to keep the processing that is performed in the
fog device close to the object that is generating data.
3. Lower Computing Capacity: The fog devices that are installed in a certain
location are expected to have a lower computing capacity when compared to
capacities offered by cloud data centers as the latter are made of thousands of
servers.
These characteristics raise new security threats that are specific to the fog domain
and that distinguish it from the cloud domain. The security threats that are specific
to the fog domain are as follows:
• Authentication and Trust Issues: The fact that fog devices do not require a
large facility space or a high number of servers compared to cloud data centers
will encourage many small and less-known companies to install virtualized fog
devices in dense areas and to offer these computing resources to be rented by the
smart objects that are near the installed fog devices. Unlike cloud data centers
which are offered by well-known companies, fog devices are expected to be
owned by multiple and less-known entities. An important security concern that
needs then to be taken into account when assigning a smart object to a fog
device is to authenticate first the identity of the owner of the fog device.
Authentication is not enough, as the smart object also needs to decide whether
or not the owner of the fog device can be trusted. Trust is an important aspect as
a smart object will be assigned to different fog devices belonging to different
entities as their location may change over time. Reputation systems such as
8.6 Fog Domain Attacks and Countermeasures 211
those that were proposed in peer-to-peer networks or to rank cloud providers can
be used to select a trustworthy fog device among the available ones in the area
surrounding each smart object.
• Higher Migration Security Risks: Although VM migration is common in both
the cloud and the fog domains, there is an important difference between the
migration in the cloud domain and that in the fog domain. While the migrated
VMs in the cloud domain are carried over the cloud data center’s internal
network or over a secure virtual private network (VPN), the migrations from a
fog device into another are carried over the Internet. Thus, there is a higher
probability that the migrated VMs get exposed to compromised network links or
network routers when moving a VM from a fog device into another. This makes
it vital to encrypt the migrated VM and to authenticate the VM migration
messages that are exchanged among the fog devices.
• Higher vulnerability to DoS Attacks: Since fog devices have lower computing
capacities this makes them a low-hanging fruit for denial-of-service (DoS)
attacks where attackers can easily overwhelm fog devices when compared to the
cloud data centers, where a huge number of servers that have high computing
capacity are available.
• Additional Security Threats due to Container Usage: In order to provide the
computing needs for a larger number of connected objects, the fog device may
use containers rather than VMs to allocate the resource demands for each
connected object. The main difference between a container-based virtualization
and full-virtualization is the fact that containers share not only the same hard-
ware but also the same operating system with the other containers that are hosted
on the same fog device (refer to Chap. 6). This is unlike the full-virtualization
(which was illustrated in Fig. 8.3) where only the hardware is shared among
multiple VMs and each VM has its own operating system. The low overhead of
containers allows larger number of objects to be served by the fog device.
However, sharing the same operating system among the containers dedicated for
objects that belong to different users raises serious security concerns as the
opportunities for data leakage and for hijacking the fog device increase sig-
nificantly. The industry needs to address these gaps in container security to
enable IoT applications at scale.
• Privacy Issues: We mentioned before that each smart object will be connected
to one of the fog devices that are close to it. This means that the fog device can
infer the location of all the connected smart objects. This allows the fog device
to track users or to know their commuting habits which may break the privacy of
the users carrying those objects. New mechanisms should be developed in order
to make it harder for fog devices to track the location of the smart objects over
time. Furthermore, the advancement in wireless signal processing has made it
possible now to identify the presence of humans, track their location, their lips
movement, and their heartbeats by capturing and analyzing the wireless signals
that are exchanged between the sensing objects and the fog domain. This
advancement makes it possible for any entity to install a reception device close
to your home that analyzes the wireless signals that are emitted from your home
212 8 Internet of Things Security and Privacy
in order to spy on your daily activities. The work in [48] is among the first
papers that identified these risks where the authors in that paper propose a
device called an obfuscator that prevents leaking such information by emitting
signals that make it hard for an unauthorized receiver to infer the amplitude, the
frequency, and the time shift of the originally exchanged signals. The obfuscator
does not only prevent such leakages but also acts as a relay that rebroadcasts
some of the sent messages which increases the transmission rate between the
sensing objects and the fog domain.
The sensing domain contains all the smart objects, where each object is equipped
with a number of sensors that allow the object to perceive the world. The smart
object is also supplied with a communication interface that allows it to commu-
nicate with the outer world. The smart object reports the sensed data to one of the
fog devices in the fog domain. This is done by either creating a direct connection
with the fog device if the smart object is directly connected by wires or has the
wireless transmission capability to reach that fog device, or in a multi-hop fashion
where the smart object relies on other smart objects that lie along the path to the fog
device to deliver the sensed data (as illustrated in Fig. 8.7).
The sensing domain is susceptible to multiple attacks. We summarize next some
of the most well-known ones:
a) Jamming Attack: This attack causes a service disruption and takes one of two
forms:
1. Jamming the Receiver: This attack targets the physical layer in the OSI
stack of the receiver (where the receiver is the fog device in the case of a
direct connection or another object in the case of a multi-hop connection)
where a malicious user (called the jammer) emits a signal (called the jam-
ming signal) that interferes with the legitimate signals that are received at
the receiver side. The interference degrades the quality of the received
signal causing many errors. As a result, the receiving end does not
acknowledge the reception of these damaged packets and waits for the
sender to retransmit those packets.
2. Jamming the Sender: Unlike the previous attack, this type targets the data
link layer at the OSI layer of the sending object where the jammer in this
attack sends a jamming signal that prevents the neighboring objects from
transmitting their packets as they, sense the wireless channel to be busy and
back off waiting for the channel to become idle.
There are different jamming strategies that a jammer may follow to launch a
jamming attack. The most well-known ones are summarized next:
• Constant Jamming: The attacker continuously transmits a random jamming
signal all the time. The main limitation of this attack is that it can be detected
easily by observing random bits that do not follow the pattern dictated by the
MAC protocol. Another main limitation is the fact that it requires the jamming
device to be connected to a source of power as it requires lots of energy.
• Deceptive Jamming: This is similar to the constant jamming with the exception
that the jammer conceals its malicious behavior by transmitting legitimate
packets that follow the structure of the MAC protocol rather than sending
random bits.
• Reactive Jamming: This is a strategy for jamming the receiver that is suitable
for the case when the jamming device has a limited power budget. The jammer
in that case listens to the medium and transmits a jamming signal only after it
senses that a legitimate signal is being transmitted in the medium. This is more
power efficient than continuously transmitting signals as listening to the channel
consumes less power than transmitting signals.
• Random Jamming: The jammer alternates between sending a jamming signal
and remaining idle for random periods of time in order to hide the malicious
activity.
More sophisticated jamming attacks have also emerged that intend to increase
the service disruption time, reduce the probability of detection, increase the abilities
to recover from the countermeasure that the victim node may take, while also
reducing the power that the jamming device requires. An example of a power
efficient advanced jamming attack would be to jam only the acknowledgment
packets that nodes exchange rather than jamming the whole transmitted data
packets as the former are shorter than the latter, and thus require less power to jam
while causing the same damage.
214 8 Internet of Things Security and Privacy
(b) Vampire Attack: This attack exploits the fact that the majority of IoT objects
have a limited battery lifetime where a malicious user misbehaves in a way
that makes devices consume extra amounts of power so that they run out of
battery earlier thereby causing a service disruption. The damage caused by this
attack is usually measured by the amount of extra energy that objects consume
compared to the normal case when no malicious behavior exists.
We identify four types of vampire attacks based on the strategy used to drain
power:
8.7 Sensing Domain Attacks and Countermeasures 215
• Denial of Sleep: Different data link layer protocols were proposed to reduce the
power consumption of smart objects by switching them into sleep mode
whenever they are not needed. Examples of these protocols include S-MAC and
T-MAC protocols. The idea behind these protocols is to agree on a duty-cycle
schedule where objects exchange control messages in order to synchronize their
schedules so that they agree on transmitting signals at certain cycles while
remaining asleep the rest of the time. An adversary can now launch a
denial-of-sleep attack which prevents objects from switching to sleep mode by
simply sending control signals that change their duty cycles keeping them active
for longer durations. The adversary can still succeed in launching this attack
even if the control messages that synchronize the duty cycles of the objects are
encrypted. When the control messages are encrypted, the adversary can capture
one of those encrypted control messages and replay it (resend it) at a later point
of time causing the nodes to change their synchronization and their schedules.
The adversary needs in that case to use traffic analysis techniques that rely, for
example, on the length of the packets and the rate at which packets are
exchanged in order to distinguish the control messages from the data messages
that the nodes exchange since the content that packets carry is hidden by
encryption.
• Flooding Attack: The adversary can flood the neighboring nodes with dummy
packets and request them to deliver those packets to the fog device, where
devices waste energy receiving and transmitting those dummy packets.
• Carrousel Attack: This attack targets the network layer in the OSI stack and
can be launched if the routing protocol supports source routing, where the
object generating the packets can specify the whole routing path of the packets it
wishes to send to the fog device. The adversary in that case specifies routing
paths that include loops where the same packet gets routed back and forth
among the other objects wasting their power. Figure 8.8 illustrates this attack.
• Stretch Attack: This attack also targets the network layer in the OSI stack. If
the routing protocol supports source routing, then a malicious object can send
the packets that it is supposed to report to the fog device through very long paths
rather than the direct and short ones as illustrated in Fig. 8.9. Even if source
routing is not supported, the attacker can select a next hop that does not have the
shortest path to the fog device in order to increase the power consumption of the
objects that will be responsible to deliver those packets.
The adversary can further amplify the amount of wasted energy by combining
flooding attack with carrousel attack and stretch attack. The adversary in that case
floods the neighboring objects with a large number of generated packets and
specifies long paths with loops that the packet should follow in order to increase the
amount of wasted power.
Denial-of-sleep attacks can be mitigated by encrypting the control message that
arranges the schedules of the node while including a timestamp or a sequence
number in the encrypted control message that prevents the adversary from suc-
ceeding in replaying an old control message. The objects can recognize by checking
216 8 Internet of Things Security and Privacy
the encrypted time stamp or the encrypted sequence number that the replayed
control message is not a new message but an old one that some replayed to cause
disruption. Flooding attacks can be mitigated by limiting the rate of the packets that
each object may generate. Carrousel attacks can be mitigated by making each object
that is requested to forward a packet, based on a route specified by the source, check
the specified path. Packets with loops within their paths are dropped as they are
most likely originating from malicious users. Finally, stretch attacks can be miti-
gated by disabling source routing or by making sure that the forwarded packets are
making progress toward their destination and are not following long paths.
8.7 Sensing Domain Attacks and Countermeasures 217
(c) Selective-Forwarding Attack: This attack takes place in the case when the
object can’t send its generated packets directly to the fog device but must rely
on other objects that lie along the path toward the fog device to deliver those
packets. A malicious object in this attack does not forward a portion of the
packets that it receives from the neighboring objects. A special case of this
attack is the blackhole attack where the attacker drops the entire set of packets
that it receives from the neighboring objects. The best way to prevent packet
drops from taking place for sensitive IoT applications is to increase the
transmission capability of the objects so that they can reach the fog device
directly without the need for help from intermediate objects. Unfortunately,
not all IoT objects are expected to have high transmission range to reach the
fog device and thus will be relying on other objects to deliver their packets,
which makes them susceptible to this attack. Different solutions were proposed
to mitigate the number of dropped packets. Path redundancy is one of those
solutions, where each object forwards each generated packet to multiple
neighboring objects, where multiple copies of the same packet get delivered to
the fog device through different paths. This decreases the chances of not
having at least a copy of each generated packet delivered to the fog device.
The main limitation of this mitigation technique is that it has a high-energy
overhead as it increases significantly the traffic. Rather than mitigating the
damage caused by those attacks, the approach in [6, 8] tries to detect malicious
objects that are dropping the sent packets so that packets can be routed through
different paths that avoid those objects. Detecting the presence of objects that
are dropping packets along certain paths can be done by selecting certain
trusted objects as checkpoints. Each time a checkpoint receives a packet, it
sends an acknowledgment to the object that generated that packet. The
acknowledgment includes a unique identifier for the packet that was received
along with a signed hash for the acknowledgment’s content. This guarantees
that no other entity fabricates fake acknowledgment packets and that no other
entity can alter the content of these acknowledgments. The interested reader
may refer to [7] for a complete overview on the countermeasures that can be
used against selective-forwarding attacks.
(d) Sinkhole Attack: A malicious object claims that it has the shortest path to the
fog device which attracts all neighboring objects, which do not have the
transmission capability to reach the fog device, to forward their packets to that
malicious object and count on that object to deliver their packets. Now all the
packets that are originating from the neighboring nodes pass by this malicious
node. This gives the malicious node the ability to look at the content of all the
forwarded packets if data is sent with no encryption. Furthermore, the mali-
cious object can drop some or all of the received packets as we explained
previously in the selective-forwarding attack. Figure 8.10 illustrates how the
network topology changes before and after this attack. Techniques to detect
and isolate the malicious objects were proposed and are based on the idea of
collecting information from the different objects where each object reports the
neighboring objects along with the distance to reach those objects.
218 8 Internet of Things Security and Privacy
Fig. 8.10 Network topology before and after a sinkhole attack. The malicious object M claims
that it has a shorter route to reach the fog device which attracts the neighboring objects A and E to
rely on M to deliver their packets
Table 8.2 Summary of the security attacks targeting the sensing domain
Attack Target Vulnerability Security Countermeasures
OSI Layer Reason Violation
Jamming - Physical Shared Availability - Frequency Hopping
Attack - Data Link wireless - Spread Spectrum
channel - Directional Antennas
- Jamming Detection Techniques
Vampire - Data Link Limited - Availability - Rate limitation
Attack -Network battery - Freshness - Drop packets with a source route that
lifetime contains a loop
- Monitor whether or not the forwarded
packets are making progress towards their
destination
Selective- Network Limited - Availability - Increase transmission range
Forwarding transmission - Path Redundancy
Attack capability - Choose certain intermediate objects as
checkpoints to acknowledge received
packets
Sinkhole Network Limited - Analyze the collected routing information
Attack transmission - Confidentiality from multiple objects
capability - Availability
8.7 Sensing Domain Attacks and Countermeasures 219
the OSI stack the attack targets whereas the third, fourth, and fifth column describe,
respectively, the vulnerability reason, the security requirement that the attack breaks
and the defensive countermeasures against each attack.
This chapter analyzed IoT from the security and privacy perspectives. Ignoring
security and privacy will limit the applicability of IoT and will have serious results
on the different aspects of our lives given that all the physical objects in our
surrounding will be connected to the network. In this chapter, the IoT security
challenges and IoT security requirements were identified. A three-domain IoT
architecture was considered in our analysis where we analyzed the attacks targeting
the cloud domain, the fog domain, and the sensing domain. Our analysis describes
how the different attacks at each domain work and what defensive countermeasures
can be applied to prevent, detect, or mitigate those attacks. We hope that the
research and industry communities will pay attention to the discussed security
threats and will apply appropriate countermeasures to address those issues. We also
hope that security and privacy will be considered at the early design stage of IoT in
order to avoid the common pitfall of considering security as an afterthought.
We end this chapter by providing some future directions for IoT security and
privacy as follows:
• Fog domain Security: The fog domain is a new domain that was introduced to
bring the computing capabilities to the edge of the network. We believe that
further attention should be paid to this domain as it has not received enough
attention from the academia and the industry. The focus should be on identi-
fying threat models related to the fog domain and also on finding efficient
solutions that can run on the fog devices that are available in the market.
• Collaborative Defense: We identified while surveying the related work that
what the literature on IoT security lacks is a collaborative solution where the
different domains (cloud, fog, and sensing) interact with each other to stop or
mitigate a certain attack. We believe that an interdomains defensive solution will
be way more effective than applying countermeasures at each domain sepa-
rately, where the different domains can interact and collaborate in order to stop
any ongoing malicious activity.
• Lightweight Cryptography: This is a highly important topic that has gained
significant attention recently and is anticipated to be very important for the
future of IoT where the objective is to find efficient cryptographic techniques
that can replace the traditional computationally expensive ones while achieving
an acceptable level of security.
• Lightweight Network Security Protocols: Not only the cryptographic com-
putations must have lower overhead but also the network security protocols that
220 8 Internet of Things Security and Privacy
are used for communication must be made suitable for constrained devices.
Many efforts are being paid by the research and industry communities to find
cross-domain-optimized security protocols that achieve the necessary security
protection while maintaining a low overhead.
• Digital Forensics: Although tracking the location of smart objects is considered
a privacy violation, it also has some useful cases. Consider, for example, the
case where police rely on tracking the smart objects that are carried by a missing
person in order to identify the missing person’s location. Digital forensics in the
IoT era will play an important role in solving the different forensic cases as they
will all become technology-related. This area is also expected to receive further
attention in the future where different techniques can be used to extract
knowledge from the smart objects.
1. The authors have broken IoT Security Challenges into seven areas. Name
them? Why is Big Data an issue for IoT?
2. What are the techniques that can be applied to prevent cross-VM data leakage?
Explain how the Hard Isolation technique can be achieved?
3. What are some of the typical uses of VM migration in cloud data centers? What
are the two types of attacks that are related to VM migration?
4. Who is the entity that initiates insider attacks and how homomorphic encryp-
tion be used to prevent such attacks?
5. What are the three key differences that distinguish fog devices from cloud
servers? Provide a brief explanation of each difference?
6. Which provides more protection against security attacks: container-based vir-
tualization or full virtualization? Why?
7. What are the two connection approaches that smart objects may use to com-
municate with the fog device? Which approach is more secure and can this
approach always be used?
8. What are the four strategies that a jammer may follow in order to launch a
jamming attack? Which strategy is suitable when the jammer has limited energy
budget?
9. What are Vampire Attacks? Name their types?
10. What is network High Availability? What is Network Redundancy? How are
they related?
8.8 Problems and Exercises 221
11. Chapter 3 discusses three different ways to obtain information for IoT “things”:
Sensors, RFID and Video Tracking. In a Table, compare the security issues for
the three technologies.
References
38. C. Hennebert, D. Jessye, Security protocols and privacy issues into 6lowpan stack: a synthesis.
IEEE Internet of Things J. 1(5), 384–398 (2014)
39. Daily Tech Blogs On Line: http://www.dailytech.com/Five+Charged+in+Largest+Financial
+Hacking+Case+in+US+History/article32050.htm
40. M. Miller, in Car Hacking’ Just Got Real: In Experiment, Hackers Disable SUV on Busy
Highway, the Washington Post, 2015, online: http://www.washingtonpost.com/news/morning-
mix/wp/2015/07/22/car-hacking-just-got-real-hackers-disable-suv-on-busy-highway/
41. “2015 Data Breach Investigation Report”, Verizon Incorporation, 2015
42. M. Dabbagh et al, Fast dynamic internet mapping. Future Gener. Comput. Syst. 39, 55–66
(2014)
43. Forrester, Security: The Vital Element of the Internet of Things, 2015, Online: http://www.
cisco.com/web/solutions/trends/iot/vital-element.pdf
44. F. Adib, D. Katabi, in See Through Walls With WiFi!, vol 43 (ACM, 2013)
45. S. Kumar, S. Gil, D. Katabi, D. Rus, in Accurate Indoor Localization With Zero Start-Up
Cost. Proceedings of the 20th Annual International Conference on Mobile Computing and
Networking. (ACM, 2014), pp. 483–494
46. G. Wang, Y. Zou, Z. Zhou, K. Wu, L. Ni, in We Can Hear You With Wi-Fi!. Proceedings of
the 20th Annual International Conference on Mobile Computing and Networking. (ACM,
2014), pp. 593–604
47. Y. Qiao, O. Zhang, W. Zhou, K. Srinivasan, A. Arora, in PhyCloak: Obfuscating Sensing from
Communication Signals. Proceedings of the 13th USENIX Symposium on Networked
Systems Design and Implementation (NSDI), 2016
48. T. Yu et al, in Handling a Trillion (Unfixable) Flaws on a Billion Devices: Rethinking
Network Security for the Internet-of-Things. Proceedings of the 14th ACM Workshop on Hot
Topics in Networks, 2015
49. M. Dabbagh, B. Hamdaoui, M. Guizani, A. Rayes, Software-defined networking security: pros
and cons. IEEE Commun. Mag. (2015)
50. Doctors disabled winless in Dick Cheney’s pacemaker to thwart hacking: Naked Secuirty by
Sophos. Oct 22 (2013) https://nakedsecurity.sophos.com/2013/10/22/doctors-disabled-
wireless-in-dick-cheneys-pacemaker-to-thwart-hacking/
51. A. Peterson, Yes, terrorist could have hacked Dick Cheney’s heart. The Washington Post. Oct
21 (2013) https://www.washingtonpost.com/news/the-switch/wp/2013/10/21/yes-terrorists-
could-have-hacked-dick-cheneys-heart/
Chapter 9
IoT Vertical Markets and Connected
Ecosystems
The Internet of Things is expected to connect over 20 billion “things” to the Internet
by 2020, covering a broad range of markets and applications. As IoT becomes more
cost-effective and easier to deploy, new contenders and industry players are
expected to enter the market. Hence, existing companies will be forced to disrupt or
be disrupted. For the leaders of any of these companies, this begs two main
questions: Firstly, what new business models to employ in order to deliver better
and cheaper service? And secondly, who to partner with to bring services to market
quicker and at a lower cost?
In this chapter, we will first introduce, in Sect. 9.1, the key IoT application
domains, which are often referred to in the literature as IoT verticals.
Alphabetically, key verticals include agriculture and farming, energy, enterprise,
finance, healthcare, industrial, retail, and transportation.
These verticals will include data sources (e.g., sensors, RFIDs, and video
cameras) producing wealth of new information about the status, location, behaviors,
usage, service configuration and/or performance of systems, products, or devices. In
Sect. 9.2, we will present the new business model which is mainly driven by the
availability of new information, thereby offering differentiating business benefits to
the companies that manufacture, support and service those systems, products, or
devices, especially in terms of customer relationships. In Sect. 9.3, we will present
the top requirements to deliver “anything as a service” in IoT followed by a specific
use case.
Finally, the manifold IoT verticals in combination with the new business model
will undeniably introduce opportunities for innovative partnerships. No single
vendor will be able to address all business requirements. We will describe the
requirements for such model in the last section.
There is no agreement across the industry on the number of IoT verticals. The
number ranges from a few to over a dozen across various standards and marketing
collaterals. The oneM2M (Standards for Machine-to-Machine and IoT) and ETSI
(European Telecommunications Standards Institute) have identified 10 IoT verti-
cals: agricultural and farming, energy, finance, healthcare, industrial and public
services, residential, retail, and transportation. Other companies have used a slightly
different categorization to include energy, transportation, education, healthcare,
commerce, travel and tourism, finance, IT, and environment.
As we mentioned in previous chapters, the objective is not to divide IoT into
verticals and silos. On the contrary, the real impact of IoT will only occur when data
from the silos is combined to create completely new types of applications. In other
words, an IoT application should be able to manage IoT elements from many ver-
ticals with common parameters, open data models, and Application Programmatic
Interfaces (APIs). The collected data from IoT elements, combined with the new
knowledge emerging in the area of “big data,” will create the framework for many
new types of applications. This progress will drive the growth of IoT.
In this chapter, we will describe IoT use cases using a modified version of the
oneM2M and ETSI categorizations, as shown in Fig. 9.1. The IoT verticals include:
agriculture and farming, energy, oil and gas, enterprise, finance, healthcare,
industrial, retail, and transportations.
It is important to note that some IoT standard bodies have used the term “energy”
as a comprehensive label to include “energy consumption” in smart buildings/cities
as well as “oil and gas” in the petroleum industry (e.g., to monitor oilrigs, pipelines,
and emission). We believe IoT energy and IoT oil and gas are two separate verticals.
Energy comes from oil and gas as well as other sources such as solar and wind. In
addition, energy is about managing smart meters, smart buildings, and smart cities
while oil and gas is more about process and asset management in the petroleum
industry. More information will be provided in Sects. 9.1.2 and 9.1.3.
Transportations
Healthcare
Enterprise
Oil & Gas
Industrial
Finance
Energy
Retail
IoT energy covers smart buildings offering dynamic monitoring of overall energy
consumption, thereby allowing their occupants or tenants to see when they are
228 9 IoT Vertical Markets and Connected Ecosystems
consuming power during peak hours at abnormally high rates. This allows the
tenants to optimize energy usage while maintaining comfort. It also covers smart
cities offering automatic dynamic optimization of global energy consumption on the
streets, highways, and in public facilities.
IoT energy use cases include the following:
• IoT Smart Meters: Internet of Things (IoT) smart meters record electrical
power consumption on regular basis (e.g., hourly, every 15 min) and send
collected information to the power company for monitoring and billing.
IoT smart meters benefit power companies as well as consumers. Power com-
panies use the collected information to construct usage patterns and trend
analyses to predict future energy usage especially during peak hours. They plan
for such peaks with additional supply and by offering very attractive offers to
customers to conserve energy. Customers use the information to view, typically
on the portal of the power company, hourly electric and daily gas energy usage
data. Consumers use the detailed hourly, daily, weekly, or monthly information
to make smarter energy choices (e.g., use washing machine after 7 P.M. for
cheaper rate).
• Smart Homes (Connected Home): Connected home is defined as any home
with at least one connected device (e.g., appliance, home security system, or
motion sensor). Connected devices can learn usage patterns and enable remote
operation to reduce energy consumption (e.g., water heaters, air conditioning,
and lighting.)
Connected devices send information to service provider systems, which, in turn,
quickly analyze the data and notify homeowners if needed, or directly send
alerts to homeowners. The first model is often a subscription-based service in
which a homeowner subscribes to a service (e.g., home security company) while
the second model is non-subscription model (e.g., home security camera
installed by homeowner and connected over the home Wi-Fi gateway). Can you
name an example of model 2? (See Problem 8).
To meet the IoT key promise of making human lives better, all connected home
devices should come together into a single connected IoT system or connected
service provider system offering the homeowner full and simple access and
control.
• Other Cases: IoT is also used to monitor and optimize solar energy plants’
performance. How? (See Problem 10).
Ever since the explosion and sinking of the Deepwater Horizon oil rig in the Gulf of
Mexico in April 2010, which was recognized as the worst oil spill in the US history,
combined with the increase in strict government regulations, IoT has been at the
9.1 IoT Verticals 229
core of the oil and gas industry transformation. It is not only enabling full real-time
monitoring of oilrigs, but also allowing contingent workforce to run near-real-time
maintenance of critical assets.
IoT oil and gas is used for predictive maintenance, pipeline monitoring, emission
control, and location intelligence. It is also used for near-real-time alert and trending
analysis using sensors, installed on various equipment and augmented with ERP
(enterprise resource planning) data, to trigger maintenance workflows for asset
management and fleet operations monitoring.
• Connected oil and gas fields: IoT sensors are being installed to monitor and
control oil wellheads, pipelines, and equipment, to enhance the overall oil field
remote operations, to enable predictive maintenance, and to provide compre-
hensive facility operations at reasonable costs, hence achieving better reliability
and productivity from the fields.
Also connected oil and gas fields reduce the need for site visits (e.g., site visits
to unmanned offshore platforms), hence reducing the associated hazards and
improving personnel safety.
• Downstream Applications: IoT oil and gas can also play a role in downstream
operations such as oil and gas storage, transportation, refineries, and distribution
(e.g., petrol station fuel tanks can be monitored by distribution companies to
dispatch tank trucks).
As with smart homes (under smart energy), smart buildings utilize sensors and
controllers to monitor and automatically trigger services to save valuable time in
cases of emergency (e.g., fire, intrusion, or gas leak). With the smart building
system, services such as video monitoring, light control, air-condition control, and
power supply control are often managed from the same control center. In this
section, we will focus on smart buildings as an enterprise solution, as specified in
the oneM2M standards.
• Safety Monitoring and Alerting: Examples include noise-level monitoring in
urban zones and sounding alarms in real time, electromagnetic field levels
monitoring by measuring the energy radiated by cell stations and other devices,
chemical leakage detection by detecting leakages and wastes of factories in
water, air pollution and control of CO2 emission factors, pollution emitted by
cars and toxic gases generated in farms, as well as earthquake early detection.
• Smart lighting: In smart lighting, IoT is used to minimize energy consumption,
provide weather adaptive lighting and to automate maintenance.
• Flooding, water leakage, and pollution monitoring: Monitoring of safe water
levels in dams, and reservoirs; detection of the presence of toxic chemical;
monitoring of tanks, pipes, and pressure variations; and real-time control of
leakages and waste.
9.1 IoT Verticals 231
• Detection of hazardous gases and radiation levels: Detection of gas levels and
leakages in and around industrial buildings and chemical factories; monitoring
of ozone levels during the meat-drying process in food factories; and distributed
measurement of radiation levels in the surroundings of nuclear power stations to
generate leakage alerts.
• Other use cases: Include detection of garbage levels in containers to optimize
the trash collection routes, preemptive monitoring of burning gasses and fire
conditions to define alert zones, snow-level measurement to know in real time
the quality of ski tracks and alert avalanche prevention security corps, moni-
toring vibrations and earth density to detect dangerous patterns in land condi-
tions, and monitoring of vibrations and structural conditions in buildings and
bridges.
While IoT financial solutions are not as obvious as other IoT verticals, the financial
industry has indeed benefited greatly from IoT. For many financial services busi-
nesses, the reality is that their business model is based on the flow of information,
rather than on actual sensors and physical objects. As we mentioned in Chap. 1,
some financial companies (e.g., Square, Intuit) have introduced IoT platform-based
solutions connecting customers instantly with financial institutes and services. Such
process used to be tedious and required time that often resulted in losing
prospective deals to competitors. Banks are using IoT-based facial recognition
solutions to identify important customers when they walk into the bank so they can
be offered first-class treatment.
Auto insurance companies are working with technology companies and com-
munication service providers to install sensors-based IoT telematic solutions in
automobiles, to track driver behaviors in order to improve underwriting and pricing
of policies. Other use cases include the following:
• IoT usage-based auto insurance: Sensors are installed in vehicles to track
actual mileage, car location, and driving areas. In addition, IoT-based claim
filing system is utilized, allowing drivers to file claims using their smartphones
eliminating the need for expensive agents and paper work.
• IoT solution to reduce fraud and liability: In highly delicate work environ-
ments (e.g., chemical or nuclear plants, physical activities), smart sensors may
be embedded in employees’ uniforms. This allows the IoT solution to monitor
employee whereabouts in high-risk areas, warn them in real time of any
potential danger, and prevent them from entering restricted areas. This should
result in safer work environments for the employees and reduce fraudulent
workplace-related claims for the employer.
232 9 IoT Vertical Markets and Connected Ecosystems
Healthcare is considered as one of the most important verticals for IoT. Healthcare
providers and patients are in great position to benefit from IoT. Intelligent IoT
wearable devices in combination with mobile apps are allowing patients to capture
their health data easily and send medical information for up to the minute analysis.
Hospitals are using IoT for real-time tracking of important medical devices, per-
sonnel, and patients.
Examples of IoT Healthcare use cases include the following:
• Fall detection: Fall detection is considered a main public health concern among
senior citizens. The number of wearable medical devices, systems, and com-
panies offering services intended at detecting falls has increased radically over
recent years. Fall detection alert systems, typically worn around the waist or
neck, include intelligent accelerometers that differentiate normal activities from
actual falls. Fall detection solutions are already improving the quality of life of
many elderly or disabled people living independently.
• Tracking of medical devices: Accurate tracking of expensive medical devices
is very essential for hospitals especially in crowded emergency rooms with large
medical staff. IoT solutions are being used to identify the exact location of such
devices, identify last user, and then auto adjust the device setting, if applicable,
based on the fingerprint of the current user.
• Medical fridges for hospitals: Sensors are being embedded in medical fridges
for hospitals and medical offices to dynamically control temperatures inside
9.1 IoT Verticals 233
mobile and stationary freezers filled with vaccines, medicines, and organic
elements.
• Other use cases include measuring ultraviolet radiation and warning people of
the hazard of sun exposure especially during certain hours.
As is the case with IoT financial, IoT healthcare has its own share of challenges.
The security of IoT data and devices as well as government regulations are con-
sidered by many as the most important concerns for patients and healthcare pro-
viders. Patients are concerned about employers gaining access to their medical
records, especially when they register their Bring Your Own Device (BYOD)
mobile devices. Some physicians and healthcare IT departments are still adjusting
to using and securing mobile devices in their operations. Finally, the lack of
standards and communication protocols around IoT puts the development of
solutions at risk.
Industrial equipment and machines used in the overall manufacturing process, for
instance, are becoming more digitized with capabilities to connect to the Internet.
At the same time, manufacturers are looking at ways to advance operational effi-
ciency such as supply chain and quality control, by utilizing such equipment to
gather important data for their business to remain competitive and provide services
at reasonable costs.
IoT is used to establish networks between machines, humans, and the Internet,
thereby creating new ecosystems. It is also used to identify business gaps and
opportunities, as we will cover in Sect. 9.3. Examples of Industrial use cases
include:
• Predictive maintenance: Predictive maintenance covers all connected assets in
industrial plants (e.g., water treatment site). By utilizing real-time data collected
from sensors and cameras, combined with advanced analytics, it is possible for
companies to anticipate equipment failures and respond faster to critical situa-
tions. Advanced analytics is a hot research area that includes artificial intelli-
gence and machine learning. With machine learning, computers can develop
algorithms on their own by analyzing data over time. These algorithms can then
be used to make predictions.
• Connected Factory: as the name indicates, connected factory means connecting
the entire factory network to the Internet with full monitoring and controlling
solution. Connected factory typically includes mobile operation center for
comprehensive and secure management.
• Connected Mine: In connected mines, all mining vehicles, mining operation,
mining asset tracking, and personal safety equipment are connected.
234 9 IoT Vertical Markets and Connected Ecosystems
• Supply Chain Control: Monitoring of storage conditions along with the supply
chain and product tracking for traceability purposes.
IoT-enabled devices and products will provide a wealth of information about their
status, location, behaviors, usage, service configuration, and performance. This
information, if leveraged correctly, offers extraordinary business benefits to the
companies that manufacture, support, and service those products, especially in
terms of customer satisfaction.
With the availability of such data combined with cost-effective Internet-based
communications, many companies are starting to ponder why would they stop at
selling a product and forgo very essential feedback information, when they can also
sell a service with the right to monitor the actual usage and behavior of the product in
the deployed environment. Usage information is not only used to service a
product/device and prevent service deterioration by verifying contract service-level
agreements (SLAs), but also to learn about the product in the field and determine the
most essential set of future enhancements. Feedback information may be categorized
by market segments but generally include common set of specific information such
as which features are used the most, which features are used the least, which features
are never used and feature usage patterns (feature A is used with feature B).
IoT is bending the traditional linear value chain by allowing companies to
economically connect to products and collect essential data. The data is then ana-
lyzed and correlated with business intelligence (BI) and intellectual capital (IC), and
used to provide a proactive, predictive, and preemptive service experience. This is
made possible with the creation of a “feedback loop” through which the heartbeats
of manufactured objects continually flow back though the complex business sys-
tems that create, distribute, and service those products. Adopters of this new IoT
service model are in a great position to deliver extraordinary business performance
and break away from their competition.
With this model, many companies are already offering at least a form of their
products (or main features of such products) as a service with an always-on con-
nection to fully monitor actual usage and behavior in the deployed environment.
Next we will present a few key examples.
Aircraft engine manufacturers are moving from the business of selling engines to
the business of selling thrust as a service. In fact, Rolls-Royce has been offering
such services for the last several years. It sends jet engine telemetry data to data
centers for full analysis and diagnostics. An inspection can be scheduled at the
correct time or spare parts can be directed to the right destination even before the
pilots or the airline knows that one of their engines has a problem.
9.2 IoT Service Model—Anything as a Service 237
Data Center
Today, most of the Rolls-Royce engines are not sold, but rented out on an hourly
basis under their TotalCare® program, and a center is monitoring maybe hundreds
or even thousands of engines at the same time. This model allows Rolls-Royce to
accumulate a wealth of engine operational data and enables it to consult airlines on
best practices. This makes it difficult for third parties to take maintenance business
away from Rolls-Royce. Figure 9.3 illustrates the framework of “thrust as a
service.”
Other aircraft engine manufacturers have similar programs. Airlines do not pay
for the engines, but for the time they are flying. With this model, engine manu-
facturers have a strong incentive to improve the reliability of their engines and drive
out third-party maintenance providers.
238 9 IoT Vertical Markets and Connected Ecosystems
Hospitals and large medical facilities worldwide are being challenged with high
cost of medical equipment and increased government regulations. Vendors of
medical imaging machines (e.g., magnetic resonance imaging (MRI) machines,
computed tomography (CT) scanners, and X-ray machines) are taking advantage of
such challenges and offering “imaging as a service” provisions. The new connected
“as a service” business model is not only reducing imaging equipment operational
costs, but also offering equipment manufacturers, service providers, and hospitals
new revenue streams. Figure 9.4 depicts an example of imaging as a service.
Agriculture machinery and chemical companies are also realizing the value of the
new IoT service model. Tractors and many farming machines are being equipped
Data Center
with sensors and actuators. Agriculture machinery and chemical companies are
partnering together to offer farming as a service (FaaS) where the farming machines
are brought to a farm during seeding seasons. The machines analyze the soil square
foot by square foot, send the data back to the agriculture machinery company data
centers, where the data is analyzed in real time, and the result is sent to actuators to
release into the soil the best-matching kinds of seeds and the right amount of
fertilizers.
Farming machines (e.g., tractors) may be connected over cellular (e.g., 4G)
networks or drones as shown in Fig. 9.5. In the latter case, drones are deployed by
agriculture machinery companies just for the duration of seeding. Drones are typ-
ically used when the cellular signal is weak. What is another method of connecting
agriculture machinery to the network? (See Problem 9)
240 9 IoT Vertical Markets and Connected Ecosystems
9.2.4 IT as a Service
Another and perhaps less obvious example is the IoT network provider itself.
Virtually all modern businesses/enterprises are powered by technologies, and visi-
bility into the underlying infrastructure is mission critical. In the past, businesses
relied on IT to deliver mission-critical business functions (e.g., customer portals,
finical applications, email, supply chain systems, and a myriad of other crucial ser-
vices that need to work flawlessly to prevent any impact on services and customers).
Today, businesses can no longer afford to wait for IT to provide all infrastructure
capabilities. As IT infrastructure continues to grow and become more complex,
especially with the proliferation of hardware, software, applications, Virtual
Machines (VMs), cloud services, and mobile devices, providing visibility into that
infrastructure is a constantly moving target.
Vendors of IoT hardware and software solutions (e.g., sensors, gateways, rou-
ters, switches, platforms) are also offering “feature as a service.” For instance, a
network vendor may own IoT getaways (or IoT routers and switches) and simply
offers connection services with guaranteed SLAs (service-level agreements). As
with the previous examples, the networking vendor can only do so by enabling its
IoT elements (e.g., gateways, routers, and switches) to collect and send data to the
vendor’s data centers for service monitoring, analysis, and diagnostic. Such model
also allows the vendors to gather a wealth of operational data and enables them to
offer consultation to other enterprises on best practices (Fig. 9.6).
Data Center
In this section, we will describe the requirements for end-to-end intelligent service
automation. This includes the basic requirements for specific instrumentation and
telemetry data to be provided by the product and embedded management capa-
bilities as well as vertical-specific intellectual capital to provide a proactive, pre-
dictive, and preemptive service experience, addressing the operations and health of
the product.
Regardless of IoT verticals or underlying technologies, “anything as a service”
can only be realized with several key capabilities. In this section, we will list these
capabilities in ten main areas. Once the capabilities are enabled across the IoT
layers, systems (e.g., IoT platform as we specified in Chap. 6) are required to
automate the end-to-end functionalities.
Given the difficulties with providing generic answers across IoT verticals, we
will use the thrust as a service as the guiding example for illustrations.
1. Which data to collect and from which entities? E.g., for the thrust as a service
example, the data include: jet engine operational parameters including engine
revolutions per minute (RPM), fuel consumption, temperature, pressure, aircraft
aerodynamic, and mechanical operational parameters such as wind speed,
ground speed, positions of flaps, positions of slats, positions of spoilers,
242 9 IoT Vertical Markets and Connected Ecosystems
1
IC information is typically captured by analyzing collected data over time against the supplier
intelligence and databases (e.g., Microsoft collects and analyzes data from its Windows customers
over the Internet).
244 9 IoT Vertical Markets and Connected Ecosystems
Advanced
Analytics, ML
& Prevention
Customer /
Partner IC
Supplier IC
Basic Analysis
Collected Statistics
(Embedded Management )
collected information is analyzed and correlated with the vendor’s vast repository
of proprietary intellectual capital turning it into actionable intelligence to aid net-
work planners/administrators increase IT value, simplify IT infrastructure, reduce
cost, and streamline processes.
IoT IT services enable network equipment vendors and technology service
providers to provide solutions through machine-to-machine2 interactions that
automatically provide real-time visibility and issue resolution. Such intelligence
enables people-to-people interactions and enhanced social media collaboration. The
interactions enable vendors and service providers to continue growing their critical
intellectual capital.
Another essential requirements for IoT IT services is the smart agent with
automated two-way always-on connectivity between the device (or the network)
and service management backend systems that typically reside in the network
operation center (NOC), at the network supplier, or managing partner. This con-
nection is used to (a) send uninterrupted near-real-time device/network intelligence
from the device/network to the service management system(s) and to (b) allow
network management system(s) to connect to the device/network to take action to
prevent service outage or service deterioration.
Thus, one of the key differences between traditional network management and
IoT IT service is the fact that IoT IT services utilize uninterrupted, persistent
machine-to-machine, or machine-to-person diagnostics, fortified with IC and best
practices, in a blend designed to give network administrators deep visibility into the
network. Network management solutions themselves may be connected to backend
services.
2
The term “Machine” refers to managed entity with an IP address such as router, switch, and router
interface.
9.3 Enabling “Anything as a Service” 245
With IoT IT services, network administrators have direct view and intelligence at
the device, network, operations, and application layer providing automated reports
and recommendations. This end-to-end approach results in network intelligence that
enables network vendors (typically responsible for network and service warranty),
customers/clients (network owners) and partners (typically responsible for operat-
ing, monitoring, and maintaining the network by working with vendors and cus-
tomers) to deliver proactive services including regular monitoring, proactive
notification, and remote remediation to enhance the customers’ network availability
and performance.
As was mentioned in quite a few chapters in this book, the number of devices
connected to the Internet is already in billions and expected to reach over 20 billions
in just a few years. Each of these devices is in a position to create a set of new
automated services that are essential to business as well as the advancement of the
world economy. Today’s businesses are already requiring manufacturers to sup-
plement their products with intelligence and connectivity. With such capabilities,
IoT layers and domains will be drivers for major software development as well as
services support in devices, infrastructure, platforms, and applications. No single
vendor will be able to handle a complete IoT vertical, let alone offering an
end-to-end solution. IoT go to market will be driven by complex partnerships that
include a combination of original equipment manufacturers (OEM), value-added
resellers (VAR), systems integrators (SI), and independent software vendors (ISV).
IoT products, hardware, and software, as well as end-to-end solutions will be
developed in multidimensional partnerships, meaning that they are developed to
integrate into IOT devices, networks, platforms, applications, and/or service. They
will also be utilized to extend an IoT-enabled service portfolio.
On the device and network side, for instance, suppliers have been exploiting the
device-embedded intelligence and connectivity capabilities to offer IoT-based ser-
vices changing the traditional maintenance and support from reactive to proactive
approach. These services are typically offered as part of remote management of
network equipment and assets, which provides proactive network monitoring,
health checkups, diagnostics and software repairs in addition to technical support.
Suppliers are also realizing that connected devices continue to generate infor-
mation value not just for services but over their life spans. They now know the
current location of the device, when it was first installed, important specifications,
diagnostics, availability of spares, replacement alternatives, repair instructions,
support status, and so on. This information can then be used by manufacturers and
their partners for sales and marketing efforts, product development, and new cus-
tomer services.
246 9 IoT Vertical Markets and Connected Ecosystems
Analysts believe that manufacturers who have been exposed to the values driven
by connected device have a superior advantage. Their businesses will be shaped by
new, significant revenue opportunities emerging from the availability of the
information provided by these newly connected devices.
In the remainder of this chapter, we will describe the new IoT ecosystem-based
business model, using IT use cases for illustration, and then describe the key gaps to
allowing OEM, VAR, SI, and ISV to form partnership to develop end-to-end IoT
solutions.
As we just mentioned in Sect. 9.2, suppliers have been able to connect their devices
(e.g., jet engines) to send information to their data centers for some time even
before IoT fully materialized. However, proprietary communication protocols and
algorithms were often utilized. The proprietary algorithms were used by tools to
sense, collect, store, analyze, and transport the data. Proprietary systems are rigid in
nature, developed to support a single solution, and are prohibitively expensive to
support and maintain (e.g., over satellites).
IoT promises to provide an open and efficient solution that can be utilized across
multiple environments and technologies. The Internet Protocol itself has been
shown to present a proficient and open approach to support “as a service” model as
illustrated in Chap. 3.
Before we introduce IoT ecosystem solutions, however, we will define the key
terminologies to be used in the rest of this chapter.
• Product, device, or machine refers to an “entity to be managed” such as IoT
gateway, router, switch, card on the switch, platform, application or network
management system. Such entity is expected to have a unique identifier (i.e., IP
address).
• Supplier (or vendor) refers to the company that manufactures, sells, and/or
leases the device/machine; for example, Cisco is a supplier of networking
devices, Rolls-Royce or GE is a supplier of jet engines, and Caterpillar is a
supplier of heavy machinery.
• Enterprise (or network owner) refers to a business/company that has purchased
services and purchased or leased the required devices/products that are required
to run the services. For example, AT&T is a customer of Cisco and an owner of
AT&T network. An end subscriber to AT&T services is a customer of AT&T
and an owner of a device managed by AT&T.
• Partner refers to the third-party company that partners with a vendor to service a
customer network. The partner may be an OEM, VAR, SI, ISV, or business
partner on the service level; e.g., IBM is a partner of Cisco that may be hired by
AT&T to manage/service AT&T network.
9.4 Connected Ecosystems 247
In this section, we will describe multiple flavors of ecosystem models that have
resulted from the IoT models with connectivity and device intelligence. But first,
we will describe the traditional model. Historically, vendors have sold their prod-
ucts to an enterprise. The enterprise fully manages the products on their own, as
shown in Fig. 9.8, or the enterprise outsources the management of such products to
a single or multiple partners, as shown in Fig. 9.9.
In IoT, the support paradigm is expected to be a combination of the above two
models. We will refer to this model as a Full Ecosystem Model which has been
empowered by virtualization and cloud computing. Figure 9.10 shows a flavor of
such model with customer–partner–supplier relationships. In this model, network
vendors and/or their partners are often contracted by the network owners to manage
the network as well as the services that are offered on the networks.
The depth of such contracts varies between companies and typically depends on
the structure, resources, and expertise of the client. It can range from a limited
device warranty service where vendors are responsible for the health of their
devices by providing technical assistance center (TAC) support and return material
authorization (RMA) to full managed service where the network vendor and/or its
partner is responsible for the comprehensive management functions as well as the
end-to-end services offered by the network owner to end customers. In this case, the
enterprise may own some aspects of the service management (e.g., in charge of
monitoring and fixing level 0 and level 1 problems). The partner owns more
complex aspects of service management (e.g., level 2) and the vendor is responsible
for levels 3 and 4 which may include fixing defects by subject matter experts as
well as RMAs and firmware update support.
It should be noted that:
• Level 0 typically means self-support by searching support documentation such
as FAQs and information from the Internet. It allows users to access and resolve
issues on their own without contacting a local helpdesk or service desk for
resolution.
• Level 1 is the initial support-level responsible for basic customer issues.
• Level 2 is a more in-depth technical support level than Level 1 with more
experienced technicians with knowledge on a particular product or service.
• Level 3 is the highest level of support in a three-tiered technical support model
responsible for handling the most difficult or advanced problems.
• Level 4: While not universally used, a fourth level often represents an escalation
point beyond the organization, e.g., The Research & Development organization
that has developed the code and algorithms.
Other flavors of the Full Ecosystem Model include multiple partners and even
vendors for the same IoT layer (e.g., sensors from multiple vendors). In this case,
data integrity is very essential to prevent partner 1, for example, from accessing data
managed by partner 2 especially when partners 1 and 2 are competitors.
In all of these three cases (Figs. 9.8, 9.9, and 9.10), the value of an IT product
has been limited to the product itself and a traditional maintenance and support
contract. With IoT, these support and “break-fix” contracts provide a valuable
augmentation to the product for customers and have a potential to grow to a
considerable scale.
The IoT ecosystem model cannot work properly without addressing data privacy,
standardization, and security.
9.4 Connected Ecosystems 249
Data privacy is vital to prevent data from being exposed to hackers and com-
petitors. Data privacy is very delicate in IoT connected ecosystem model: Data must
be shared but only with the appropriate vendors and/or partners to speed up the
discovery of any potential issue. With multiple partners involved, the three-way
ecosystem model that includes vendor–partner–enterprise (Fig. 9.9) requires a
fail-proof secure system that guarantees that sensitive data does not fall into the
wrong hands.
Security is important for every player including the enterprises, vendors, part-
ners, and of course the end customers. Ecosystem players are not willing to risk
investments unless standard technologies and methodologies are first established.
Standardization is essential to deliver scalable and flexible solutions to the
market at reasonable price. It makes it possible for individual stakeholders to
partner and work with IoT hardware (e.g., sensors, gateways) and software (e.g.,
IoT platform and applications) vendors, application developers, solution integra-
tors, data content owners, and connectivity providers.
Outsourcing the management and operation of the network is gaining significant
attractiveness in recent years. It benefits the enterprises in many ways. Examples of
such benefits include the following:
A. Allowing enterprises to concentrate on their own business and leave IT-related
functions to the experts. This is especially important for small or medium
business (e.g., small banks and retailers) with limited IT resources.
B. Allowing network owners to introduce and deploy new technologies quickly.
Network owners do not need to hire or train subject matter experts every time
that a new service/technology is introduced.
250 9 IoT Vertical Markets and Connected Ecosystems
C. Allowing enterprises to take more intelligent risks (e.g., trying multiple tech-
nologies at the same time) by taking advantage of cloud computing to lease
required infrastructure only for the duration of service.
D. Allowing network vendors and partners to manage the full lifecycle of the
products and use the collected information to develop smarter products cus-
tomized for the customer. For example, a farming equipment company may
offer soil analysis system that analyzes farm soil in real time and determines the
best type and amount of fertilizer, in addition to the business of selling tradi-
tional farming equipment.
E. Allowing network vendors and partners to compare the network health and key
performance indicators (KPI) with other networks of the same type and provide
reports to the customers to repair and/or improve the network and service
performance.
Key capabilities to enable connected ecosystem models include:
A. Ability to acquire essential data from managed devices or products in a timely
fashion. Depending on the specific IoT vertical, such capability requires
agreements on the data to be collected, APIs and embedded storage via smart
agents for instance. Smart agent may be defined as capability that resides on the
device or product to collect the required data on regular basis or on demand. It
should also have the ability to notify northbound applications based on pro-
grammed conditions (e.g., notify northbound application when the temperature
change is more than 1°).
B. Ability for supplier or partner to analyze the data in timely fashion with a
service platform as we mentioned in Chap. 7.
C. Ability for suppliers or partners to correlate collected data against IC and
business intelligence rules and other databases to produce actionable results.
D. Two-way connectivity: Connectivity allowing devices and products to send
data securely to the supplier and/or partner service platform systems. It also
allows the service platform system to access the device or product secularly to
take action when required.
E. Secure entitlement and data transfer capability to register and entitle customer
networks and communicate securely (via encryption and security keys) with
service providers or network vendors as we mentioned in details in Chap. 8.
With the above capabilities, services will be transitioned from being reactive to
being proactive and predictive.
9.5 Summary 251
9.5 Summary
This chapter introduced key IoT verticals that included agriculture and farming,
energy, oil and gas, enterprise, finance, healthcare, industrial, retail, and
transportations.
The chapter then presented a new IoT business model, driven by the availability
of new information, offering key business benefits to the companies that manu-
facture, support, and service those systems, products, or devices.
Next the chapter answered the top ten questions to deliver “anything as a ser-
vice” that includes: Which data is needed? How to capture the data? What type of
local analysis is needed? How to transmit the data? How to entitle, validate, parse,
and analyze the collected data once it is received by the backend system? What are
the QoS and GoS requirements? What type of real-time and non-real-time actions
should be taken in the impacted device and/or the network and which algorithms?
Which secure protocol should be used access the device/network from the backend
system and take action? And which trending algorithms should be used to predict
future measures?
Multiple IoT verticals in combination with the new ecosystem business model
were also introduced. The chapter clearly showed that no single vendor would be
able to address all business requirements. Finally, the chapter listed the key benefits
of the proposed IoT ecosystem and the capabilities to enable connected ecosystem
models to function properly.
1. What are the top ten IoT verticals as defined by oneM2M and ETSI standard
bodies?
2. This chapter stated that the real impact of IoT will only occur when data from
the silos is combined to create completely new types of applications. What does
this mean? Why is it important?
3. What are the top two challenges to the farming industry? Why does IoT address
these challenges?
4. Some companies identified the six pillars for IoT to include Connectivity, Fog
Computing, Security, Data analytics, Management and Automation and
Application Engagement Platform. What is meant by each area? Why each of
these areas is essential?
252 9 IoT Vertical Markets and Connected Ecosystems
6. Three main use cases were listed for IoT Agriculture and Farming. List another
use case.
7. What is the definition of a connected home? Provide an example.
8. Devices in connected homes can send information to service providers or
directly to homeowners. List an example for each case.
9. In the Farming as a Service (FaaS), Agriculture machinery companies are
utilizing drones when the cellular coverage is not available.
a. Besides drones, what other technology may be used?
b. How does drone technology work?
c. Compare pros and cons of drones vs. other Technology in part (a).
10. Describe how IoT is used to monitor and optimize solar energy plants?
11. Experts believe that the lack of IoT standards and communication protocols is
putting development in risk especially in Healthcare and Financial applications.
Why is that?
12. Define the top requirements and framework to introduce “Heat as a Service”
under smart building?
13. In IoT Retails use cases, retailers use customer smart phones to generate heat
maps that show how consumers move around stores. Why would a customer
download retailer apps? What can the retailer do if customers are not willing to
download the app?
14. In a table format, compare the transport, end device and location to perform
analytics for Thrust as a Service, Imaging as a Service, Farming as a Service,
and IT as a Service.
15. Section 9.3 mentioned that the IT infrastructure for business is growing in
complexity and becoming a moving target. How is the infrastructure becoming
more complex? Provide examples.
9.6 Problems and Exercises 253
22. Some IoT standard bodies have combined “IoT Energy” and “IoT Oil and Gas”
into one vertical, called “Energy”. However, the authors have decided to keep
“IoT Energy” and “IoT Oil and Gas” as two separate verticals. What was their
arguments based upon?
23. What is the 80-20 Business Rule? Which IoT Businesses does it apply to?
24. Why many suppliers are utilizing IoT connectivity to generate information
value not just for product servicing but also over the entire product lifespan?
Provide examples of such information.
25. What is Level 0-4 support in Technical Services? Is there a Level 0? If so, what
is it?
26. What is IoT Full Ecosystem Model? Which major technology has made such
model feasible?
27. What are the top three requirements that are required for the IoT Connected
Ecosystems Model to work? Provide a brief summary of each requirement?
254 9 IoT Vertical Markets and Connected Ecosystems
28. Why outsourcing the management and operation of an IoT network is gaining
significant attractiveness in recent years?
29. What are the top five capabilities to enable connected ecosystem model for
IT-based service?
References
1. OneM2M White Paper, The inter operability enabler for the entire M2M and IoT ecosystem,
January 2015, Online: http://www.onem2m.org/images/files/oneM2M-whitepaper-January-
2015.pdf
2. OneM2M Technical Report: OneM2M-TR-0001-UseCase, September 23, 2013
3. TM Forum Vertical Markets and Connected Ecosystems, Online: https://www.tmforum.org/
vertical-markets-connected-ecosystems/
4. Internet of Things World Forum Cisco Day 1 Presentation, October 14, 2014, Online: http://
www.slideshare.net/BessieWang/iot-world-forum-press-conference-10142014
5. A. Slaughter, G. Bean, A. Mittal, in Connected Barrels: Transforming Oil and Gas Strategies
with the Internet of Things. Deloitte University Press, August 12, 2015, Online: http://dupress.
com/articles/internet-of-things-iot-in-oil-and-gas-industry/
6. SAP, The CEO perspective: Internet of Things for oil and gas top priorities to build a
successful strategy, 2014, Online: https://www.sap.com/bin/sapcom/en_us/downloadasset.
2014-10-oct-30-20.the-ceo-perspective-internet-of-things-for-oil-and-gas-pdf.html
7. Liblium, 50 sensor applications for a smarter World, Online: http://www.libelium.com/top_
50_iot_sensor_applications_ranking/
8. Rolls-Royce Totalcare: Meeting the needs of Key Customers, Executive Briefing #6, March
2013, Online: http://www.som.cranfield.ac.uk/som/dinamic-content/media/Executive%
20Briefing%206%20-%20RR%20Totalcare%20-%20Mtg%20the%20Needs%20of%20Key%
20Customers%20%20-%208%20Mar%2010%20v9.pdf
9. Driven by Increased Demands on Healthcare Suppliers, Connected medical imaging
equipment to grow at a 17% CAGR, ABI Research, March 20, 2015, Online: https://www.
abiresearch.com/press/driven-by-increased-demands-on-healthcare-supplier/
10. IoT Services for Medical Imaging Equipment Market: MRI, Xray, CT Scanners, and
Tomography: ABI Research, Online: https://www.abiresearch.com/market-research/product/
1021023-iot-services-for-medical-imaging-equipment/
11. Federal energy Regulatory Commission Assessment of Demand Response and Advanced
Meeting Staff Report, December 2008, Online: http://www.ferc.gov/legal/staff-reports/12-08-
demand-response.pdf
12. J. Eckenrode, in The Internet of Things and Financial Services: Too Much—or Not Enough—
of a Good Thing? Deloitte Quick Look Blog, October 7, 2015, Online: https://quicklookblog.
com/2015/10/07/the-internet-of-things-and-financial-services-too-much-or-not-enough-of-a-
good-thing/
13. Technology Target, A guide to healthcare IoT possibilities and obstacles, Online: http://
searchhealthit.techtarget.com/essentialguide/A-guide-to-healthcare-IoT-possibilities-and-
obstacles
14. The IoT, What the IoT means for the public sector, Hitachi Data Systems, Online: http://www.
isaca.org/Groups/Professional-English/cybersecurity/GroupDocuments/IoT%20in%20the%
20Public%20Sector.pdf
15. A. Rayes, in Book Chapter: “IP-Based Smart Services”. Network Embedded Management
and Applications, Springer, 2012, http://www.springer.com/engineering/signals/book/978-1-
4419-6768-8
References 255
10.1 Overview
The IoT industry landscape is crowded with different standards bodies and orga-
nizations chipping away at various aspects of the technology. As is typically the
case early on in the technology cycle, some of the organizations are tackling the
same problem and hence a subset of the standards that they are proposing are
overlapping and competing for mainstream adoption. This creates confusion in a
vast and multifaceted industry and inevitably slows down product development, as
vendors do not want to take bets on standards that may never take off in the market
(think Blu-ray versus HD DVD in the video media format war days).
Some of the industry organizations focus their efforts on a specific IoT vertical,
whereas others are involved in defining crosscutting technologies that apply across
various IoT applications and verticals. Furthermore, not all organizations are
actively defining their own standards; rather some are promoting harmony and
alignment among others, which define and ratify standards.
What is common across all these standards is that they are all based on (or
migrating to) a common normalization layer, the IP network layer, which guaran-
tees system interoperability while accommodating a multitude of link layer tech-
nologies, in addition to a plethora of application protocols. IP constitutes the thin
waist of the proverbial hourglass that is the IoT’s protocol stack (refer to Fig. 10.1).
The diversity in physical and link layer standards is a manifestation of the IoT
challenges and requirements that impact that layer of the protocol stack, as was
discussed in Chap. 5 (Sect. 5.1.1). By the same token, the large number of appli-
cation layer standards is a reflection of the many industry verticals and applications
(as discussed in Chap. 9) that IoT enables.
In this chapter, we will provide an overview of the key IoT standards defining
organizations and the various protocols that they have been specifying or pro-
moting. Our focus will be on standards operating at the physical, data link,
Network, and transport layers of the OSI model presented in Chap. 2. We will also
touch upon a select subset of standards efforts operating at the application layer of
the model. As shown in Fig. 10.1, such efforts are numerous, industry vertical
specific, and require expert domain knowledge in the associated industry or
application (e.g., IEC 61968, ANSI C12.19/C12.22, and DLMS/COSEM are smart
grid standards).
The IEEE 1451 series addresses smart transducers, which are defined as devices
that convert a physical measurement into an electrical signal, or vice versa.
Transducers include sensors or actuators that were discussed in Chap. 3. The
standards define communication interfaces for interconnecting smart transducers to
networks or external systems via either wired or wireless mechanisms. Among the
main elements of these standards is the definition of the Transducer Electronic Data
Sheets (TEDS). The TEDS is associated with every smart transducer. It provides
relevant technical data pertaining to the transducer in a standard format. Such data
includes the device identity, type, accuracy, calibration, or other
manufacturer-related information. The standards define common mechanisms by
which a transducer can communicate its associated TEDS to the connected network
or system. TEDS may be implemented in one of two ways. They can be embedded
onboard within the transducer itself, typically on some memory component such as
EEPROM. Alternatively, a virtual TEDS can be implemented as an off-board data
file that is stored in some component separate from the transducer albeit accessible
to the instrument or system connected to the transducer. Virtual TEDS allows the
extension of the TEDS standard to legacy sensors and devices where onboard or
embedded memory may not exist.
The IEEE 1547 series addresses smart grid, and in particular handling distributed
resources in electric power systems. The standard defines technical requirements for
interconnecting distributed generators and energy storage systems to electric power
systems. Examples of such generators include fuel cells, photovoltaic, microturbine,
reciprocating engines, wind generators, large turbines, and other local generators.
The technology helps utilities tap into surplus electricity from alternative and
renewable energy sources. Furthermore, the IEEE 1547 series deals with various
facets of renewable energy, including microgrids (IEEE 1547.4) and secondary
networks for distributed resources (IEEE 1547.6).
The IEEE 1609 series addresses intelligent transportation systems (ITS) and focuses
on Wireless Access in Vehicular Environments (WAVE). The series defines the
architecture, services and interfaces to enable secure vehicle-to-vehicle and
vehicle-to-roadside infrastructure wireless communication. The standard enables
applications that include vehicle safety, enhanced navigation, traffic management,
260 10 Industry Organizations and Standards Landscape
and automated tolling. The IEEE 1609 series specifies standards for communication
security (IEEE 1609.2), WAVE connection management (IEEE 1609.3) and Layer
3 through Layer 7 operation across multiple channels on top of IEEE 802.11p.
The IEEE 1888 series focuses on ubiquitous green community control networks. It
describes remote control architecture for buildings, digital communities, and
metropolitan networks. The standard defines the data formats between systems as
well as the data exchange protocol that interconnects various components, including
gateways, storage systems, and application units over an IP network. This network
provides the open interfaces for public administration/service, property manage-
ment, and individual service. The interfaces enable central management, remote
surveillance, and collaboration.
IEEE 1900 series focuses on dynamic spectrum access radio systems and networks.
One of the main goals of this series is to improve spectrum utilization. To that
effect, the standard explores architectures and interfaces for dynamic spectrum
access in the TV whitespace frequency bands. It also includes management systems
for optimization of radio resource usage, spectrum access control and compliance
with regional regulations aimed at protecting broadcast systems. The standard also
defines policy language and architectures for managing dynamic spectrum access
among distributed heterogeneous devices.
IEEE 2030 series focuses on the smart grid, including electric vehicle infrastructure.
It defines a reference model for smart grid interoperability including the three pillars
of energy, information, and communications technologies. The standard addresses
applications for electric vehicles and associated support infrastructure used for
personal and mass transit. Furthermore, the standard covers energy storage systems
that are integrated with the electric power infrastructure and relevant test procedures
for these systems.
10.2 IEEE (Institute of Electrical and Electronics Engineers) 261
The IEEE 2040 series focuses on connected, automated, and intelligent vehicles.
The series defines an overview and architectural framework (IEEE 2040), taxon-
omy and definitions (IEEE 2040.1), as well as testing and verification (IEEE
2040.2) standards. The series leverages existing standards where applicable.
The IEEE 2413 series defines an architectural framework for the IoT, including
descriptions of various IoT verticals, definitions of their associated abstractions and
identification of commonalities across those verticals. The standard establishes a
reference model for IoT domain verticals and an architecture that defines the
building blocks and common elements.
10.3 IETF
The IETF has been instrumental in defining and standardizing Internet technologies,
including IPv4 and IPv6 as well as numerous routing protocols (e.g., OSPF, RIP,
PIM, BGP), application protocols (e.g., HTTP, LDAP, and SMTP), and security
protocols (e.g., TLS, IPSec, and IKE). In 2006, work started in the IETF on a
number of IoT standards. The initial scope centered on enabling IP on top of IEEE
802.15.4 wireless networks but has expanded beyond that over time. Currently,
there are five IETF working groups focusing on IoT-related technologies. We will
discuss their work next.
262 10 Industry Organizations and Standards Landscape
10.3.1 ROLL
The Routing over low-power and lossy networks (ROLL) working group focuses
on routing issues for low-power and lossy networks (LLNs). LLNs typically
comprise of embedded devices with limited power, memory, and processing
resources that are interconnected by a variety of link technologies. LLNs cover a
multitude of applications such as building automation, smart homes, smart health
care, industrial monitoring, environmental monitoring, asset tracking, and smart
grid. The ROLL working group is concerned with defining routing requirements for
a subset of the aforementioned applications: industrial (RFC 5673), connected
home (RFC 5826), building automation (RFC 5867), and urban sensor networks
(RFC 5548). The working group is approaching these requirements by defining an
IPv6 architecture that enables scalable networks of constrained devices to com-
municate with high reliability. Routing security and manageability (e.g., autonomic
configuration) are among the key issues that ROLL is looking into.
ROLL analyzed the particular routing protocol requirements of LLNs, starting
with the constraints that these protocols must adhere to. The following constraints
were identified, which stem from the constrained nature of the nodes in LLNs:
• Protocols need to operate with minimal amount of state.
• Protocols must be optimized for efficiency, i.e., saving energy, memory, and
processing power.
• Protocols must support unicast and multicast application traffic patterns.
• Protocols must be very efficient in encoding information to operate with very
small link layer maximum transfer unit (MTU) size.
The ROLL working group evaluated existing routing protocols to examine
whether they could operate within the confines of the above constraints. The fol-
lowing protocols were analyzed: OSPF (RFC 2328), IS-IS (RFC 1142), RIP (RFC
2453), OLSR (RFC 3626), TBRPF (RFC 3684), AODV (RFC 3561), DSR (RFC
4728), DYMO, and OLSv2 (RFC 7181). Based on this analysis, the working group
determined that none of the existing protocols meet the requirements of LLNs. As a
result, the working group defined a new protocol, RPL, which was discussed in
Sect. 5.2.2.2.
10.3.2 CORE
applications are forced to operate under the same set of constraints that define
LLNs, namely limitations on memory, processing power and energy, as well as
high loss rates and small packet sizes. In addition, the applications must deal with
the fact that nodes are typically powered off and wake up for a short period of time.
The framework defined by the working group assumes a general operating
paradigm for applications where network nodes run embedded Web services and
are responsible for resources (e.g., sensors or actuators) that can be queried or
manipulated by remote nodes. Furthermore, nodes may publish local resource
changes to remote nodes that have subscribed to receive notifications. CORE has
defined the CoAP protocol, which was discussed in Sect. 5.3.5.1, to support this
application framework.
One of the key challenges to applications running in these constrained envi-
ronments is security. The working group’s scope includes selecting viable
approaches for security bootstrapping to handle secure service discovery, distri-
bution of security credentials, and application-specific node configuration.
10.3.3 6LowPAN
The IPv6 over Low Power Wireless Personal Area Networks (6LowPAN) working
group focused on enabling IPv6 over IEEE 802.15.4 networks. The group started its
work in 2005 and concluded in 2014 after working through the following goals:
First, define a fragmentation and reassembly layer to allow adaptation of IPv6 to
IEEE 802.15.4 links. This is because the link protocol data units may be as small as
81 bytes, which is much smaller than the minimum IPv6 packet size of 1280 bytes.
Second, introduce an IPv6 header compression mechanism to avoid excessive
fragmentation and reassembly, since the IPv6 header alone is 40 bytes long, without
optional headers.
Third, specify methods for IPv6 address stateless auto configuration to reduce
the provisioning overhead on the end nodes.
Fourth, examine mesh routing protocol suitability to 802.15.4 networks, espe-
cially in light of the packet size constraints.
Finally, investigate the suitability of existing network management protocols and
mechanisms in terms of meeting the requirements for minimal configuration and
self-healing as well as meeting the constraints in processing power, memory, and
packet size.
The working group produced six standards: 6LowPAN problem statement
document (RFC 4919), IPv6 adaptation layer and header format specification (RFC
4944), IPv6 header compression specification (RFC 6282), 6LowPAN use cases
and applications document (RFC 6568), IPv6 routing requirements document (RFC
6606), and IPv6 neighbor discovery optimization specification (RFC 6775).
264 10 Industry Organizations and Standards Landscape
10.3.4 6TisCH
This working group is chartered with enabling IPv6 over the time-slotted channel
hopping (TSCH) mode of IEEE 802.15.4e. The target network comprises of
low-power and lossy networks (LLNs) connected through a common backbone via
LLN Border Routers (LBRs). The focus of the working group is on defining an
architecture that describes the design of 6TiSCH networks in terms of the com-
ponent building blocks and protocol signaling flows. The working group will also
produce an information model that describes the management requirements of
6TiSCH network nodes, together with a data model mapping for an existing pro-
tocol, such as Concise Binary Object Representation (CBOR) over the Constrained
Application Protocol (CoAP). In addition, the working group will define a minimal
and a best practice 6TiSCH configuration that provides guidance on how to con-
struct a 6TiSCH network using the Routing Protocol for LLNs (RPL) and static
TSCH schedule. Finally, the working group may produce implementation and
coexistence guides to help accelerate the industry.
10.3.5 ACE
10.4 ITU
ITU published one of the first reports on “The Internet of Things” in 2005 and
has been involved in IoT since then, producing multiple standards documents in this
space, as discussed next.
Recommendation ITU-T Y.2060, Overview of the Internet of Things, provides a
definition of IoT, terming it: “A global infrastructure for the Information Society,
enabling advanced services by interconnecting (physical and virtual) things based
on, existing and evolving, interoperable information and communication tech-
nologies.” It describes the concept and scope of IoT, discussing its fundamental
characteristics and high-level requirements, and providing a detailed overview of
the IoT reference model. Additionally, the standard discusses the IoT ecosystem
and accompanying business models.
Recommendation ITU-T Y.2061, Requirements for support of machine-oriented
communication applications in the NGN environment, offers a description of
machine-oriented communication (MOC) applications in next-generation network
(NGN) environments; covering the NGN extensions, additions and device capa-
bilities required to support MOC applications.
Recommendation ITU-T Y.2062, Framework of object-to-object communication
for ubiquitous networking in an NGN environment, discusses the concept and
high-level architectural model of such communication, and provides a mechanism
to identify objects and enable communications between them.
Recommendation ITU-T Y.2063, Framework of Web of Things, specifies the
functional architecture including conceptual and deployment models for the Web of
Things. The standard also provides an overview of service information flows and
use cases in home control.
Recommendation ITU-T Y.2069, Terms and definitions for Internet of Things,
specifies the terms and definitions relevant to the Internet of Things (IoT) from an
ITU-T perspective, in order to clarify the Internet of Things and IoT-related
activities.
ITU has multiple study groups looking into various aspects of IoT: Study Group
11 started activity in July 2014 and is looking into application programmatic
interfaces and protocols for IoT as well as IoT testing. Study Group 13 focuses on
the networking aspects of IoT. Study Group 15 looks at smart grid and home
networks. Study Group 16 focuses on IoT applications including e-Health. Study
Group 17 is looking at the security and privacy protection aspects of IoT. In
addition, there are multiple focus groups looking at topics including smart cities,
water management, and connected cars.
The “Internet Protocol for Smart Objects” (IPSO) Alliance is an open nonprofit
special interest group that promotes the use of the Internet protocol to connect smart
objects (i.e., things) to the network. It was formed in 2008 and includes members
from technology and communication companies in addition to industry verticals
266 10 Industry Organizations and Standards Landscape
companies (e.g., energy). The alliance complements the work of other standards
defining bodies, such as the IETF, IEEE, and ETSI, by promoting IoT technologies
through publishing whitepapers and hosting webinars, interoperability events and
challenges.
The interoperability events have helped in advancing IP technologies for IoT by
providing a vendor-neutral forum to test evolving IoT technologies and providing
feedback to the standards bodies defining them in order to fix potential issues that
affect interoperability. For instance, in one of the interoperability events held in
conjunction with the IETF, a number of issues related to early versions of RPL were
communicated back to the Routing over low-power and lossy networks (ROLL)
working group in order to improve the developing drafts.
IPSO has published the IPSO application framework, which defines a repre-
sentational state transfer RESTful design for use in IP smart objects for
machine-to-machine applications. It specifies a set of REST interfaces that may be
used by a thing to represent its available resources and to interact with other things
and remote applications. The framework was extended to cover a wide range of use
cases and to more precisely describe the parameters of smart objects during an
interoperability event held during IETF 84 in Vancouver, Canada.
10.6 OCF
10.7 IIC
its goals to facilitate open forums for sharing and exchanging real-world ideas,
practices, and insights, in addition to building confidence around new and inno-
vative approaches to security. The work of the IIC does not include consumer IoT,
rather it is targeted at business verticals such as energy, healthcare, transportation,
and manufacturing.
10.8 ETSI
10.9 oneM2M
In July 2012, seven standards development organizations (TIA and ATSI from
USA, ARIB and TTC from Japan, CCSA from China, ETSI from Europe, and TTA
from Korea) launched a global organization to jointly define and standardize the
common horizontal functions of the IoT application services layer under the
umbrella of the oneM2M Partnership Project (http://www.onem2m.org). The
founders agreed to transfer and stop their own overlapping IoT application service
layer work. The partnership has grown to include, in addition to the seven standards
bodies, five global information and communications technology forums and more
than 200 companies. oneM2M states among its objectives the development of the
following:
268 10 Industry Organizations and Standards Landscape
The Thread working group was formed in July 2014 and included Google’s Nest
subsidiary, Samsung, ARM Holdings, Freescale, Silicon Labs, Big Ass Fans, and
the lock company Yale. The purpose of the group is to promote Thread as the
protocol for the connected home and certify products that support this protocol. The
Thread protocol is a closed-documentation royalty-free protocol that runs on top of
IEEE 802.15.4 and 6LowPAN. It adds functions such as security, routing, setup,
10.11 Thread Group 269
and device wakeup to maximize battery life. Thread competes with other protocols
already in this space such as Bluetooth Smart, Z-Wave and ZigBee.
10.13 TIA
The Z-Wave Alliance is an industry consortium of over 300 companies creating IoT
products and service over the Z-Wave protocol. Z-Wave is a short-range wireless
protocol, initially developed by a small Danish company called Zensys. Z-Wave is
a vertically integrated protocol, which runs over its own radio. Z-Wave’s physical
and media access layers were ratified by the International Telecommunication
Union (ITU) as the international standard G.9959. Z-Wave is often considered to be
the main competitor to ZigBee, but unlike ZigBee, it only focuses on home envi-
ronment applications.
10.15 OASIS
The LoRa Alliance is an open, nonprofit association to standardize Low Power Wide
Area Networks (LPWAN) using the LoRa protocol (LoRaWAN). The alliance was
announced in January 2015, and initial members include IoT solution providers
Actility, Cisco, Eolane, IBM, Kerlink, IMST, MultiTech, Sagemcom, Semtech, and
Microchip Technology, as well as telecom operators: Bouygues Telecom, KPN,
SingTel, Proximus, Swisscom, and FastNet (part of Telkom South Africa). The
LoRA protocol provides long-range wireless connectivity for devices at low bit rates
(from 0.3 to 50 kbps) with low power consumption for battery-powered devices.
10.16 LoRa Alliance 271
LoRaWAN transceivers can communicate over distances of more than 100 km (62
miles) in favorable environments, 15 km (9 miles) in typical semi-rural environ-
ments, and more than 2 km (1.2 miles) in dense urban environments.
The LoRa alliance claims that the scope of applications where LPWAN’s are
applicable is endless but indicates that the main applications driving current net-
work deployments are intelligent building, supply chain, Smart City, and
agriculture.
The road to a standards-based IoT is well underway. The industry has made sig-
nificant strides toward converging on the IP network protocol as the common basis
for IoT communication protocols. Multiple physical and link layer standards have
been defined to address the requirements of constrained devices, which are limited in
both compute capacity as well as available power. Some work remains at these
layers, particularly with regards to adding support for determinism and
time-sensitive applications. At the network layer, the gaps are relatively limited and
manifest in the need to add support for routing over time-slotted channel hopping
(TCSH) link technologies. The lion’s share of the gaps exists at the Application
Protocols and Application Services layers. The former is currently characterized by a
multitude of competing and largely functionally overlapping standards. No clear
winner has emerged; especially as the industry adoption remains highly fragmented.
The latter is currently in a state where the industry has more or less rallied around a
common forum, namely oneM2M, and an initial standard has been released, which
defines the Common Services Entities and Common Services Functions. However,
at the time of this writing, the degree of market acceptance and adoption of the
standard is yet to be seen. In addition, the released standard is only a first step toward
standardization as the area of semantics remains largely unchartered territory.
Figure 10.2 below summarizes the progress scorecard for IoT industry standards.
10.18 Summary
14. Name two IoT Application Protocols that are being standardized by OASIS.
Describe what function does each protocol serve.
15. Is the ZigBee stack based on the Internet Protocol? Explain.
References
Lionel Florit
Open source in the computer industry is the publishing of source code or hardware
design, with associated licensing that permits the reuse, modification, improvement,
and potential commercialization under favorable terms. Example of favorable dis-
tribution terms includes the following criteria:
• Free distribution: Any party may sell or give away the open source component
as part of a larger system without being obligated to pay a royalty or other fee
for such sale.
• Source code/design: The source code or design must be distributed and made
publicly available.
• Derived works: Derivation and modification of the original open source com-
ponent is allowed under the original licensing terms.
• No discrimination: The license must not discriminate against any person, group
or a field of business, academics, or research.
• No packaging restrictions: The open source component is not limited to be used
as part of a specific distribution or product and is not precluded from being used
with other open source or closed source components.
• Technology neutral: There are no assumptions or conditions favoring a specific
technology or interface.
While any system can potentially be released under an open source license by its
owner, successful open source projects have associated with communities of
interest that are integral to their success. Such communities are typically geo-
graphically distributed and rely on electronic platforms for collaboration. These
platforms ensure process compliance, source code management, issue tracking, and
continuous integration and test.
The development life cycle of an open source activity is quite different from the
proprietary development cycle. Building a critical mass with an engaged open
production. Recently, John Donovan, CTO at AT&T mentioned that, today, open
source products represent about 5 % of their infrastructure. They plan for that
number to reach 50 % by 2020. The open source high-speed train is in motion and
there is no turning back.
(continued)
Cost Open source Proprietary
Maintenance Yes Yes
Support Yes Yes
However, even if the scene has changed, the format remains more or less the
same. A credible standards organization needs to have rules and processes in place
to ensure quality and openness. This also applies to IoT standards organizations
(Chap. 10). Therefore, the development cycle of IoT standards is on track to match
the pace of other technologies in “legacy” standards bodies, and this is to be
expected. There needs to be a requirements definition phase, a scoping phase, a
debate phase, a drafting phase, a review phase, and finally a voting or some sort of
consensus to sanction the work. Eventually, when the standard draft is stable
enough, companies can develop to it, which may add several months of delay
before a final stable implementation sees the light of day.
In the open source world however, things can proceed at a much faster rate.
A group of developers write source code, and they submit it to an existing project if
there is one. The code is peer reviewed. If it does not cause any regressions in the
system operation and follows the best practice coding guidelines, the code is
integrated. No one can block a contribution on the grounds that their company is
doing things differently, or because there is a better way to implement. If there is,
then code must be submitted by those making such claims. Eventually, the end
users will vote by evaluating the code and its functionality. Some user may feel
compelled to fix bugs so their company can use the product, and other users benefit
instantly.
Of course, the leap of faith a company may take by giving away the imple-
mentation of their technology is a substantial barrier to overcome. But the key to
success in open source is to add a “secret sauce” that complements the public
domain functions. The open source project then becomes a vehicle to get immediate
feedback on a way to do things, ignite the spark of curiosity, and attract potential
developers and partners. With a common basis built, new proprietary improvements
can be added on top of the public domain code. This brings all the players to a
higher common ground, which is beneficial for everybody, the producer and the
consumer of the open source project.
As we saw earlier, the way the companies approach open source and standards is
very different. However, since open source is beneficial for companies, standard
bodies quickly realized that they could use open source efforts for their benefit.
After all, what the consumers need is not a 300-page document describing in
mundane detail how a system should be implemented. Consumers want to have real
products in their hand, with real functionalities to use and evaluate in their own
business or home environments. This is not something that they get out of the
usually dry reading of a standards document. “Code is King” and having some
code, which implements a standard, is a very powerful combination. The standard
represents an agreement between several parties and the code is the proof that the
system on paper does indeed work.
11.4 Open Source Partnering with Standards 281
As mentioned previously, the IoT open source community is quite active. There are
several open projects: Some are backed by consortiums of large industry players,
and others are backed by just a single startup. Large or small, they all aim at
facilitating the deployment of IoT solutions. But, unfortunately, they are not
compatible with each other. Some of the larger efforts are attempting to bridge the
gap and connect with other overlapping communities or projects.
The list below is far from being exhaustive. It is merely meant to provide an
overview of active projects, which have the potential to make a difference in the IoT
space. The list is organized per the IoT reference model presented in Chap. 1,
Fig. 1.5.
11.5.1.1 Hardware
Arduino
Arduino is both a hardware specification for interactive electronics and a set of
software that includes an Integrated Development Environment (IDE) and the
Arduino programming language. Arduino is “a tool for making computers that can
282 L. Florit
sense and control more of the physical world than your desktop computer.” The
organization behind it offers a variety of electronic boards, starter kits, robots, and
related products for sale, and many other groups have used Arduino to build
IoT-related hardware and software products of their own.
GizmoSphere
GizmoSphere is an open source development platform for the embedded design
community; the site includes code downloads and hardware schematics along with
free user guides, specification sheets, and other documentation.
Tinkerforge
Tinkerforge is a system of open source stackable microcontroller building blocks. It
allows the control of motors and reading out sensors with the following pro-
gramming languages: C, C++, C#, Object Pascal, Java, PHP, Python, and Ruby
over a USB or Wi-fi connection on Windows, Linux and Mac OS X. All of the
hardware is licensed under CERN OHL (CERN Open Hardware License).
BeagleBoard
BeagleBoard offers credit card-sized computers that can run Android and Linux.
Because they have very low power requirements, they are a good option for IoT
devices. Both the hardware designs and the software they run are open source, and
BeagleBoard hardware (often sold under the name BeagleBone) is available
through a wide variety of distributors.
Contiki
Contiki is an open source operating system for networked, memory-constrained
systems with a particular focus on low-power wireless Internet of Things devices.
Examples of where Contiki is used include street lighting systems, sound moni-
toring for smart cities, radiation monitoring systems, and alarm systems. Other key
features include highly efficient memory allocation, full IP networking, very low
power consumption, dynamic module loading and more. Supported hardware
platforms include Redwire Econotags, Zolertia z1 motes, ST Microelectronics
development kits and Texas Instruments chips and boards. Paid commercial support
is available.
Raspbian
While the Raspberry Pi is not an open source project, many components of its OS
are. Raspbian is a free operating system based on Debian optimized for the
Raspberry Pi hardware.
11.5 A Tour of Open Source Activities in IoT 283
RIOT
This 1.5 kB embedded OS bills itself as “the friendly operating system for the
Internet of Things.” It fits in the category of Contiki and TinyOS. Forked from the
FeuerWhere project, RIOT debuted in 2013. It aims to be both developer and
resource friendly. It supports multiple architectures, including MSP430, ARM7,
Cortex-M0, Cortex-M3, Cortex-M4, and standard x86 PCs.
Kinoma
The Kinoma group’s hardware and software prototyping solutions help developers,
programmers, and designers rapidly create connected products. Owned by Marvell,
the Kinoma software platform encompasses three different open source projects.
Kimona Create is a DIY construction kit for prototyping electronic devices. Kimona
Studio is the development environment that works with Create and the Kinoma
284 L. Florit
Platform Runtime. Kimona Connect is a free iOS and Android app that links
smartphones and tables with IoT devices.
oneM2M, the Linux Foundation and Eclipse
The purpose and goal of oneM2M is to develop technical specifications, which
address the need for a common M2M service layer that can be readily embedded
within various hardware and software. oneM2M positions itself as a cross-vertical
platform. This means that it will be well suited for various sectors such as industrial,
energy, and home. These specifications are being implemented as open source
projects at the Linux Foundation (IoTDM), Eclipse (OM2M), and OCEAN.
Open Interconnect Consortium (OIC)
The goal of OIC is to enable application developers and device manufacturers to
deliver interoperable products across Android, iOS, Windows, Linux, Tizen, and
more. The Linux Foundation hosts a project called IoTvity, which provides open
source code for OIC. At the time of this writing, OIC and oneM2M are specifying
gateway functions to bridge the two domains.
IT6.eu, OpenIoT and IoTSyS
The European Union is actively financing the development of IoT research.
OpenIoT and IoTSyS are examples. The OpenIoT Web site explains that the project
is “an open source middleware for getting information from sensor clouds, without
worrying what exact sensors are used.” It aims to enable cloud-based “sensing as a
service.”
IoTSyS is an IoT middleware providing a communication stack for smart
devices. It supports multiple standards and protocols, including IPv6, oBIX,
6LoWPAN, CoAP, and Efficient XML Interchange.
DeviceHive
This project offers a data collection facility for connecting IoT devices. It includes
easy-to-use Web-based management software for creating devices, applying secu-
rity rules, and monitoring devices. The Web site offers sample projects built with
DeviceHub, and it also has a “playground” section that allows users to use
DeviceHub online to see how it works.
IoT Toolkit
The group behind this project is working on a variety of tools for integrating
multiple IoT-related sensor networks and protocols. IoT Toolkit implements HTTP/
REST, CoAP, and MQTT protocols and acts as a stateful bridge between these
different protocols.
The primary project is a Smart Object API, but the group is also working on
HTTP-to-CoAP Semantic mapping, an application framework with embedded
software agents and more.
Note that there is a difference between open source efforts implementing a
standard (such as oneM2M and OIC) versus open source efforts trying to realize a
middleware implementation with their own data models and protocols. We expect
the industry to be more likely to embrace the former.
11.6 Conclusions 285
11.6 Conclusions
There are many aspects to IoT (device, transport, data aggregation and collection,
big data, etc.), and this translates to a large number of standards and slow progress.
Most of the standards are backed by an open source activity. It is now becoming
clear that the industry wants to see working code in addition to seeing concise
documents describing a technology. The open source community has preceded the
standards in most cases, proposing working solutions to real problems.
Therefore, there are two classes of open source activities in IoT: those backed by
a standard, and those evolving by themselves. The latter group is of course more
agile and can offer solutions without the overhead of standard development pro-
cedures. However, in many cases, there is no domination of one group over the
others. This leads to the conclusion that, eventually, a combination of standard plus
associated open source will be the long-term solutions the industry will adopt.
1. What is Open Source? What are the key benefits to the producer and users?
2. Why Open Source Platform is appealing to developers? Why is it appealing to
application consumers (companies and individuals)?
3. List two main disadvantages of Open Source Projects.
4. Linux is a well know open Source project. List three other examples of suc-
cessful open source projects
5. Name three examples of IoT open source activities
6. Are there major differences between standards and open source developments?
If so, what is the key difference (i.e. what are the outcomes / deliverables of of
standards bodies and what are those for Open Source)? What is the relationship
between the two?
7. Name three standards which are implemented in Open Source.
8. When was the Open Source label developed? Who developed it?
9. A license defines the rights and obligations that a licensor grants to a licensee.
What rights does an Open Source license grant to its users? What do such
license impose?
10. Certifications often help to build higher user confidence. Are there certifications
issued for open source? If so, name two examples.
11. “Global Desktop Project” is an example of Open Source initiative developed by
the United Nation University. What does it do?
286 L. Florit
12. What are the main phases of IoT standard development cycle? What are the
main phases of IoT open source developments? What are their key differences?
13. It is said that the key to success in Open Source is to add a “secret sauce” that
complements the public domain functions. Why is it the case? Can you provide
an example?
14. What is meant by “Code is King” in Open Source?
References
6LowPAN IPv6 over Low power Wireless Personal Area Networks IETF
6TiSCH IPv6 over Time Slotted Channel Hopping mode of IEEE IETF
802.15.4
AAA Authentication, authorization, and accounting. See also Various
TACACS+ and RADIUS.
AAAA Authentication, Authorization, Accounting and Auditing Various
Access Modes The security appliance CLI uses several command Cisco
modes. The commands available in each mode vary. See
also user EXEC mode, privileged EXEC mode, global
configuration mode, command-specific configuration
mode.
ACE Access Control Entry. Information entered into the Cisco
configuration that lets you specify what type of traffic to
permit or deny on an interface. By default, traffic that is
not explicitly permitted is denied.
ACL Access Control List. A collection of ACEs. An ACL lets Cisco
you specify what type of traffic to allow on an interface.
By default, traffic that is not explicitly permitted is
denied. ACLs are usually applied to the interface which
is the source of inbound traffic. See also rule, outbound
ACL.
Actuators “An actuator is a type of motor that is responsible for Wikipedia
moving or controlling a mechanism or system. It is
operated by a source of energy, typically electric current,
hydraulic fluid pressure, or pneumatic pressure, and
converts that energy into motion. An actuator is the
mechanism by which a control system acts upon an
environment. The control system can be simple (a fixed
mechanical or electronic system), software-based (e.g. a
printer driver, robot control system), a human, or any
other input”.
Address An address is used for locating and accessing – “talking IoT-A
to” – a Device, a Resource, or a Service. In some cases,
the ID and the Address can be the same, but conceptually
they are different.
Address Address Resolution Protocol. A low-level TCP/IP Cisco
and subnet parts, and zeros for the host part. The mask
should contain at least the standard network portion, and
the subnet field should be contiguous with the network
portion.
Microcontroller “A microcontroller is a small computer on a single Wikipedi
integrated circuit containing a processor core, memory,
and programmable input/output peripherals. Program
memory in the form of NOR flash or OTP ROM is also
often included on chip, as well as a typically small
amount of RAM.Microcontrollers are designed for
embedded applications, in contrast to the
microprocessors used in personal computers or other
general purpose applications.
protocol.
RFC Request for Comments. RFC documents define protocols Cisco
and standards for communications over the Internet.
RFCs are developed and published by IETF.
RFD IEEE 802.15.4 Reduced Function Device. Implements IEEE
minimal subset of the protocol stack, and is typically
battery powered.
RFID “The use of electromagnetic or inductive coupling in the ISO/IEC
radio frequency portion of the spectrum to communicate 19762
to or from a tag through a variety of modulation and
encoding schemes to uniquely read the identity of an RF
Tag.”
RIP Routing Information Protocol. Interior gateway protocol Cisco
(IGP) supplied with UNIX BSD systems. The most
common IGP in the Internet. RIP uses hop count as a
routing metric.
ROLL IETF Routing over Low Power and Lossy Networks IETF
workgroup.
RPL Routing Protocol for Low Power and Lossy Networks, a IETF
distance vector routing protocol for IoT standardized in
RFC6550.
RSA A public key cryptographic algorithm (named after its Cisco
inventors, Rivest, Shamir, and Adelman) with a variable
key length. The main weakness of RSA is that it is
significantly slow to compute compared to popular
secret-key algorithms, such as DES. The Cisco
implementation of IKE uses a Diffie-Hellman exchange
to get the secret keys. This exchange can be
authenticated with RSA (or pre-shared keys). With the
Diffie-Hellman exchange, the DES key never crosses the
network (not even in encrypted form), which is not the
case with the RSA encrypt and sign technique. RSA is
not public domain, and must be licensed from RSA Data
Security.
RSH Remote Shell. A protocol that allows a user to execute Cisco
commands on a remote system without having to log in
to the system. For example, RSH can be used to remotely
examine the status of a number of access servers without
connecting to each communication server, executing the
command, and then disconnecting from the
communication server.
RSU Road Side Unit Various
RTP Real-Time Transport Protocol. Commonly used with IP Cisco
networks. RTP is designed to provide end-to-end
network transport functions for applications transmitting
real-time data, such as audio, video, or simulation data,
Appendix A: Glossary 309
security context You can partition a single security appliance into Cisco
multiple virtual firewalls, known as security contexts.
Each context is an independent firewall, with its own
security policy, interfaces, and administrators. Multiple
contexts are similar to having multiple stand-alone
firewalls.
security services See cryptography. Cisco
Selective- This attack takes place in the case when the object can’t Various
Forwarding send its generated packets directly to the fog device but
Attack must rely on other objects that lie along the path towards
the fog device to deliver those packets
Semantics The study of meaning. It focuses on the relation between Wikipedia
signifiers, like words, phrases, signs, and symbols, and
what they stand for; their denotation.
Sensor A sensor is a special Device that perceives certain IoT-A
characteristics of the real world and transfers them into a
digital representation.
serial A method of data transmission in which the bits of a data Cisco
transmission character are transmitted sequentially over a single
channel.
Service "Services are the mechanism by which needs and OASIS
capabilities are brought together"
SI Systems Integrators Authors
Sinkhole Attack In this attack, a malicious object claims that it has the Various
shortest-path to the fog device which attracts all
neighboring objects that don’t have the transmission
capability to reach the fog device to forward their packets
Appendix A: Glossary 311