You are on page 1of 11

UNIT 4: Transport and Session layer Protocols

1. Transport Layer Protocols:

1- TCP
2- MPTCP
3- UDP
4- DCCP
5- SCTP
6- TLS
7- DTLS

Q.1 Write a note on Transport layer and list its ptorocols.2M/3M


 Transport is the OSI Level 4 layer and is recognized by the same name in the TCP-IP
model. Like physical layer, data link layer and network layer, this layer is also part of the
infrastructure layer in IOT reference architecture.
 Transport layer which is also known as routing layer is responsible for routing of data
packets over a network. At this layer, ordering of packets, error detection and correction
in delivery of data packets is performed.
 UDP (User Datagram protocol) is often adopted for IoT transport for performance
reasons.
 The commonly used transport layer protocols include the following –
o TCP
o MPTCP
o UDP
o DCCP
o SCTP
o DTLS
o TLS

Q.2 Write a note on Tcp.2M/3M

 TCP – Transmission Control Protocol (TCP) is connection oriented and heavyweight


Protocol.
 It is suitable for reliable communication because in this protocol acknowledgment is
Received when the client sends the packet to the server via TCP protocol.
 The data must be guaranteed sent at the other end if the packet is sent via TCP
protocol.
 The protocol operates in three phases – Connection establishment, data transfer and
Connection close.
 The packet overhead is very large in this protocol. TCP consumes more power from the
Devices and has large overhead so it is not suitable for low power devices with
Constrained environment. Therefore, UDP is preferred as a connection less protocol for
Low overhead.
Q.3 Write a note on MPTCP.2M/3M

 The Internet protocol suite is the computer networking model and set of
communications protocols used on the Internet and similar computer networks.

 It is commonly known as TCP/IP, because its most important protocols, the Transmission
Control Protocol (TCP) and the Internet Protocol (IP) were the first networking protocols
defined in this standard.

 TCP is one of the key Internet protocols. It provides a reliable byte stream service and is
used by all applications that need to exchange data reliably, including web, email, file
transfer, video streaming, … Statistics collected by researchers and network operators
show that 90 to 95% of the total Internet traffic is driven by TCP.

 MPTCP is an ongoing effort of the IETF Multipath TCP working group, that aims at
allowing a TCP connection to use multiple paths to maximize resource usage and
increase redundancy.
 In other words, MPTCP will allow one TCP session to be conveyed on several paths
(several TCP sub flows) over different access networks.

 Multipath TCP is a recently standardized extension to the TCP protocol that solves this
problem by enabling a TCP connection to send data over any number of interfaces while
still providing the same service to the application.
 Multipath TCP achieves this by combining several TCP connections, called sub flows in
the reference architecture shown in the figure below.
 However, the version of TCP that is used on our laptops, smartphones and servers
suffers from one major limitation : one TCP connection can use only one of the laptop’s
communications interfaces. This is because TCP is tightly coupled with IP. When a TCP
connection starts over, for instance, the Wi-Fi interface of say a Smartphone, it cannot
simply transition to the cellular interface when the smart phone moves away from the
Wi-Fi access point.
 To better understand the operation of Multipath TCP, let us consider the simple
scenario of a Smartphone that wants to exchange data over both its Wi-Fi and cellular
interfaces with a server in the cloud than it is possible with the help of MPTCP.
Q.4 Write a note on UDP.2M/3M

 User Datagram Protocol is a connection less protocol and is not reliable for transmission
of data.

 However, the UDP protocol is a best protocol to send data to the server when packet
loss during transmission of the data can be afforded.

 UDP protocol is a lightweight protocol and is suitable for wireless sensor network
communication.

 UDP doesn’t correct errors, duplicates, or missing pieces. If a protocol uses UDP for
transmitting data, data integrity is either unimportant, or the application itself has a
process for checking against errors.

UDP headers

 Like TCP, UDP labels data packets with a header. But UDP headers are much simpler.
There are only four fields:

1. Source port
2. Destination port
3. UDP length
4. Checksum

 The source port indicates where the transmission is coming from. The destination port
