The Roof Computing

The Roof Computing

The Roof is a federated networking and computational paradigm for the Internet of Things (IoT) that is always available for real-time onsite operations facilitation. A Roof provides next-hop connectivity, real-time context building and decision triggers, efficient data connectivity to the Cloud/Service providers, and always-on security. The Roof will be implemented as a software platform on various devices that proxy the Things and their IoT services to the rest of the world, including but not limited to mobile phones, home routers, gateways, personal computers, servers, and other computing platforms as appropriate.?

In this article, I will introduce the concept of Roof Computing in the context of IoT, the motivation and the need,?its features, how it is different from Fog and Cloud computing paradigms. I will also present applications where Roof Computing is appropriate and the next steps to build the Roof Computing standard, the IEEE P1931.1.

Keyword: #Internet; #InternetofThings; #IoT; #CloudComputing; #FogComputing; #RoofCompuiting; #Bigdata; #RealtimeContext;

The Origin

For most networking and communication engineers like me who have been in the industry since the early 2000s and understand how the Internet functions, the way people use the metaphor, Cloud Computing, is annoying. Nonetheless, I gave up and started accepting it [2]. Then, sometime in 2013, I heard about Fog Computing [3], yet another computing model, as we have FFog below the clouds. So then, I started thinking, what was beneath the Fog, to predict the next computing paradigm.

I found that we have roofs below the Fog, and I was sure somebody would be proposing Roof Computing, but I did not know that it would be me.

No alt text provided for this image

Figure 1: Computing in the Clouds, Fog, and roofs

A Roof for the Internet of Things

Roofs have played a significant role in human evolution, especially providing privacy and security for the people and their possessions [1]. Besides, the people under the roof are part of a family or related, there is a trust built among them, and they live autonomously within the roof and go outside for creating more value and earning. If there is a problem out, for example, a strike, the people under the roof would continue to live and function and will be able to live at least for a few days without interacting with the external world.

No alt text provided for this image

Figure 2: The roofs of San Cristóbal de las Casas, Mexico [WIKIPEDIA]

Like humans who are weak when positioned against nature and anti-social elements, the Internet of Things is weak when exposed over the Internet. The Things in the IoT are constrained devices with limited capabilities to act and protect themselves [5]. Also, a typical IoT deployment involves multiple sensors, actuators, and other devices and machines, like a family under the roof. It requires trust to be established between the Things under the roof. The Internet of Things operating within a smaller scope than the Cloud or the Fog requires an environment wherein they can operate, build trust, collaborate, and be secure.

IoT and the Autonomy

Most businesses hijack the IoT to depict what the IoT is and where the value lies depending on what product or services these companies offer. Any IoT deployment aims to take actions: switching on sprinklers in case of fire, reacting to a broken pipe, controlling a boiler temperature. IoT deals with the physical world and is deployed for a mission, requiring the IoT system to function autonomously over time, irrespective of what is happening elsewhere. For example, an IoT deployment in a factory should continue to function if a fiber cut outside the factory disrupts the cloud connectivity.

No alt text provided for this image

Figure 3: IoT - The fundamental design goal for an IoT application: Act Local; Think Global

The Things in an IoT application should operate and co-operate securely and independently within the context of a local environment such as home, factory, office, or airport. Each IoT deployment should act autonomously over some time (semi-autonomous) and connect into the FFog or cloud-only when needed or for an added value.

IoT and the Context

The Internet of Things makes the environment speak for itself so that people and machines can better understand the real world. This helps in agility in making decisions and taking actions to make the world a better place to live.

No alt text provided for this image

Figure 4: IoT and the Context Building

IoT system generates continuous data, which helps build real-time context and patterns that can be observed over some time. The former helps in an understanding of real-world scenarios to take actions required in real-time; the latter can be used to understand the patterns using descriptive analysis and improve the scenario using predictive and prescriptive analytics. The former is real-time computing, while the latter is offline computing. Offline computing is achieved using Cloud Computing which provides a large amount of data storage and large data processing capacity for the analytics for more value creation for the IoT applications. However, the challenge is to provide reliable real-time computing for context building and real-time actions.

