Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Introduction to Internet of Things (IoT): Characteristics, Importance, and Applications, Study notes of Information Technology

An introduction to the Internet of Things (IoT), discussing its characteristics, importance, and applications. It covers topics such as connectivity, scalability, self-adaptation, challenges, IoT stack, MQTT protocol, pH sensors, ARM processors, and IP addresses. It also explains the differences between IPv4 and IPv6, and the various types of cloud computing.

What you will learn

  • What are the characteristics of IoT?
  • How is data security ensured in IoT?
  • What is the role of cloud in IoT?
  • How does MQTT protocol work in IoT?
  • What are the advantages of using ARM processors in IoT applications?

Typology: Study notes

2021/2022

Uploaded on 07/05/2022

prince-makavana
prince-makavana 🇮🇳

1 document

1 / 23

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17

Partial preview of the text

Download Introduction to Internet of Things (IoT): Characteristics, Importance, and Applications and more Study notes Information Technology in PDF only on Docsity!

CHAPTER 1

INTRODUCTION TO INTERNET OF THINGS (IoT)

1. Define Internet of Things.

Solution: IoT refers to the interconnection via the Internet of computing devices embedded in everyday objects, enabling them to send and receive data.

2. What are the things in “IoT”?

Solution: In the context of IoT, things refer to variety of devices. At times, even humans in the loop become a thing. For anything to qualify as a “thing”, it requires identity of its existence. The “thing” in a network can monitor/measure; for example, a temperature sensor could be a thing. Things are capable of exchanging data with other connected devices in the system.

3. Discuss the characteristics of IoT.

Solution: The characteristics of IoT are as follows:

  1. Connectivity: Connectivity is an important aspect/requirement of the IoT infrastructure. Things in IoT should be connected to the IoT infrastructure. Anyone, anywhere, anytime connectivity should be guaranteed at all times. Without connection, nothing makes sense.
  2. Intelligence and identity: The extraction of knowledge (i.e., what is to be inferred) from the generated data is very important. For example, sensors generate data, but that data will only be useful if it is interpreted properly. Each IoT device has a unique identity (something like an IP address). This identification is helpful in tracking the equipment and at times for querying its status.
  3. Scalability: The number of elements (devices) connected to IoT zone is increasing day by day. Hence, an IoT setup should be capable of handling the massive expansion. The data generated as outcome is enormous and it should be handled appropriately.
  4. Dynamic and self-adapting (complexity): IoT devices should dynamically adapt themselves to the changing contexts or scenarios. Assume a camera meant for surveillance. It should be adaptable to work in different conditions and different light situations (morning, afternoon, night).
  5. Architecture: IoT architecture cannot be homogeneous in nature. It should be hybrid, supporting different manufacturer’s products to function in the IoT network.
  6. Safety: There is the danger of sensitive personal details of a user getting compromised when all his/her devices are connected to the Internet. This could cause a loss to the user. Hence, data security is a major challenge. Besides, the equipment involved in the huge IoT network may also be at risk. Therefore, equipment safety is also critical.

CHAPTER 2

INTRODUCTION TO SENSORS, MICROCONTROLLERS,

AND THEIR INTERFACING

1. Mention the importance of sensors in IoT applications with appropriate examples.

Solution: Well, the answer is obvious. Without sensors IoT applications cannot be built. Reason being simple, the sensors give the data from the environment to analyse and to understand the environment to take respective action. Sensors are the prerequisites for any IoT application.

2. Take any reference and explain how pH sensor can be used in an IoT application.

Solution: A simple example can be to understand the quality of water. We can build a system with pH sensor to understand how much pure or consumable the water is using IoT.

3. Mention clearly the procedure to interface the heartbeat sensor with any microcontroller of your choice.

Solution: One should follow the below connection procedure for any Arduino based controller. The code has been presented in the chapter – 2. Burning the code to the controller after the interfacing shall get the heartbeat monitor readily available.

4. Assume you have a fan at home. You wish to control the ON/OFF through Internet. Design a system for the same. Draw the system architecture. How is a microprocessor different from a microcontroller? Explain in detail.

Solution: This can be done in different ways. The system should have a relay and the control can be triggered through a simple HTML page. Reference can be taken from : https://youtu.be/8qPd5QqsJ5U