indicates where it’s going. The UDP length specifies how many bytes the header and
data represent. And the checksum is a field that can be used to check for errors in the
header or data stream.
 TCP has numerous additional fields in the header which help verify that the data packets
arrive intact and can be rearranged as needed. These additional fields significantly
increase the size of the header.

 UDP in IoT:

 In IoT (and data transmission in general), User Datagram Protocol is less common than
TCP. But UDP often appeals to IoT manufacturers because it uses less data and
consumes less power.

 Resource constrained devices:

 IoT devices often operate within Low power, Lossy Networks (LLNs). LLNs are optimized
for power efficiency, so they have very few resources.

 Constrained Application Protocol (CoAP) was specifically developed to help these


devices communicate, and it runs on devices that use UDP.

 With UDP, you need to be proactive about IoT security and be confident that your
hardware and network-level security can protect your customers’ data and prevent your
devices from becoming liabilities.

Q.5 Explain DCCP.2M/3M

 DCCP Stands for Datagram Congestion Control Protocol.

 DCCP is a message-oriented transport layer protocol. This protocol is more secure than
TCP protocol.

 Compared to TCP which has a single byte long ID for each packet, the packet ID is 48-bit
long (6-bytes) in DCCP.

 This makes it hard for any attacker to hack data packets. This protocol is generally used
for time critical data transfers like media streaming and VoIP.

Q.6 Explain SCTP.2M/3M

 SCTP stands for Stream Control Transmission Protocol.

 SCTP protocol is a message oriented transport layer protocol and it is responsible for
congestion
control to reliably transfer data over a network.
 The data transferred along with a 12-byte header is secured using 4-way handshake.
 Due to multi-path data sharing options, data is reliably sent to the destination.

Q.7 Explain TLS and DTLS.2M/3M

TLS: TLS stands for Transport Layer Security.

TLS is a security protocol which uses symmetric cryptography to secure data.

This protocol has been now prohibited from use due to security considerations.

DTLS: DTLS stands for Datagram Transport Layer Security.

DTLS is based on Transport Layer Security (TLS) protocol.

It is a stream oriented transport layer protocol. This is a security protocol designed against
Message forgery, tampering and eavesdropping.

However, large packet size, packet reordering and loss of datagram are some of the major
Drawbacks of this protocol stack.

2. Session Layer Protocols


1- MQTT
2- SMQTT
3- AMQP
4- CoAP
5- XMPP
6- DDS

Q.8 Write a note on session layer.2M/3M

This layer reviews standards and protocols for message passing in IoT by different
Standardization organizations.

Most of the IP applications, including IoT applications use TCP or UDP for transport.
However, there are several message distribution functions that are common among many
IoT applications;

It is desirable that these functions be implemented in an interoperable standard ways by


Different applications. These are the so called “Session Layer” protocols. Some session
Layer important protocols are …

1- MQTT
2- SMQTT
3- AMQP
4- CoAP
5- XMPP
6- DDS

Q.9 Write a note on MQTT.2M/3M

Message Queue Telemetry Transport (MQTT) was introduced by IBM in 1999 and
Standardized in 2013.

It is designed to provide embedded connectivity between applications and middleware’s


On one side and networks and communications on the other side.

The MQTT protocol has Clients and a Broker. MQTT clients subscribe to, and publish on,
Topics. The MQTT clients communicate to one another through an MQTT Broker, which is
Primarily responsible for receiving all messages, filtering them, deciding who is interested
In it and then sending the message to all subscribed clients.

A diagram showing three clients and a broker is shown below. The temperature sensor
Client publishes the current temperature on the “temp” topic. The computer and mobile
Device clients receive this temperature reading since they subscribed on the “temp” topic.
The broker manages the connections and message communications.

Q.10 Write a note on SMQTT.2M/3M

 An extension of MQTT is Secure MQTT (SMQTT) which uses encryption based on


Lightweight attribute based encryption.

 The main advantage of using such encryption is the broadcast encryption feature, in
Which one message is encrypted and delivered to multiple other nodes, which is quite
Common in IoT applications.

 In general, the algorithm consists of four main stages: setup, encryption, publish and