Cloud, Fog, IoT and the Missing Block

With the advent of the Internet of Things, Cloud Computing has become a more critical networking element as the need for storing and processing large amounts of data. However, it falls short in managing the billions of devices having low-latency microdata transactions. Instead of forcing all processing to the Cloud, an intermediary Fog Computing (yet another metaphor) has been proposed for handling low latency tasks below the Cloud. However, managing the Fog network, maintaining connectivity, and providing services upon that, in the Internet of Things scenarios at a large scale, is not easy [4]. To support the real-time computing needs of an IoT deployment for local connectivity, real-time actions, security, and autonomous functioning, we need a trustworthy always-available edge computing called Roof Computing.

The Roof Computing for the Internet of Things

Unlike the Fog and the Cloud, Roof Computing is always available as the next hop for the Things. It provides real-time computing needs for building the context and required actions, security and privacy, and efficient and flexible connectivity to the Cloud/ Service providers. The Roof can be implemented in IoT gateways, home routers, mobile phones, personal computing platforms, and other embedded platforms that proxy the Things for connectivity to the network and the Cloud.

No alt text provided for this image

Figure 5: Roof Computing

Roof Computing is placed at a few meters (or one hop) away from the Things and far below the Fog and Cloud. The IoT gateways and other devices that implement the Roof will support the last meter connectivity for the Things. The Roof network architecture [Fig. 6] reflects the traditional federated networking architecture that is being practiced since the widespread use of the Internet. Roof enables this model for the Internet of Things to fit naturally into the Internet and Cloud architecture.

No alt text provided for this image

Figure 6: The Roof federated architecture

In an IoT world, the Roof is a fixed network element that is always reachable as the first hop of communication and provides a robust, secure network architecture by providing the Things with the required processing and storage to enhance the security and robust connectivity of the Cloud. Furthermore, the Roof bridges the physical world and cyber world in creating highly scalable cyber-physical systems for the IoT by connecting the Things and systems to the Cloud to build a cyber system for the respective physical systems.

Roof Computing reduces complexity and increases security and agility for managing large-scale IoT networks. In addition, the Roof allows each of the IoT elements (Things, Gateway, Cloud, and Applications) to evolve independently from each other.

The Roof Functionality

The primary goal for the Roof is to provide a highly functional, secure, and scalable Internet of Things. To meet this goal, Roof provides four main functionalities [Fig. 7], viz:

  1. Interoperable connectivity for the Things under the Roof
  2. Context building and decisions to take actions in real-time
  3. Information management and efficient connectivity to the Cloud and Service providers
  4. Security & privacy by design

No alt text provided for this image

Figure 7: Motivation for the Roof

Interoperable connectivity

IoT devices are fragmented with various connectivity technologies such as IEEE 802.15.4, IEEE 802.11, Bluetooth low energy (BLE), various Low Power Wide-Area Networks (LPWANs), and many others. Roof accommodates a wide range of Things with a variety of access technologies. The Roof is responsible for setting up the local network for the Things and provides application-independent Internet connectivity for external access, including Cloud connectivity.?

In addition to supporting the various access technologies used by the Things, the Roof will also support multiple access, networking, and application protocols. These protocols include ZigBee, Z-Wave, Modbus, CAN bus, Bluetooth low energy, WiFi, IPv4, IPv6, MQTT, CoAP, and several others.

Mobility is inherent to many IoT applications; sometimes, the IoT network, for example, a truck with perishable goods or a person with many sensors on them, might be moving. The users and the Cloud must continue to see the Things in the same way they were set up initially as the truck or the person moves and connect to different access networks for Internet connectivity. The Roof would support the network mobility for the Things.

Context building and real-time decisions

IoT applications require two kinds of data analytics: Context Building and Big data analytics. The former is a real-time analysis of the current situation, i.e., the real-time approximation of the real-world scenario. The latter is for long-term analysis of the data patterns to predict trends and preventive actions. The Roof builds the real-time context while the Cloud performs the big data analytics, which is natural for their location in the network architecture.?

Building context and triggering immediate actions in the Roof makes the IoT system under the Roof more functional even in the cases of prolonged loss of connectivity to the Internet and Cloud.