5. Draw the architecture of 8051 while mentioning all the features.

Solution: The following are the features supported by 8051:

  1. 8-bit microcontroller supporting 8-bit operations.
  2. Many general-purpose and few special function registers. a. Two major 8-bit registers for arithmetical and other operations, A and B. A is accumulator and is bit addressable. b. 21 special function registers (SFRs). They perform a lot of dedicated functions which makes life of programmers very easy. c. Few registers are bit addressable and few are not. d. Control registers for timer, serial communication and interrupts will fall under SFR category.
  3. Four register banks having 8 registers in each bank. a. 4 * 8 = 32 registers can be used by the programmers (stack finds a slot there). b. Stack pointer register: Points to the stack; it is an 8-bit register.
  4. Data pointer which is called a 16-bit register, but is a combination of two 8-bit registers, DPH and DPL.
  5. 16-bit program counter; no address for the same is allotted. A program counter is a helper for the controller. It holds the address of the next instruction to be executed.
  6. Eight bit program status word (PSW). It is the flag register and it helps in selection of register banks as well.
  7. Internal ROM or EPROM. It normally comes out with 4k ROM.
  8. Internal user accessible RAM area of 128 bytes.
  9. 40 pins package. There are four ports (P0, P1, P2, and P3) which can be configured as input or output ports.
  10. Two 16 bit timer/counters: T0 and T1.
  11. Full duplex serial data receiver/transmitter: SBUF.
  12. Support for interrupt programming.
  13. Oscillator and clock circuits.
  14. Easier and simpler instruction set. 6. Explain the importance of program counter in any application where microprocessor or microcontroller is used.

Figure ARM-CPSR register.

8. Explain clearly the register structure of ARM7.

Solution: One can understand this clearly from the below diagram.

9. Can ARM be called a microprocessor or a microcontroller? Justify.

Solution: It is a microprocessor and when embedded with boards like LPC2148 one could call it a controller.

CHAPTER 3

PROTOCOLS FOR IOT – MESSAGING AND TRANSPORT PROTOCOLS

1. Explain the importance of MQTT protocol with respect to IoT infrastructure.

Solution:

The rate at which the messages are read (sensor feed) from the IoT infra is massive and it is necessary to send all the read data to storage or cloud appropriately. Hence, we need a protocol and it is MQTT.

2. With NodeMCU, enumerate how MQTT can be used for subscribe/publish process.

Solution:

One can publish or subscribe to the data feeds based on the requirement. Publishing/Subscription process can be carried out with the below connection diagram. One has to refer to

Publishing Process can be referred from: https://youtu.be/DQenLGGBglc

Subscription Process can be referred from: https://youtu.be/Xs3IwuUxgP

3. Explain how CoAP functions. Compare it with MQTT in operational aspects.

Solution:

The very basics of IoT is “Collecting data from various modules and recording it in cloud for analysis whenever required”. We emphasize on the need for Internet connection in this section.

  1. Non-Confirmable (NON)Non-Reliable Messaging: There is no reliability ensured in this message transmission style. No acknowledgement will be issued in the message. Message ID is also be part of the transaction and this enables supervision possible. In case, no processing is carried out by the receiver, RST shall be sent. One can refer Fig. for understanding NON.

Figure NON – non-reliable messaging.

  1. Acknowledgement (ACK) – This is a traditional acknowledgement message sent in any sort of protocols the reader has come across. One can connect it to the regular handshaking scheme.
  2. Reset (RST) – If no processing has happened at the receiver end, even after a specific amount of time, there should be a mechanism to let the sender know that things did not go correct. For that purpose, there is a message option called RST, Reset. It will let the sender know there is a problem or trouble in the transmission.

CoAP – Request/Response Layer Messages

  1. Piggy-Backed: In this mode of request/response approach, the client sends request with a CON/NON-messaging method. ACK is received immediately with corresponding token number and message (here, humidity) as one can refer from Fig. If it is not available, the failure code is embedded as a part of the ACK.

Figure Piggy-backed message (success and failure).

2. Separate Response: When a CON type message is sent to the server from the client and in case, the server is unable to respond immediately, an Empty ACK shall be reverted. After some time, when the server is able to send the response, it sends a CON message with data. ACK is sent back from the client. One can refer Fig. to understand the same.

Figure Separate response.