Decryption.

 In the setup phase, the subscribers and publishers register themselves to the broker and
Get a master secret key according to their developer’s choice of key generation
Algorithm.

 Then, when the data is published, it is encrypted, published by the broker which sends it
to the subscribers and finally decrypted at the subscribers which have the same master
secret key.

Q.11 Write a note on AMQP.2M/3M

 AMQP stands Advanced Message Queuing Protocol.

 The Advanced Message Queuing Protocol (AMQP) is another session layer protocol that
Was designed for financial industry. It runs over TCP and provides a publish/ subscribe
Architecture which is similar to that of MQTT.

 The difference is that the broker is divided into two main components: exchange and
Queues.

 The exchange is responsible for receiving publisher messages and distributing them to
Queues based on pre-defined roles and conditions. Queues basically represent the
topics and subscribed by subscribers which will get the sensory data whenever they are
Available in the queue.

 Exchange: Receives messages from publisher primarily based programs and routes them
To ‘message queues’.
 Message Queue: Stores messages until they may thoroughly process via the eating
client software.
 Binding: States the connection between the message queue and the change.
Q.12 Write a note on CoAP.2M/3M

The Constrained Application Protocol (CoAP) is another session layer protocol designed
By IETF Constrained RESTful Environment (Core) working group to provide lightweight
RESTful (HTTP) interface.

Representational State Transfer (REST) is the standard interface between HTTP client
And servers.

However, for lightweight applications such as IoT, REST could result in significant
Overhead and power consumption.

CoAP is designed to enable low-power sensors to use RESTful services while meeting
Their power constrains.

It is built over UDP, instead of TCP commonly used in HTTP and has a light mechanism to
Provide reliability.
 CoAP architecture is divided into two main sub layers: messaging and request
Response.

 The messaging sub layer is responsible for reliability and duplication of messages
While the request/response sub layer is responsible for communication.

Q.13 Write a note on XMPP.2M/3M

 Extensible Messaging and Presence Protocol (XMPP) is a messaging protocol that was
Designed originally for chatting and message exchange applications.

 It was standardized by IETF more than a decade ago. Hence, it is well known and has
Proven to be highly efficient over the internet.

 Recently, it has been reused for IoT applications. This reusing of the same standard is
due to its use of XML which makes it easily extensible.
 XMPP supports both publish/ subscribe and request/ response architecture and it is up
To the application developer to choose which architecture to use. It is designed for near
Real-time applications. thus, efficiently supports low-latency small messages.

 It does not provide any quality of service guarantees and, hence, is not used for M2M
Communications. Hence, XMPP is rarely used in IoT but has gained some interest for
Enhancing its architecture in order to support IoT applications.

Q.14 Write a note on DDS.2M/3M

 Data Distribution Service (DDS) is another publish/subscribe protocol that is designed by


The Object Management Group (OMG) for M2M communications.

 Protocol is the excellent quality of service levels and reliability guarantees as it relies on
A broker-less architecture, which suits IoT and M2M communication.

 It offers 23 quality-of service levels which allow it to offer a variety of quality criteria
Including: security, urgency, priority, durability, reliability, etc. It defines two sub layers:
Data-centric publish- subscribe and data-local reconstruction sub layers.

 The first takes the responsibility of message delivery to the subscribers while the second
Is optional and allows a simple integration of DDS in the application layer.

 Publisher layer is responsible for sensory data distribution. Data writer interacts with
the Publishers to agree about the data and changes to be sent to the subscribers.

 Subscribers are the receivers of sensory data to be delivered to the IoT application. Data
Readers basically read the published data and deliver it to the subscribers and the topics
Are basically the data that are being published?

 In others words, data writers and data reader take the responsibilities of the broker in
the broker-based architectures.

 Summary:

 IoT has many standardized session layer protocols which were briefly highlighted in this
Section.
 These session layer protocols are application dependent and the choice between them
Is very application specific?
 It should be noted that MQTT is the most widely used in IoT due to its low overhead and
Power consumption It’s an organizational and applications specific to choose between
These standards.
 If the application requires REST functionality as it will be HTTP based, then CoAP would
Be the best option.

You might also like