Information management and efficient backhaul connectivity

The Roof is the IoT aggregator and improves the efficiency of the network connectivity between the Things and the Cloud, and supports the protocols required to attach to the Cloud over the Internet. Also, Roof will support connectivity to various service providers (e.g., utilities, safety, and security providers, insurance providers, warranty, and other service providers). The Roof allows the end-users to choose and change the existing service and cloud providers.

Things generate data continuously; not all data makes sense, nor valuable. The gateways with Roof do not just route data but also store data and perform computations on the data. Roof filters unwanted data, typically the normal conditions, that may not help for future analysis and transmits only the useful aggregated intermediate data to the Cloud, thereby increasing the efficiency of the backhaul connectivity. The Roof can also store the data locally when the connectivity to the Cloud breaks and upload the data when the connectivity has been reestablished.

Security and privacy by design

Security and privacy aspects (authentication, encryption, and integrity verification) are the key functionalities supported for the Things under the Roof. The interface between the Things and the Internet/Cloud is the weakest link as things are the constrained devices making them the least self-protected network elements. The insecure interface between the Things and Cloud can result in data corruption, denial of service, or complete takeover of the Things making the customers and businesses vulnerable to cyber-attacks.

The Roof provides the capabilities to encrypt the data, intrusion detection, and deny the unauthorized capture of data. Also, Roof supports performing cryptographic operations for confidentiality, integrity, and availability of information, as well as secure key storage, which may be required to meet local laws and regulations.

Roof Implementation Model

To ease the efforts of businesses and developers to build their applications over the Roof platform, a unified interfacing and functional model is required, as illustrated in [Fig. 8]. The southbound interface is for the device management and connectivity for the Things to be securely put under the Roof and build trust with the other Things under the Roof. The north interface would help establish a secure channel to the Cloud and Service providers to protect information and privacy while feeding the Cloud-based IoT applications. Finally, the horizontal interfaces (east and west interfaces) will help the end-users manage Things and security & privacy. The security functions involved are authentication, authorization, and secure key establishment for exposing IoT services under the Roof. In contrast, the privacy function helps the end-users to manage the access rights for the data and IoT services.

No alt text provided for this image

Figure 8: Roof functional model

The Roof and the Spatiotemporal Location

Each IoT deployment should function autonomously over some time and connect to the global Internet for more value creation. It is important to treat all events to their spatiotemporal (space-time) location in this context. This is illustrated in Fig. 9]. As a matter of design of the Internet of Things, Things should react for the events while the Roof acts in real-time based on the context, Fog might improve operations in near-realtime, and Cloud Computing should provide insights for planning for future improvements.

No alt text provided for this image

Figure 9: The Roof and the Spatiotemporal Location

Roof Applications

A typical IoT deployment is illustrated in [Fig. 10], consists of a few 10s to 1000s of constrained devices connected to the Cloud over the Internet through one or more IoT gateways with Roof. The Roof is required for every true-IoT application deployed for a mission to provide connectivity and security for the constrained devices over the Internet while supporting the autonomous functioning of the Things under the Roof.

No alt text provided for this image

Figure 10: Roof Applications

The Roof is applicable wherein a gateway acts as a proxy for connecting Things over the Internet. These applications include but are not limited to connected industries, connected vehicles, connected healthcare services, connected homes, connected public authorities, clusters of connected Things in the smart cities, and other highly distributed IoT application deployments.

Cloud vs. Fog vs.?Roof

The Roof is not a competition to either Fog or Cloud or a replacement to any of these. Each of these computing models has its applications and approach for IoT deployment, and one does not replace the other, nor is one better than the other.

No alt text provided for this image

Table 1: Cloud vs. Fog vs. Roof

Table 1. depicts how each of these computing models fits into the IoT ecosystem. The difference between Fog and Roof is how close they are to the Things and their respective drivers.?The Roof is just a few meters away to support the constrained devices for context building and security and provides efficient backhaul connectivity to the cloud service providers. The Fog can be a few kilometers away to reduce the latency in a distributed environment. Fog could be a more innovative routing infrastructure with more application-level functionality. The Roof is the right edge of the IoT; Roof can be part of IoT gateways, home routers, mobile phones, and other personal computing devices. However, a Fog implementation may not be required; Roof can talk directly to the Cloud for full-fledged IoT deployments.

