An Implementation of Fog Computing Attributes in an IoT Environment Ranjit Deshpande CTO K2 Inc.
Introduction Ranjit Deshpande CTO K2 Inc. K2 Inc. s end-to-end IoT platform Transforms Sensor Data into Predictive Insights Data Classification at the network level allows an efficient, scalable Cloud Analytics engine Predicts operational efficiencies and business opportunities Facilitates the building of secured, flexible and modular applications
Sensor Networks Challenges Software Stack Elements of Fog Computing Example of an end-to-end IoT Architecture Characteristics of IoT Data Data Collection Data Organization In-network Processing Data Transmission Security Management and Control Index
Sensor Networks Sensor Nodes Low Power (battery operated) Typically wireless Distributed Resource-constrained Disparate Prone to failures Sensor Networks Self-organizing Self-healing Robust Cross-platform, standards-based Secure Controller
Sensor Network Challenges Resource constraints Power consumption Environmental RF interference Robustness Reliability of data Software optimization Power management Frequency hopping Mesh networking Advanced data collection and validation
Software Stack
End-to-End IoT Architecture
Characteristics of IoT Data Very large volume of data Speed of Data Processing and Consumption Quantum Latency Cost Structure Drives the Cost of WAN & storage How is the Data Structured?
Policy set by the cloud-based via the Controller Push Model Sensor pushes data to controller Configurable interval Pull Model Controller requests data from the sensor Model-based Query-based Policy affects power consumption Data Collection
Data Organization Data is collected from heterogeneous sources Sensor data is often unstructured IoT Controller creates order from chaos Maintains data model for sensors Validates accuracy of data Organizes and structures data
In-Network Processing Rules-based processing Rules can be set by a Cloud-based controller Reduced latency for local actions Model-based processing Controller builds a model of sensor data Deviations from model are treated as triggers Advanced machine-learning algorithms provide predictive insights into the data
Data Transport Secure, end-to-end communications Link-layer security for sensor nodes TLS for Controller-to-Cloud communications Compression and aggregation Rules-based aggregation Compression to reduce bandwidth Prioritization and classification Policy-based prioritization of sensor network events Control upstream traffic Crucial for applications requiring low-latencies
Data Aggregation and Classification Aggregation Coupled with compression can reduce upstream traffic Can be controlled via the Rules Engine Can be used to batch-transfer data Optimize for payload size Classification Pre-classified data can reduce processing load for the Cloud Prioritized events can lower latency for critical events Facilitates SLA s for individual customers in a Public Cloud C Payload Q0 Q1 Q2 Qn P0 P1 Pn
Sensor Authentication Pre-shard keys are not secure Controller can authenticate sensor using x.509 certificates Controller Controller and Cloud perform mutual authentication using x.509 certificates Well-established, industry-standard mechanisms Link-Layer Most standardized protocols provide link-layer security (For e.g. 802.15.4) Pre-shared keys are not secure Transport All traffic between the Controller and Cloud is encrypted using TLS Security
Sensor Nodes Exclude rogue sensors from joining the network Throttle sensor data volume Firmware upgrades Management and Control Controller Functions as a management gateway for Sensor Nodes Enforces local security policy Can be managed via existing standards (SNMP, TR-069, REST, etc.) Configures sensor network topology: Star vs. Mesh Limited logs and alarms
Summary Deploying and managing sensor networks requires intelligent local processing Building, Scaling and Managing IOT solutions requires a distributed architecture with Fog Computing attributes Data conditioning, filtering and classification is crucial In-network processing of events is essential for many applications Security needs to be a design consideration, not an after-thought