3. Non-Confirmable Request and Response: Here, NON type message is sent from the client to the server. The server need not give ACK. Server can send a NON type response in turn.

1. Controller: Controller has the HCI, link layer and physical layer under its umbrella, wherein

a. Host Controller Interface (HCI) (for the controller side) is used to enable interoperability between hosts and controllers assembled by different manufacturers (increased heterogeneity). The same kind of interface is also available for host side. b. Link Layer (LL) defines packet structure. c. Physical Layer (PHY) takes care of the transmission/reception. Recollecting the OSI layer and physical layer’s functionalities, same is applied here. Physical layer takes care of modulation/ demodulation. Physical layer is responsible for analog to digital conversion.

2. Host: Now we describe the components of the host and their functionalities..

a. Generic Access Profile (GAP) takes care of the device discovery, connection establishment, connection management and security. This layer is “MANDATORY” for all BLE devices. b. Generic Attribute Profile (GATT) oversees the data exchange process. Whenever there is need to push data and to read or to write the data, the generic guidelines with respect to the process are governed by GATT. c. Attribute Protocol (ATT) is the protocol for accessing data. d. L2CAP, expanded as Logical Link Control and Adaptation Protocol, is responsible for fragmentation and de-fragmentation of the application data. Also, it administers the multiplexing and de-multiplexing of channels over the shared logical link. (Many regard this layer as Mux Layer.) e. Security Manager (SM) handles pairing, authentication, and encryption. Everything related to the security aspect is taken care here. f. Host Controller Interface (HCI): As in controller side, there is HCI for host side as well. The functionality remains the same as that in the controller.

3. Application Layer: One should again connect the application layer in the Open System Interconnection (OSI) model. Same is the scenario here with BLE. Application layer is the topmost layer in BLE as in OSI. Application layer in BLE is responsible for User Interface (UI), Logic and Data Handling. 6. What are the possible topological options with BLE? Draw the necessary diagrams and explain the same.

Solution: A BLE device communicates with outside world by two means:

  1. Broadcasting
  2. Connections.

Broadcasting

Readers must have heard the term “Broadcasting” in the past. Yes, it is the same broadcasting which we will analyze. So what do you mean by broadcasting? It is sending out message to more than one recipient. The same concept is followed here in BLE. With this broadcast, “data” is sent out “one-way”.

Whichever device is capable of picking the data (receiving), will pick the data. One can connect this to the radio broadcast. Based on the tuning, one would receive the content which is aired.

Figure Bluetooth broadcasting.

Now there are two parts of broadcasting: Broadcaster and Observer. As the name suggests, Broadcaster sends out the “non-connectable” advertising packets in frequent intervals to all those who are willing to collect it (remember Radio Broadcast). On the other hand, Observer will keep scanning at the pre- set frequency looking out to receive any non-connectable packets which are being broadcasted.

It is important to know that “Broadcasting is the only way a device can transmit data to more than one receiver at a time”.

Connections

This is the second possible way of communication. A connection is permanent. It enables periodical data transfer between the devices (two devices). The term Master−Slave Configuration comes into picture when connection is discussed. Master will try to find out the connectable advertising packets. If found, the connection would be initiated.

After the connection gets established, the central device (i.e., the master) will take care of the periodic data exchange. Slave (refer the RHS representation shown in Fig. 3.15) will keep sending the connectable advertising packets, periodically. When there is an incoming request, it would be accepted by the slave to whom it is addressed.

When two devices get connected we call it “Connection Event”. This is ideal for power saving. If required, the device will work and enable high speed process. Also, this facilitates power saving through not invoking the device when not required. To make it precise, the scheme only works when there is a need. The rest of the time, the devices are in sleep mode. All communication happens when it is in sleep mode as well, thereby saving power.

CHAPTER 4

PROTOCOLS FOR IOT – ADDRESSING AND IDENTIFICATION

1. How important is addressing in networking? Explain with an example.

Solution: Without addressing, it would be impossible to identify the nodes and components in the network. Hence, for someone to send or to receive data, it important to have address for the same.

2. What is Internet Protocol all about? How many classes are there in IPv4?