Roof Computing is an integral part of most IoT deployments that are always available to guarantee low latency real-time autonomous operations and provide security for constrained devices. In addition, the Cloud and maybe, the Fog is used for more processing, ample data storage for the long term, and historical data analytics and integrating with the business process management and information sharing.

The Goals for the Roof

Roof enables building generic gateways and plays a larger role in addressing the interoperability and security challenges among IoT devices, and will lower the cost and infrastructure complexity for end consumers, enterprises, and industrial environments, which will result in reliable, scalable, stable, resilient, and trustworthy IoT Networks. If successfully implemented, Roof can expedite the growth of highly-connected and robust Internet of Things.

The following are the goals for the Roof:

  1. Context Building: Enable the devices under the Roof to collaborate and act in real-time
  2. Harmonization: Bridge the physical and cyber worlds, and allow horizontal integration of the IoT ecosystem
  3. Security by Design: Provide a framework to enable devices and services to be secure by design while the end-users choose their privacy
  4. Better User Experience: Lower operational and maintenance cost with ease of configuration, commissioning, use, and maintenance
  5. Reuse & Scalability: Provide reliability, resilience, and scalability for IoT deployments with easy to build and repeatable model?
  6. Innovation: Allow innovation for new business models and lower the barrier for entry for device manufacturers, service providers, and other ecosystem players

Goal 1: The Context Building

The Internet of Things is the humanization of the objects; it requires the ability to build the real-time context of the environment where the IoT system has been deployed so that appropriate actions can be taken. For example, if nobody is present at home and the smoke/fire is detected; this is a different context from when the house owner is current, and the smoke/fire is seen; in the former context, the IoT system turns on the sprinklers and may inform fire department, and in the latter context, the owner is alerted to take actions; if the owner within a specific time takes no action, the IoT system turns on the sprinklers and may inform fire department. The context building helps in providing real-time analysis of the environment for taking required actions for the Things to perform their intended functionality.

No alt text provided for this image

Figure 11: Context Building

