Fundamentals of Internet of Things: For Students and Professionals teaches the principles of IoT systems. It employs a systematic approach to explain IoT architecture models and their layers. The textbook is arranged based on various layers of an architecture model. For readers who are unfamiliar with the concept of data communication and networks, the first chapter of this book covers the fundamentals of data communication and networks. It can also be used as review material for those who are already familiar with the concept.
The book begins with many examples of IoT use cases to show readers how IoT can be applied to various IoT verticals. The concept of smart sensors is then described, as well as their applications in the IoT ecosystem. Because internet connectivity is an essential part of any IoT system, the book explores wired and wireless connectivity schemes including cellular IoT in the 4G and 5G eras. IoT protocols, analytics, as well as IoT security and privacy are important topics that are explained in this book with simple explanations. The last chapter of this book is dedicated to IoT solution development. IoT is one of the most rapidly evolving technologies today, and there is no better guide to this rapidly expanding sector than Fundamentals of Internet of Things (IoT) for Students and Professionals.
Features:
- Simple explanations of complex concepts
- More than 300 exercise problems and advanced exercise questions
- Provided solutions for the exercise problems
- 10 practical IoT projects
Table of Contents
About the Author xvii
Preface xix
1 Data Communications and Networks 1
1.1 Introduction 1
1.2 OSI Model 3
1.2.1 Layer 1 - Physical Layer 5
1.2.2 Layer 2 - Data Link Layer 5
1.2.2.1 Addressing 5
1.2.2.2 Framing 5
1.2.2.3 Error Control 6
1.2.2.4 Flow Control 6
1.2.2.5 Access Control 7
1.2.3 Layer 3 - Network Layer 7
1.2.4 Layer 4 - Transport Layer 7
1.2.4.1 Port Addressing 8
1.2.4.2 End-to-end Error Control 8
1.2.4.3 End-to-end Flow Control 8
1.2.4.4 Connection Control 8
1.2.4.5 Congestion Control 8
1.2.5 Layer 5 - Session Layer 9
1.2.6 Layer 6 - Presentation Layer 9
1.2.7 Layer 7 - Application Layer 9
1.3 Header Encapsulation 9
1.4 Layer 2 - Ethernet 10
1.4.1 Framing 11
1.4.2 Addressing 11
1.4.3 Error Control 11
1.4.4 Flow Control 12
1.4.5 Access Control 12
1.5 Layer 3 - IP 12
1.5.1 IPV4 and IPV6 headers 15
1.5.2 Improving IPV4 Address Assignments 17
1.6 Layer 4 - TCP and UDP 19
1.6.1 TCP Header 20
1.6.2 TCP Functionalities 22
1.6.2.1 Process-to-process Communication 22
1.6.2.2 Connection Control 22
1.6.2.3 Flow Control 22
1.6.2.4 Error Control 23
1.6.2.5 Congestion Control 24
1.6.3 UDP 24
1.7 TCP/IP Networking Model 25
1.8 Internetworking Devices 25
1.8.1 VLAN 27
1.8.2 Quality of Service (QoS) 28
1.9 Summary 29
References 30
Exercises 30
Advanced Exercises 32
2 Introduction to IoT 35
2.1 Introduction 35
2.2 IoT Traffic Model 36
2.3 IoT Connectivity 37
2.4 IoT Verticals, Use Cases, and Applications 39
2.5 IoT Value Chain 41
2.6 Examples of IoT Use Cases and Applications 42
2.6.1 IoT-based Structural Health Monitoring System 42
2.6.2 IoT-based Electric Meter 44
2.6.3 IoT-basedWaste Management System 44
2.6.4 IoT-based Earthquake Detection 45
2.6.5 IoT-based Car Software Update 45
2.6.6 IoT-based Mountain Climbing Information System 46
2.6.7 IoT-based Agriculture - Pest Management 46
2.6.8 IoT-basedWearable in Sports 47
2.6.9 IoT-based Healthcare System 47
2.6.10 IoT-based Augmented Reality (AR) System 48
2.6.11 IoT-based Food Supply Chain 49
2.6.12 Smart Grid System 49
2.7 IoT Project Implementation 51
2.8 IoT Standards 52
2.9 Summary 52
References 53
Exercises 53
Advanced Exercises 54
3 IoT Architecture 57
3.1 Introduction 57
3.2 Factors Affecting an IoT Architectural Model 58
3.3 IoT Architectural Model 59
3.4 IoT WF Architectural Model 59
3.5 Data Center and Cloud 63
3.6 Computing (Cloud, Fog, and Edge) 66
3.6.1 Cloud Computing 66
3.6.2 Fog Computing 67
3.6.3 Edge Computing 68
3.7 Summary 69
References 69
Exercises 69
Advanced Exercises 70
4 IoT Sensors 73
4.1 Introduction 73
4.2 Sensor and Its Performance Metrics 74
4.2.1 Static Performance Metrics 74
4.2.2 Dynamic Performance Metrics 76
4.2.3 Sensor Selection 77
4.3 Smart Sensors 80
4.4 MEMS 81
4.5 Sensor Fusion 83
4.5.1 Improving the Quality and Accuracy of a Sensor 83
4.5.2 Improving the Reliability of a Sensor 83
4.5.3 Improving the Capability of a Sensor 84
4.5.4 Measuring a Different Physical Quantity 84
4.6 Self-calibration 84
4.7 Sensors of the Future 85
4.8 Summary 85
References 86
Exercises 86
Advanced Exercises 87
5 IoT Wired Connectivity 89
5.1 Introduction 89
5.2 Ethernet 90
5.2.1 Power over Ethernet (PoE) 91
5.3 Ethernet TSN 92
5.3.1 Challenges of Connectivity for Industrial IoT 92
5.3.2 Ethernet TSN Features and Key Technologies 93
5.3.2.1 Time Synchronization 93
5.3.2.2 Bandwidth and QoS Reservation 94
5.3.2.3 Redundant Transmission 94
5.3.2.4 Traffic Shaping and Scheduling 94
5.3.2.5 Latency Minimization 95
5.3.3 A Simple Example 96
5.3.4 Ethernet TSN Substandards 97
5.4 Power Line Communications (PLCs) 98
5.4.1 PLC for Smart Grid 100
5.5 Summary 103
References 103
Exercises 104
Advanced Exercises 105
6 Unlicensed-band Wireless IoT 107
6.1 Introduction 107
6.2 Zigbee Wireless Network 108
6.3 BLE Wireless Network 111
6.3.1 Bluetooth 5 114
6.3.2 Bluetooth Mesh 115
6.4 WiFiWireless Network 115
6.4.1 WiFi 6 116
6.4.2 WiFi HaLow 117
6.5 LoRaWAN Wireless Wide Area Network 118
6.6 Summary 121
References 121
Exercises 122
Advanced Exercises 124
7 Cellular IoT Technologies 125
7.1 Introduction 125
7.2 EC-GSM-IoT 125
7.3 LTE-based Cellular IoT Technologies 127
7.3.1 LTE-M 127
7.3.1.1 Channel Bandwidth 127
7.3.1.2 Duplexing 128
7.3.1.3 Data Rate and Latency 129
7.3.1.4 Power Class 131
7.3.1.5 Coverage 132
7.3.1.6 Mobility 133
7.3.2 NB-IoT 133
7.3.2.1 Channel Bandwidth and Duplexing 134
7.3.2.2 Data Rate and Latency 134
7.3.2.3 Power Classes 135
7.3.2.4 Coverage 135
7.3.2.5 Mobility 135
7.4 Practical Use Cases 135
7.5 CIoT Frequency Bands 137
7.6 Certification 140
7.7 CIoT Modules 141
7.8 AT Commands 143
7.9 Summary 144
References 145
Exercises 146
Advanced Exercises 147
8 CIoT Features 151
8.1 Low-power Consumption Schemes 153
8.1.1 Introduction 153
8.1.2 Power Saving Techniques in 3GPP Release 13 153
8.1.3 Power Saving Techniques in 3GPP Release 14 158
8.1.4 Power Saving Techniques in 3GPP Release 15 158
8.1.4.1 Wake Up Signal 158
8.1.5 Power Consumption for Various Use Cases 159
8.1.6 Summary 162
References 163
Exercises 163
Advanced Exercises 164
8.2 Uplink Access 167
8.2.1 Introduction 167
8.2.2 Random Access Process 168
8.2.2.1 Random Access Dependency to the Coverage Level 170
8.2.2.2 Access Barring (AB) 170
8.2.2.3 Preamble Formats 171
8.2.3 RA Advancements 172
8.2.3.1 Early Data Transmission 173
8.2.3.2 Preconfigured Uplink Resources 173
8.2.4 Summary 174
References 175
Exercises 175
Advanced Exercises 176
8.3 Positioning 177
8.3.1 Introduction 177
8.3.2 LTE Positioning 178
8.3.2.1 CID 179
8.3.2.2 ECID 179
8.3.2.3 Observed Time Difference of Arrival (OTDOA) 180
8.3.2.3.1 Basic OTDOA Navigation Equations 181
8.3.2.3.2 Positioning Reference Signals (PRSs) 182
8.3.3 Positioning Architecture for LTE-IoT 183
8.3.4 RSTD Measurement Performance 184
8.3.5 PRS Signals 185
8.3.5.1 LTE PRS Signals 185
8.3.5.2 LTE-M PRS Signals 186
8.3.5.3 NB-IoT PRS Signals 186
8.3.6 RSTD Error Sources 187
8.3.7 Summary 188
References 188
Exercises 189
Advanced Exercises 189
8.4 Mobility 191
8.4.1 Introduction 191
8.4.2 Mobility 192
8.4.2.1 Cell Selection 192
8.4.2.2 Cell Reselection 192
8.4.2.3 Signal Measurements Used for Mobility 193
8.4.2.4 Idle Mode Versus Connected Mode Mobility 194
8.4.2.5 Mobility Architecture 195
8.4.2.6 Intra-Frequency vs. Inter-Frequency Mobility 196
8.4.2.7 General Idea about TAU Strategies 197
8.4.2.8 General Idea about Paging Strategies 198
8.4.2.9 TAU and Paging Optimization 198
8.4.2.10 Doppler Effect 198
8.4.3 NB-IoT Mobility 199
8.4.4 LTE-M Mobility 199
8.4.5 Summary 199
References 200
Exercises 201
Advanced Exercises 202
9 IoT Data Communication Protocols 203
9.1 Introduction 203
9.2 HyperText Transfer Protocol (HTTP) 204
9.3 Message Queue Telemetry Transport (MQTT) Protocol 206
9.3.1 MQTT Connections 208
9.3.2 Security of MQTT Protocol 209
9.3.3 MQTT Last Value Queue (LVQ) 210
9.3.4 MQTT LastWill and Testament (LWT) 211
9.4 Constrained Application Protocol (CoAP) 211
9.4.1 CoAP Messages 212
9.4.2 CoAP Observers 213
9.5 Other IoT Protocols 213
9.6 Summary 214
References 215
Exercises 215
Advanced Exercises 217
10 IoT in 5G Era 219
10.1 Introduction 219
10.2 5G Vision 220
10.3 5G’s Main Application Areas 222
10.4 5G Implementations and Features 223
10.4.1 Standalone and non-standalone 5G Network 223
10.4.2 5G Network Slicing 223
10.4.3 Private 5G Network 225
10.4.4 Network Exposure 226
10.4.5 Fixed Wireless Access 226
10.5 Summary 227
References 228
Exercises 228
Advanced Exercises 229
11 IoT and Analytics 231
11.1 Introduction 231
11.2 Data Pipeline 233
11.3 AI 233
11.4 Machine Learning 234
11.5 Supervised Machine Learning Techniques 236
11.5.1 Classification 236
11.5.1.1 Decision Tree 236
11.5.1.2 Random Forest 241
11.5.1.3 K Nearest Neighbor (KNN) 243
11.5.1.4 Support Vector Machine (SVM) 244
11.5.2 Regression 246
11.6 Unsupervised Machine Learning Techniques 251
11.6.1 Clustering 251
11.6.1.1 K-Means 251
11.7 Deep Learning Techniques 253
11.7.1 Recurrent Neural Networks (RNN) 257
11.7.2 Convolutional Neural Network (CNN) 258
11.8 Summary 260
References 261
Exercises 261
Advanced Exercises 263
12 IoT Security and Privacy 267
12.1 Introduction 267
12.2 IoT Threats 267
12.2.1 Confidentiality 268
12.2.2 Integrity 268
12.2.3 Authentication 268
12.2.4 Non-Repudiation 269
12.2.5 Availability 269
12.3 IoT Vulnerabilities 269
12.3.1 Insufficient Authentication 269
12.3.2 Insecure Ports and Interfaces 270
12.3.3 Lack of a Secure Update Mechanism 270
12.3.4 Insufficient Encryption 270
12.3.5 Insecure Network Connectivity 270
12.3.6 Insecure Mobile Connection 271
12.3.7 Not Utilizing Whitelist 271
12.3.8 Insecure IoT Device Chip Manufacturing 271
12.3.9 Configuration Issues 271
12.3.10 Privacy Issues 272
12.4 IoT Threat Modeling and Risk 272
12.4.1 Threat Modeling for Smart Gas Station 272
12.4.1.1 Identifying the Assets 273
12.4.1.2 Identifying the Message Flow 273
12.4.1.3 Identifying the Threat Types 274
12.4.1.4 Rating Threats and Risk Calculations 275
12.5 IoT Security Regulations 276
12.6 IoT Privacy Concerns and Regulations 277
12.7 IoT Security and Privacy Examples 279
12.7.1 Threat Against Availability - Mirai Bonnet 279
12.7.2 Threat Against Integrity - LockState 279
12.7.3 Threat Against Software Update - Jeep 279
12.7.4 Threat Against Confidentiality - TRENDnetWebcam 280
12.7.5 Threat Against Availability and Integrity - St. Jude Medical’s Implantable Cardiac Devices 280
12.7.6 Threat Against Availability - Cyberattack on the Ukrainian Smart Grid 280
12.7.7 Privacy Concern - DJI 280
12.8 Threat Protection Methods 281
12.8.1 Confidentiality Protection 281
12.8.1.1 Methods Based on Symmetric Key 281
12.8.1.2 Methods Based on Asymmetric Key 285
12.8.2 Integrity Protection 286
12.8.3 Authentication Protection 287
12.8.4 Non-Repudiation Protection 288
12.9 IoT and Blockchain 289
12.9.1 Blockchain Technology 290
12.9.2 A Practical Example of IoT and Blockchain for Smart Grid 292
12.10 Summary 293
References 294
Exercises 294
13 IoT Solution Developments 299
13.1 Introduction 299
13.2 IoT Solution Development Methodology 300
13.3 Further Details on IoT Solution Development 302
13.3.1 Business Case Document 302
13.3.2 Implementation Strategy 302
13.3.3 Detailed Design 303
13.3.4 Building, Configuration, and Testing (BCT) 304
13.3.5 Pilot Implementation 306
13.3.6 Regulation Acceptance 307
13.3.7 Deployment 307
13.3.8 Sustainment 307
13.3.9 Continuous Improvements 307
13.4 Change Management 307
13.5 Summary 308
Reference 309
Exercises 309
Advanced Exercises 310
Practical Assignments 313
Assignment #1: Connecting an IoT Device to the Cloud 313
Assignment #2: Building a Battery-Powered Vision-Based System 314
Assignment #3: Configuring an LTE-M module using AT Commands 315
Assignment #4: Connecting an IoT Device to an MQTT Broker 316
Assignment #5: Connecting an IoT Device to an IoT Gateway Using BLE 318
Assignment #6: Building an IoT-Based Home Automation System 319
Assignment #7: Designing a Smart Toy System 320
Assignment #8: Controlling a Smart Tank System Using LoRaWAN Technology 321
Assignment #9: Building IoT Systems Using Cisco Packet Tracer 323
Assignment #10: Building a Digital Twin in the Cloud 325
References 327
Appendix A Internet Protocol Security (IPSec) 329
Appendix B Transport Layer Security (TLS) 333
Appendix C Satellite IoT 337
Solutions 339
Chapter 1 339
Chapter 2 343
Chapter 3 346
Chapter 4 348
Chapter 5 352
Chapter 6 355
Chapter 7 357
Chapter 8 361
Chapter 9 367
Chapter 10 370
Chapter 11 371
Chapter 12 376
Chapter 13 381
Abbreviations 385
Index 395