Solution: An IP address is a unique identification for a node connected to a network. Networks using TCP/IP protocol route messages are based on this address only. Typically, an IP address will look like 10.10.127.220. This is called as IP Version 4 although these days IP Version 6 is also globally prevalent. The IP addresses are classified into Class A, Class B, Class C, Class D and Class E. One can refer to the below figure for reference.

3. If you are asked to identify class of IP for your university campus, which class would you select and

why?

Solution: The same can be done based on the number of hosts required in the University campus. Ideally, it would be class B as Universities might not require more networks/hosts over the limit of Class B.

4. How is IPv4 inferior to IPv6?

Solution: IPv6, in addition to more number of IP addresses, also provides the following features:

a. Much better and efficient routing.

b. IPsec framework is made mandatory in IPv6, which is not so in IPv4. This increases the security. (Now, this is optional.)

c. An additional flow label is added in header of IPv6, which can improve the Quality of Service.

d. IPv6 supports new applications such as IP telephony, video/audio, interactive games, etc., with ensured QoS. However, even though IPv4 is referred as best effort service and tries its best to give users the service, it may not meet the requirements. So QoS is one of the key benefits of IPv6.

e. Plug and play abilities have been improved in IPv6.

f. IPv6 has eliminated the need for Network Address Translation due to the huge availability of IP addresses.

5. Compare the packet format of IPv4 and IPv6 while explaining all the fields appropriately.

IPv4 – Format.

CHAPTER 5

CLOUD FOR IOT

  1. List the different types of cloud computing.

Solution:

Cloud services could be any one of the following:

  1. Software-as-a-Service (SaaS): Complete software application as a service is provided to the user. (One can call it application as a service as well, pay monthly, yearly etc. as subscription.)
  2. Platform-as-a-Service (PaaS): Development tools, APIs, libraries, etc. will be provided by the cloud service provider. Users have to build, manage and maintain the applications (provides platform to develop).
  3. Infrastructure-as-a-Service (IaaS): The entire infrastructure shall be provided as support and mostly the service is provided as Virtual Machines (VMs) where the user need not worry about the infrastructure at all. Users manage the machines. They select the OS and underlying applications. PAY as YOU use! (With IaaS approach, one can choose virtual machines over physical machines.)
  4. What are the various cloud deployment models? List their merits and de-merits.

Solution:

  1. Private Cloud Deployment: This is one of the best models where the data carries the highest respect and where the data generated is safeguarded without any flaw. Wherever confidentiality matters the most, this particular deployment model can be opted. Wherever and whenever the IP (Intellectual Property) needs to be protected, this model can be chosen. When this model is chosen, the complete control of everything is well within the organization for which the deployment is carried out.

In this approach, the cloud servers are typically in the datacentres inside the organization. Hence, everything has to be taken care of by the organization which owns this deployment. This model demands that the hardware, software, datacentre, personnel, infrastructure, etc. be maintained, monitored, installed by the organization, which makes this model expensive but also offers the organization complete flexibility in terms of deciding the resources and how

manage the same. Also, data security can be ensured in the best possible way through this model as per the organization’s data security guidelines.

Advantages of private cloud deployment:

  • Data security
  • Flexibility

Disadvantages of private cloud deployment:

  • Could prove expensive
  • Maintenance, periodic upgradation, etc. could be difficult
  • Policies and other related things are to be framed carefully to make sure that the data is safe.
  1. Public Cloud Deployment: This deployment is meant for general public or a large

group. The cloud service provider owns all the resources which include hardware/infrastructure and software. Cloud service provider (like Amazon, Microsoft) will take care of all the resource management. Installation, maintenance, upgradation, monitoring everything comes under the pursuit of the service provider. If someone wishes to go with this model, what needs to subscribe and use, simple. No other commitments are asked of the user.

Access to this cloud service happens via the Internet. The biggest advantage one could cite in this approach is, ease of usage and it being inexpensive compared to private cloud deployment. The approach of pay and use makes the life of the cloud service consumer easier. Also, when opting for this deployment model, one would get 24*7 customer support for technical and other related clarifications. However, security and privacy issues are the major challenges.

Advantages of public cloud deployment:

  • Pay and use − this is really easy.
  • No investment on the hardware or infrastructure.
  • Customer support and on demand.
  • Scalable.

Disadvantages of public cloud deployment:

  • Data is not with in the walls of the organization (User).
  • Securing the data while ensuring privacy is a certain challenge.