The number of contexts that can be built is directly proportional to the number of parameters that are being sensed. The more sensors, the more the number and better the context building. Suppose we have one sensor (a temperature sensor) providing one IoT service (temperature service that provides a room's current temperature). In that case, one can build only one context (the room is cold or hot). With two services, the number of contexts possible is three. With three services, seven contexts are possible. If there 'n' services, the number of contexts possible is (2^n) - 1. Imagine you have 100 basic IoT services; the number of possible contexts built is 1 267 650 600 228 229 401 496 703 205 375. It is one nonillion, 1.267 trillion, trillion possible contexts. While some of these are not useful contexts, the number of contexts one could build is unlimited in a moderate IoT deployment involving 100 different sensors. Even with 25 sensors, over a million contexts are possible. It isn't easy to build, understand, or need every context while deploying the IoT applications. With Roof, the plan is to be able to download the context building rules and associated actions from the Cloud for building new contexts dynamically, so that one can download new contexts either based on the need, to better the existing context rules based on historical analysis or as the end-user installs new sensors. This allows innovation and collaboration for building better IoT applications.

Goal 2: Harmonization

Most of today's IoT solutions are vendor-driven and vertically segmented - the vendor provides devices, IoT hub/gateway, and cloud services. Unless the vendor is a big player in the market, it is unlikely that one will get a new device to attach to their gateway. Roof with standard interfaces will harmonize the IoT ecosystem and build more generic IoT gateways and cloud services. One can choose devices from any vendor and get the services from any other vendor.

No alt text provided for this image

Figure 12: Harmonization

Goal 3: Security by Design

Conforming to the Roof standard means starting with security on day one. Roof avoids exposing IoT devices directly over the Internet to isolate the devices from being accessible directly by anyone. The Roof provides multi-level security, analyses threats, and requires two-factor authorization for suspected activities. The Roof will support authenticating to multiple service providers securely and managing data access and privacy.?Besides, Roof brings up end-user awareness about security and privacy threats so that the users make informed decisions to avail of a new service.

No alt text provided for this image

Figure 13: Security by Design

Goal 4: Better User Experience

IoT devices come in various form factors from different vendors with varying input and output capabilities. Typically, the interactions with devices will be handled by web and mobile apps provided by the vendors. However, the value for the end-user lies in the coherent service rather than a set of individual devices and their services. The Roof will enable coherent services to build context and define associated services that provide distributed user experience across multiple devices.

No alt text provided for this image

Figure 14: Better User Experience

Device management for configuration, commissioning, and software updates are important activities to be handled. Given that IoT is applied across the verticals and a good IoT application hides in the background, reducing the complexity of building the device management feature into the solution is critical for the success of IoT, which is a goal for the Roof. Also, letting the end-users be aware of security and privacy threats before choosing a service brings credibility to the service providers.

Goal 5: Reuse & Scalability

The Internet of Things will be the most significant network ever created by humans, which requires a scalable model built on smaller and reusable elements. Roof enables this model to be replicated quickly and build large-scale IoT applications, e.g., a Smart City. In addition, the Roof model can be used across multiple applications and verticals and enables fault isolation and semi-autonomous functionality for reliability.

No alt text provided for this image

Figure 15: Reuse & Scalability

Goal 6: Innovation

IoT is an innovation over technology and fundamental for the success of any IoT deployment. The Roof can harmonize the IoT ecosystem by allowing individual components of the IoT system to evolve independently [Fig. 16]. Roof enables the rapid development of new innovative services based on existing devices by allowing multiple service providers [Fig. 12]. Roof's ability to choose and switch to an equivalent service provider, e.g., home insurance, enables the innovative and competitive market.

No alt text provided for this image

Figure 16: Rapid Innovation with open Roof

The Roof and the Blockchain

Currently, IoT deployments are fragmented. The Roof offers the possibility of trusted peer-to-peer communication and collaboration by edge devices using the blockchain. The plan is to explore the blockchain integration into the Roof framework for establishing neighborhood trust for sharing and collaboration for better context building and actions and enable more innovative and non-centralized applications among the trusted participants.

No alt text provided for this image

Figure 17: The Roof and the Blockchain

The Roof and Metaphors

While a new buzzword may not be required for this [6], a well-chosen metaphor is handy to explain the concepts and persuade and ensure buy-in into the concepts. While the word ‘roof’ fits into the context of the physical world’s Cloud, FFog, and roof; ROOF is derived from Realtime Onsite Operations Facilitation, a key requirement for the Internet of Things given that any IoT application is deployed for a mission to take actions, and should function autonomously over some time and connect to the Cloud for more value creation. The Roof is both a metaphor and an acronym describing the fundamental concepts of Roof Computing.

Conclusions and Next Steps

Roof Computing is a new federated computing and networking paradigm to serve the constrained devices in the Internet of Things that provides connectivity, context building, information & service management, and security & privacy. Roof Computing provides a model to build large-scale IoT networks the way they should be built naturally without being hijacked by the different vendors based on their business.?

Roof computing will be a collection of nascent technologies in a framework with well-defined APIs that ease the development and deployment of secure, reliable, scalable, resilient, and high-performance IoT applications.

The next steps would involve defining the framework with a minimum set of protocols and standards to be used and how this framework interacts with the Things, Cloud, and Humans. As part of this. IEEE Communication Society (ComSoc) has sponsored this standard development. In addition, the IEEE Roof Computing Working Group [7] develops this framework. It plans to do this in association with other organizations like Internet Engineering Task Force (IETF) [8], European Telecommunications Standards Institute (ETSI) [9], OneM2M [10], and other active IoT Standard Development Organizations.

If you are interested in participating in this standard development, please leave a comment; I will be adding you to the IEEE ROOF Working Group.

REFERENCES

  1. "Roof", Wikipedia, 2016. [Online]. Available: https://en.wikipedia.org/wiki/Roof.
  2. Peter Mell and Timothy Grance “The NIST Definition of Cloud Computing,” NIST Special Publication 800-145, September 2011.
  3. Bonomi, F., Milito, R., Zhu, J. and Addepalli, S. “Fog computing and its role in the Internet of Things,” Mobile Cloud Computing Workshop, ACM, 2012
  4. Shanhe Yi, Cheng Li, and Qun Li, “A Survey of Fog Computing: Concepts, Applications, and Issues,” ACM, 2015.
  5. Bormann, C., Ersue, M., and A. Keranen, "Terminology for Constrained-Node Networks," RFC 7228, May 2014.
  6. "Is There a Buzz Over Fog Computing?", Channelnomics, 2014, https://www.channelnomics.com/channelnomics-us/news/2370241/is-there-a-buzz-over-Fog-computing.
  7. “IEEE Standards Development Working Group, ROOF - Roof Computing,” https://standards.ieee.org/develop/wg/ROOF.html
  8. “The Internet Engineering Task Force,” IETF, https://www.ietf.org/
  9. "Internet of Things," ETSI, https://www.etsi.org/technologies-clusters/technologies/internet-of-Things.
  10. "oneM2M", Onem2m.org, https://www.onem2m.org/

sujith s

Java back end engineer | Microservice | Spring boot | Docker | Kubernetes

7 年

Good article Syam Madanapalli.

回复
Swati NC

More than 16+ years of multi-faceted experience in designing and developing an array of software applications, web applications in the technologies like Java, J2EE, Big data

7 年

nice article

Syam Madanapalli

Tech Expertise with Strategic Vision | Building Tomorrow

7 年

Yes, ROOF is positioned to be within a local Network of Things, typically, at the next hop. By doing so, we will actually be reducing the IoT application deployment and maintenance cost: better cloud connectivity management (can use cheaper connectivity), better security management and easy maintenance. More importantly, it is how we should be deploying most of the IoT applications. Otherwise (without Roof), the IoT devices are like orphans on street, whereas the things under Roof are like a family collaborating and functioning in a more secure environment.

interesting concept ! but wondering whether roof will be within the local network of things? So far, we have been handling context, security, real/offline management through applications on cloud itself. If roof and cloud need to co-exists, doesn't it add to performance & overall cost?

回复
Syam Madanapalli

Tech Expertise with Strategic Vision | Building Tomorrow

7 年

@Venkata Ramana Gundamaraju, Fog computing seems to be distributed cloud computing to bring the storage and computing closer to the network edge. The objective is to improve the end user experience by reducing latency between an event and response to the event. Whatever you do between a cloud server and an end user/device as an optimization is probably claimed as fog computing these days. We have to wait and see their specification if this can be implemented over general purpose computing devices with a reasonable complexity.

要查看或添加评论,请登录

Syam Madanapalli的更多文章

  • Securing the IIoT and OT Environments

    Securing the IIoT and OT Environments

    On April 6, 2022, The Washington Post [1] reported that the U.S.

    3 条评论
  • Entropy, Quantum Uncertainty, God and IoT

    Entropy, Quantum Uncertainty, God and IoT

    Introduction One of the most famous stories that I have come across is the Draupadi Vastrapaharanam, the disrobing of…

    27 条评论
  • Demystifying the Edge Computing

    Demystifying the Edge Computing

    Edge Computing is often misquoted, misrepresented, and misunderstood. Knowing the name of 'something' is not the same…

    2 条评论
  • IoT, Careers, and Skills

    IoT, Careers, and Skills

    Ninety percent of the so-called IoT experts know the name IoT. However, they do not know the IoT.

    7 条评论
  • Designing IoT Applications

    Designing IoT Applications

    In India, there is an old story about a student who prepared well to write an essay on coconut trees, but he was asked…

    16 条评论
  • Securing the Internet of Things

    Securing the Internet of Things

    The Internet of Things drives value for every business and person. Several companies, mostly with software application…

    8 条评论
  • How to Build an IoT Startup?

    How to Build an IoT Startup?

    The new addiction is starting your business, as many think a startup is glamorous. The reality is very different; a…

    13 条评论
  • Learn IoT like a High School Student

    Learn IoT like a High School Student

    The IoT (Internet of Things) term is being used from common man to PM, engineer to CEO, and in between a lot by…

    12 条评论

社区洞察