MSC DS IOT Extra Notes
MSC DS IOT Extra Notes
TCP/ IP:
Transmission Control Protocol (TCP) is a communications standard that enables application programs
and computing devices to exchange messages over a network. It is designed to send packets across
the internet and ensure the successful delivery of data and messages over networks.
TCP is one of the basic standards that define the rules of the internet and is included within the
standards defined by the Internet Engineering Task Force (IETF). It is one of the most commonly used
protocols within digital network communications and ensures end-to-end data delivery.
TCP organizes data so that it can be transmitted between a server and a client. It guarantees the
integrity of the data being communicated over a network. Before it transmits data, TCP establishes a
connection between a source and its destination, which it ensures remains live until communication
begins. It then breaks large amounts of data into smaller packets, while ensuring data integrity is in
place throughout the process.
As a result, high-level protocols that need to transmit data all use TCP Protocol. Examples include
peer-to-peer sharing methods like File Transfer Protocol (FTP), Secure Shell (SSH), and Telnet. It is
also used to send and receive email through Internet Message Access Protocol (IMAP), Post Office
Protocol (POP), and Simple Mail Transfer Protocol (SMTP), and for web access through the Hypertext
Transfer Protocol (HTTP).
An alternative to TCP in networking is the User Datagram Protocol (UDP), which is used to
establish low-latency connections between applications and decrease transmissions time. TCP can be
an expensive network tool as it includes absent or corrupted packets and protects data delivery with
controls like acknowledgments, connection startup, and flow control.
UDP does not provide error connection or packet sequencing nor does it signal a destination before
it delivers data, which makes it less reliable but less expensive. As such, it is a good option for time-
sensitive situations, such as Domain Name System (DNS) lookup, Voice over Internet Protocol (VoIP),
and streaming media.
What is IP?
The Internet Protocol (IP) is the method for sending data from one device to another across the
internet. Every device has an IP address that uniquely identifies it and enables it to communicate
with and exchange data with other devices connected to the internet. Today, it’s considered the
standard for fast and secure communication directly between mobile devices.
IP is responsible for defining how applications and devices exchange packets of data with each other.
It is the principal communications protocol responsible for the formats and rules for exchanging data
and messages between computers on a single network or several internet-connected networks. It
does this through the Internet Protocol Suite (TCP/IP), a group of communications protocols that are
split into four abstraction layers.
IP is the main protocol within the internet layer of the TCP/IP. Its main purpose is to deliver data
packets between the source application or device and the destination using methods and structures
that place tags, such as address information, within data packets.
How Does Transmission Control Protocol (TCP)/IP Work?
The TCP/IP model is the default method of data communication on the Internet. It was developed by
the United States Department of Defense to enable the accurate and correct transmission of data
between devices. It breaks messages into packets to avoid having to resend the entire message in
case it encounters a problem during transmission. Packets are automatically reassembled once they
reach their destination. Every packet can take a different route between the source and the
destination computer, depending on whether the original route used becomes congested or
unavailable.
TCP/IP divides communication tasks into layers that keep the process standardized, without
hardware and software providers doing the management themselves. The data packets must pass
through four layers before they are received by the destination device, then TCP/IP goes through the
layers in reverse order to put the message back into its original format.
A good example of how this works in practice is when an email is sent using SMTP from an email
server. To start the process, the TCP layer in the server divides the message into packets, numbers
them, and forwards them to the IP layer, which then transports each packet to the destination email
server. When packets arrive, they are handed back to the TCP layer to be reassembled into the
original message format and handed back to the email server, which delivers the message to a user’s
email inbox.
TCP/IP uses a three-way handshake to establish a connection between a device and a server, which
ensures multiple TCP socket connections can be transferred in both directions concurrently. Both the
device and server must synchronize and acknowledge packets before communication begins, then
they can negotiate, separate, and transfer TCP socket connections.
The TCP/IP model defines how devices should transmit data between them and enables
communication over networks and large distances. The model represents how data is exchanged and
organized over networks. It is split into four layers, which set the standards for data exchange and
represent how data is handled and packaged when being delivered between applications, devices,
and servers.
1. Datalink layer: The datalink layer defines how data should be sent, handles the physical act
of sending and receiving data, and is responsible for transmitting data between applications
or devices on a network. This includes defining how data should be signalled by hardware
and other transmission devices on a network, such as a computer’s device driver,
an Ethernet cable, a network interface card (NIC), or a wireless network. It is also referred to
as the link layer, network access layer, network interface layer, or physical layer and is the
combination of the physical and data link layers of the Open Systems Interconnection (OSI)
model, which standardizes communications functions on computing and
telecommunications systems.
2. Internet layer: The internet layer is responsible for sending packets from a network and
controlling their movement across a network to ensure they reach their destination. It
provides the functions and procedures for transferring data sequences between applications
and devices across networks.
3. Transport layer: The transport layer is responsible for providing a solid and reliable data
connection between the original application or device and its intended destination. This is
the level where data is divided into packets and numbered to create a sequence. The
transport layer then determines how much data must be sent, where it should be sent to,
and at what rate. It ensures that data packets are sent without errors and in sequence and
obtains the acknowledgment that the destination device has received the data packets.
4. Application layer: The application layer refers to programs that need TCP/IP to help them
communicate with each other. This is the level that users typically interact with, such as
email systems and messaging platforms. It combines the session, presentation, and
application layers of the OSI model.
UDP:
User Datagram Protocol (UDP) is a communications protocol for time-sensitive applications like
gaming, playing videos, or Domain Name System (DNS) lookups. UDP results in speedier
communication because it does not spend time forming a firm connection with the destination
before transferring the data. Because establishing the connection takes time, eliminating this step
results in faster data transfer speeds.
However, UDP can also cause data packets to get lost as they go from the source to the destination. It
can also make it relatively easy for a hacker to execute a distributed denial-of-service (DDoS) attack.
In many cases, particularly with Transmission Control Protocol (TCP), when data is transferred across
the internet, it not only has to be sent from the destination but also the receiving end has to signal
that it is ready for the data to arrive. Once both of these aspects of the communication are fulfilled,
the transmission can begin. However, with UDP, the data is sent before a connection has been firmly
established. This can result in problems with the data transfer, and it also presents an opportunity for
hackers who seek to execute DDoS attacks.
In comparison to other networking protocols, the process behind UDP is fairly simple. A target
computer is identified and the data packets, called “datagrams,” are sent to it. There is nothing in
place to indicate the order in which the packets should arrive. There is also no process for checking if
the datagrams reached the destination.
Even though UDP comes with checksums, which are meant to ensure the integrity of the data, and
port numbers, which help differentiate the role the data plays at the source and destination, the lack
of an obligatory handshake presents a problem. The program the user is executing with the help of
UDP is left exposed to unreliable facets of the underlying network.
As a result, the data may get delivered, and it may not. In addition, the order in which it arrives is not
controlled, as it is in TCP, so the way the data appears at the final destination may be glitchy, out of
order, or have blank spots.
However, in a situation where there is no need to check for errors or correct the data that has been
sent, this may not pose a significant problem. This is one reason why UDP is used in video
applications. Getting the video signal to its destination on time is worth the occasional glitches.
Applications of UDP
4. Real-time applications in which the information needs to be delivered quickly and smoothly
o Real Time Streaming Protocol (RTSP), Trivial File Transfer Protocol (TFTP), RIP
o DNS
UDP vs TCP
As data is transferred from one point to another, it is given a header, which tells devices what
to do with it. The UDP header is a simple 8-byte fixed header. With TCP, on the other hand,
the header can vary from 20 to 60 bytes. The fields for UDP port numbers are 16 bits long,
giving them a range that goes from 0 up to 65535. The header consists of a 16-bit source
port, a 16-bit destination port, a 16-bit length, and a 16-bit checksum. This is the information
used to send the datagram toward its destination. The sending process does not involve any
verification of a connection between the source and the destination’s is different in that it
requires a handshake between where the data originates and where it is headed. This makes
TCP more reliable than UDP. In the course of a TCP communication, the data can only be sent
along after the destination and source have been formally linked. With UDP, because no link
is required, the data can be sent right away. Another difference between TCP and UDP
communications is that with TCP, the order in which the packets need to be received is
confirmed before the transmission begins. Also, TCP provides for the confirmation that the
packets arrived as intended. In the event that the packet does not arrive, TCP dictates that it
needs to be sent again. UDP does not require any confirmation, checking, or resending.
If an application uses UDP, the users assume the risk of errors, the data not reaching its
destination, or being duplicated. The reward for accepting this trade-off is better speed. UDP
itself is not necessarily to blame for the data loss. The information in the header is sufficient to
get the data where it needs to go, and the chronological order of the sending of the datagrams
should keep them in order. However, the majority of network routers are not capable of arrival
confirmation or packet ordering. Data packets can get lost or duplicated. TCP accounts for this
“weakness” in most network routers by making sure data gets where it is going and in the right
order.
SSL:
SSL, or Secure Sockets Layer, is an encryption-based Internet security protocol. It was first developed
by Netscape in 1995 for the purpose of ensuring privacy, authentication, and data integrity in
Internet communications. SSL is the predecessor to the modern TLS encryption used today. A
website that implements SSL/TLS has "HTTPS" in its URL instead of "HTTP."
• In order to provide a high degree of privacy, SSL encrypts data that is transmitted across the
web. This means that anyone who tries to intercept this data will only see a garbled mix of
characters that is nearly impossible to decrypt.
• SSL also digitally signs data in order to provide data integrity, verifying that the data is not
tampered with before reaching its intended recipient.
There have been several iterations of SSL, each more secure than the last. In 1999 SSL was updated
to become TLS.
Originally, data on the Web was transmitted in plaintext that anyone could read if they intercepted
the message. For example, if a consumer visited a shopping website, placed an order, and entered
their credit card number on the website, that credit card number would travel across the Internet
unconcealed.
SSL was created to correct this problem and protect user privacy. By encrypting any data that goes
between a user and a web server, SSL ensures that anyone who intercepts the data can only see a
scrambled mess of characters. The consumer's credit card number is now safe, only visible to the
shopping website where they entered it.
SSL also stops certain kinds of cyber-attacks: It authenticates web servers, which is important
because attackers will often try to set up fake websites to trick users and steal data. It also prevents
attackers from tampering with data in transit, like a tamper-proof seal on a medicine container.
An SSL certificate is a digital certificate that authenticates a website's identity and enables an
encrypted connection. SSL stands for Secure Sockets Layer, a security protocol that creates an
encrypted link between a web server and a web browser.
Companies and organizations need to add SSL certificates to their websites to secure online
transactions and keep customer information private and secure.
In short: SSL keeps internet connections secure and prevents criminals from reading or modifying
information transferred between two systems. When you see a padlock icon next to the URL in the
address bar, that means SSL protects the website you are visiting.
Since its inception about 25 years ago, there have been several versions of SSL protocol, all of which
at some point ran into security troubles. A revamped and renamed version followed — TLS
(Transport Layer Security), which is still in use today. However, the initials SSL stuck, so the new
version of the protocol is still usually called by the old
DNS:
A DNS server is a computer with a database containing the public IP addresses associated with the
names of the websites an IP address brings a user to. DNS acts like a phonebook for the internet.
Whenever people type domain names, like Fortinet.com or Yahoo.com, into the address bar of web
browsers, the DNS finds the right IP address. The site’s IP address is what directs the device to go to
the correct place to access the site’s data.
Once the DNS server finds the correct IP address, browsers take the address and use it to send data
to content delivery network (CDN) edge servers or origin servers. Once this is done, the information
on the website can be accessed by the user. The DNS server starts the process by finding the
corresponding IP address for a website’s uniform resource locator (URL).
In a usual DNS query, the URL typed in by the user has to go through four servers for the IP address
to be provided. The four servers work with each other to get the correct IP address to the client, and
they include:
1. DNS recursor: The DNS recursor, which is also referred to as a DNS resolver, receives the
query from the DNS client. Then it communicates with other DNS servers to find the right IP
address. After the resolver retrieves the request from the client, the resolver acts like a client
itself. As it does this, it makes queries that get sent to the other three DNS servers: root
nameservers, top-level domain (TLD) nameservers, and authoritative nameservers.
2. Root nameservers: The root nameserver is designated for the internet's DNS root zone. Its
job is to answer requests sent to it for records in the root zone. It answers requests by
sending back a list of the authoritative nameservers that go with the correct TLD.
3. TLD nameservers: A TLD nameserver keeps the IP address of the second-level domain
contained within the TLD name. It then releases the website’s IP address and sends the
query to the domain’s nameserver.
4. Authoritative nameservers: An authoritative nameserver is what gives you the real answer to
your DNS query. There are two types of authoritative nameservers: a master server or
primary nameserver and a slave server or secondary nameserver. The master server keeps
the original copies of the zone records, while the slave server is an exact copy of the master
server. It shares the DNS server load and acts as a backup if the master server fails.
What is URL and explain its parts using an example?
If you've been surfing the Web, you have undoubtedly heard the term URL and have used URLs to
access HTML pages from the Web.
It's often easiest, although not entirely accurate, to think of a URL as the name of a file on the World
Wide Web because most URLs refer to a file on some machine on the network. However, remember
that URLs also can point to other resources on the network, such as database queries and command
output.
• Protocol identifier: For the URL http://example.com, the protocol identifier is http.
• Resource name: For the URL http://example.com, the resource name is example.com.
Note that the protocol identifier and the resource name are separated by a colon and two forward
slashes. The protocol identifier indicates the name of the protocol to be used to fetch the resource.
The example uses the Hypertext Transfer Protocol (HTTP), which is typically used to serve up
hypertext documents. HTTP is just one of many different protocols used to access different types of
resources on the net. Other protocols include File Transfer Protocol (FTP), Gopher, File, and News.
The resource name is the complete address to the resource. The format of the resource name
depends entirely on the protocol used, but for many protocols, including HTTP, the resource name
contains one or more of the following components:
Host Name
Filename
Port Number
Reference
A reference to a named anchor within a resource that usually identifies a specific location within a
file (typically optional).
For many protocols, the host name and the filename are required, while the port number and
reference are optional. For example, the resource name for an HTTP URL must specify a server on
the network (Host Name) and the path to the document on that machine (Filename); it also can
specify a port number and a reference