You are on page 1of 37

Unit-4 Transport Layer

● The transport layer is a 4th layer from the top.

● The main role of the transport layer is to provide the communication services directly to the
application processes running on different hosts.

● The transport layer provides a logical communication between application processes running on
different hosts. Although the application processes on different hosts are not physically connected,
application processes use the logical communication provided by the transport layer to send the
messages to each other.

● The transport layer protocols are implemented in the end systems but not in the network routers.

● A computer network provides more than one protocol to the network applications. For example,
TCP and UDP are two transport layer protocols that provide a different set of services to the
network layer.

● All transport layer protocols provide multiplexing/demultiplexing service. It also provides other
services such as reliable data transfer, bandwidth guarantees, and delay guarantees.

● Each of the applications in the application layer has the ability to send a message by using TCP or
UDP. The application communicates by using either of these two protocols. Both TCP and UDP
will then communicate with the internet protocol in the internet layer. The applications can read
and write to the transport layer. Therefore, we can say that communication is a two-way process.
II.Services provided by the Transport Layer
The services provided by the transport layer are similar to those of the data link layer. The data link layer provides the
services within a single network while the transport layer provides the services across an internetwork made up of
many networks. The data link layer controls the physical layer while the transport layer controls all the lower layers.

The services provided by the transport layer protocols can be divided into five categories:

● End-to-end delivery
● Addressing
● Reliable delivery
● Flow control
● Multiplexing

I.End-to-end delivery:
The transport layer transmits the entire message to the destination. Therefore, it ensures the end-to-end delivery of
an entire message from a source to the destination.

II.Reliable delivery:
The transport layer provides reliability services by retransmitting the lost and damaged packets.
The reliable delivery has four aspects:

1.Error control
2.Sequence control
3.Loss control
4.Duplication control

1.Error Control
● --The primary role of reliability is Error Control. In reality, no transmission will be 100 percent error-free
delivery. Therefore, transport layer protocols are designed to provide error-free transmission.
● --The data link layer also provides the error handling mechanism, but it ensures only node-to-node error-free
delivery. However, node-to-node reliability does not ensure the end-to-end reliability.
● --The data link layer checks for the error between each network. If an error is introduced inside one of the
routers, then this error will not be caught by the data link layer.
● It only detects those errors that have been introduced between the beginning and end of the link. Therefore,
the transport layer performs the checking for the errors end-to-end to ensure that the packet has arrived
correctly.
2.Sequence Control

● –The second aspect of the reliability is sequence control which is implemented at the transport layer.
● –On the sending end, the transport layer is responsible for ensuring that the packets received from the
upper layers can be used by the lower layers.
● On the receiving end, it ensures that the various segments of a transmission can be correctly reassembled.
3.Loss Control

● -Loss Control is a third aspect of reliability. The transport layer ensures that all the fragments of a
transmission arrive at the destination, not some of them.
● On the sending end, all the fragments of transmission are given sequence numbers by a transport layer.
● These sequence numbers allow the receiver?s transport layer to identify the missing segment.

4.Duplication Control

● -Duplication Control is the fourth aspect of reliability.


● The transport layer guarantees that no duplicate data arrive at the destination. Sequence numbers are used
to identify the lost packets; similarly, it allows the receiver to identify and discard duplicate segments.

III.Flow Control
● –Flow control is used to prevent the sender from overwhelming the receiver.
● -- If the receiver is overloaded with too much data, then the receiver discards the packets and asking for the
retransmission of packets.
● –This increases network congestion and thus, reducing the system performance. The transport layer is
responsible for flow control.
● – It uses the sliding window protocol that makes the data transmission more efficient as well as it controls
the flow of data so that the receiver does not become overwhelmed.
● –Sliding window protocol is byte oriented rather than frame oriented

IV.Multiplexing
● The transport layer uses the multiplexing to improve transmission efficiency.

Multiplexing can occur in two ways:

Upward multiplexing: Upward multiplexing means multiple transport layer connections use the same network
connection.
● –To make more cost-effective, the transport layer sends several transmissions bound for the same
destination along the same path; this is achieved through upward multiplexing.

Downward multiplexing: Downward multiplexing means one transport layer connection uses the multiple network
connections.
● –Downward multiplexing allows the transport layer to split a connection among several paths to improve the
throughput. This type of multiplexing is used when networks have a low or slow capacity.
V.Addressing:
● –According to the layered model, the transport layer interacts with the functions of the session layer.
● –Many protocols combine session, presentation, and application layer protocols into a single layer known as
the application layer.
● – In these cases, delivery to the session layer means the delivery to the application layer. Data generated by
an application on one machine must be transmitted to the correct application on another machine.
● –In this case, addressing is provided by the transport layer.
● –The transport layer provides the user address which is specified as a station or port.
The port variable represents a particular TS user of a specified station known as a
Transport Service access point (TSAP).

● – Each station has only one transport entity.


The transport layer protocols need to know which upper-layer protocols are communicating.

III.ELEMENTS OF TRANSPORT PROTOCOLS


● —The transport service is implemented by a transport protocol used between the two
transport entities. The transport protocols resemble the data link protocols.
● — Both have to deal with error control, sequencing, and flow control, among other issues. The difference
transport protocol and data link protocol depends upon the environment in which they are operated.
● —These differences are due to major dissimilarities between the environments in which
the two protocols operate, as shown in Fig.
● —At the data link layer, two routers communicate directly via a physical channel,
whether wired or wireless, whereas at the transport layer, this physical channel is replaced by the
entire network. This difference has many important implications for the protocols.

The elements of transport protocols are:


1. ADDRESSING
2. Connection Establishment.
3. Connection Release.
4. Error control and flow control
5. Multiplexing.
6. Crash Recovery

1. ADDRESSING
When an application (e.g., a user) process wishes to set up a connection to a remote
application process, it must specify which one to connect to.
The method normally used is to define transport addresses to which processes can listen for connection requests. In
the
Internet, these endpoints are called ports.

There are two types of access points.


● TSAP (Transport Service Access Point) to mean a specific endpoint in the transport
layer.
● The analogous endpoints in the network layer (i.e., network layer addresses) are not
surprisingly called“NSAPs (Network Service Access Points)”. IP addresses are examples of NSAPs.

2. CONNECTION ESTABLISHMENT:With packet lifetimes bounded, it is possible to devise a fool proof way to
establish connections safely.
● Packet lifetime can be bounded to a known maximum using one of the following
techniques:
● Restricted subnet design
● Putting a hop counter in each packet
● Time stamping in each packet
● Using a 3-way hand shake, a connection can be established. This establishment
● protocol doesn’t require both sides to begin sending with the same sequence number.

● In fig (A) Tomlinson (1975) introduced the three-way handshake.


This establishment protocol involves one peer checking with the other that the connection request is indeed current.
● Host 1 chooses a sequence number, x , and sends a CONNECTION REQUEST segment containing it to
host 2.
● Host 2 replies with an ACK segment acknowledging x and announcing its own initial sequence number, y.
● Finally, host 1 acknowledges host 2’s choice of an initial sequence number in the
first data segment that it sends
In fig (B) the first segment is a delayed duplicate CONNECTION REQUEST from an
old connection.
● This segment arrives at host 2 without host 1’s knowledge. Host 2 reacts to this
segment by sending host1an ACK segment, in effect asking for verification that
host 1 was indeed trying to set up a new connection.
● —-When host 1 rejects host 2’s attempt to establish a connection, host 2 realizes that it
was tricked by a delayed duplicate and abandons the connection. In this way, a
delayed duplicate does no damage.
● -The worst case is when both a delayed CONNECTION REQUEST and an ACK are floating around in the
subnet.

In fig (C) previous example, host 2 gets a delayed CONNECTION REQUEST and replies
to it.
● At this point, it is crucial to realize that host 2 has proposed using y as the initial sequence number for host 2
to host 1 traffic, knowing full well that no segments containing sequence number y or acknowledgements to
y are still in existence.
● When the second delayed segment arrives at host 2, the fact that z has been acknowledged rather than y
tells host 2 that this, too, is an old duplicate.
● The important thing to realize here is that there is no combination of old segments that can cause the
protocol to fail and have connection set up by accident when no one wants it.

3. CONNECTION RELEASE:
A connection is released using either asymmetric or symmetric variant. But, the
improved protocol for releasing a connection is a 3-way handshake protocol.
There are two styles of terminating a connection:
1) Asymmetric release and

2) Symmetric release.
Asymmetric release is the way the telephone system works: when one party
hangs up, the connection is broken. Symmetric release treats the connection as
two separate unidirectional connections and requires each one to be released

(a)One of the user sends a DISCONNECTION REQUEST TPDU inorder to initiate connection release.
When it arrives, the recipient sends back a DR-TPDU, too, and starts a timer.When this DR arrives, the original
sender sends back anACK- TPDU and releases the connection.
Finally, when the ACK-TPDU arrives, thereceiver also releases the connection.

(b)Initial process is done in the same way as in fig-(a).If the final ACK-TPDU is lost, the situation is saved by the
timer. When the timer is expired, the connection is released.

(c)If the second DR is lost, the user initiating the disconnection will not receive the expected response, and will
timeout and starts all over again.

(d)Same as in fig-(c) except that all repeated attempts to retransmit the DR is assumed to be failed due to lost
TPDUs. After ‘N’ entries, the sender just gives up and releases connection

4.flow control
—--ABOVE
5.Multiplexing
—---ABOVE
6. CrashRecovery
● TCP is very reliable protocol. It provides sequence number to each of byte sent in segment.
● –It provides the feedback mechanism i.e. when a host receives a packet, it is bound to ACK that packet
having the next sequence number expected (if it is not the last segment).

IV.Responsibilities of a Transport Layer

1.The Process to Process Delivery


2.End-to-End Connection between Hosts
3.Multiplexing and Demultiplexing
4.Congestion Control
5.Data integrity and Error correction
6.Flow control

1. The Process to Process Delivery


● While Data Link Layer requires the MAC address (48 bits address contained inside the Network
Interface Card of every host machine) of source-destination hosts to correctly deliver a frame and
the Network layer requires the IP address for appropriate routing of packets,
● in a similar way Transport Layer requires a Port number to correctly deliver the segments of data to
the correct process amongst the multiple processes running on a particular host.
● A port number is a 16-bit address used to identify any client-server program uniquely.

2. End-to-end Connection between Hosts


● The transport layer is also responsible for creating the end-to-end Connection between hosts for which it
mainly uses TCP and UDP.
● TCP is a secure, connection-orientated protocol that uses a handshake protocol to establish a robust
connection between two end hosts.
● TCP ensures the reliable delivery of messages and is used in various applications.
● UDP, on the other hand, is a stateless and unreliable protocol that ensures best-effort delivery.
● It is suitable for applications that have little concern with flow or error control and requires sending the bulk
of data like video conferencing. It is often used in multicasting protocols.

3. Multiplexing and Demultiplexing


● Multiplexing(many to one) is when data is acquired from several processes from the sender and merged into
one packet along with headers and sent as a single packet.
● Multiplexing allows the simultaneous use of different processes over a network that is running on a host.
● The processes are differentiated by their port numbers. Similarly, Demultiplexing(one to many is required at
the receiver side when the message is distributed into different processes.
● –Transport receives the segments of data from the network layer distributes and delivers it to the appropriate
process running on the receiver’s machine.

4. Congestion Control

Congestion is a situation in which too many sources over a network attempt to send data and the router buffers start
overflowing due to which loss of packets occurs.

–As a result, the retransmission of packets from the sources increases the congestion further. In this situation, the
Transport layer provides Congestion Control in different ways.

– It uses open-loop congestion control to prevent congestion and closed-loop congestion control to remove the
congestion in a network once it occurred.

– TCP provides AIMD – additive increases multiplicative decrease and leaky bucket technique for congestion control.

5. Data integrity and Error Correction


● The transport layer checks for errors in the messages coming from the application layer by using error
detection codes, and computing checksums, it checks whether the received data is not corrupted and uses
the ACK and NACK services to inform the sender if the data has arrived or not and checks for the integrity of
data.

V.TCP Connection Management

The connection is established in TCP using the three-way handshake as discussed earlier to create
a connection. One side, say the server, passively stays for an incoming link by implementing the
LISTEN and ACCEPT primitives, either determining a particular other side or nobody in particular.
—The other side performs a connect primitive specifying the I/O port to which it wants to join. The
maximum TCP segment size available, other options are optionally like some private data (example
password).
—The CONNECT primitive transmits a TCP segment with the SYN bit on and the ACK bit off and waits
for a response.
—The sequence of TCP segments sent in the typical case, as shown in the figure below −
● When the segment sent by Host-1 reaches the destination, i.e., host -2, the receiving server checks to see if
there is a process that has done a LISTEN on the port given in the destination port field.
● If not, it sends a response with the RST bit on to refuse the connection. Otherwise, it governs the TCP
segment to the listing process, which can accept or decline (for example, if it does not look similar to the
client) the connection.

Call Collision
● If two hosts try to establish a connection simultaneously between the same two sockets, then the events
sequence is demonstrated in the figure under such circumstances.
● Only one connection is established. It cannot select both the links because their endpoints identify
connections.

● Suppose the first set up results in a connection identified by (x, y) and the second connection are also
released up. In that case, only tail enter will be made, i.e., for (x, y) for the initial sequence number, a
clock-based scheme is used, with a clock pulse coming after every 4 microseconds.
● For ensuring additional safety when a host crashes, it may not reboot for sec, which is the maximum
packet lifetime. This is to make sure that no packets from previous connections are roaming around.

Connection Termination Protocol (Connection Release)

● While it creates three segments to establish a connection, it takes four segments to terminate a connection.
During a TCP connection is full-duplex (that is, data flows in each direction independently of the other
direction), each direction should be shut down alone.

● The termination procedure for each host is shown in the figure. The rule is that either end can share a FIN
when it has finished sending data.

● When a TCP receives a FIN, it should notify the application that the other end has terminated that data flow
direction. The sending of a FIN is usually the result of the application issuing a close.

● The receipt of a FIN only means that there will be no more data flowing in that direction. A TCP can send
data after receiving a FIN. The end that first issues the close (example, send the first FIN) executes the
active close. The other end (that receives this FIN) manages the passive close
TCP Segmen Header

Every TCP segment consists of a 20 byte fixed format header. Header options may follow the fixed header. With a
header so that it can tag up to 65535 data bytes.

The TCP header format is shown in the figure below −

Source Port:- It is a 16-bit source port number used by the receiver to reply.

Destination Port:-It is a 16-bit destination port number.

Sequence Number:-The sequence number of the first data byte in this segment. During the SYN Control bit is set,
and the sequence number is n, and the first data byte is n + 1.
Acknowledgement Number:-If the ACK control bit is set, this field contains the next number that the receiver
expects to receive.

Data Offset
The several 32-bit words in the TCP header shows from where the user data begins.

Reserved (6 bit)
It is reserved for future use.

URG
It indicates an urgent pointer field that data type is urgent or not.

ACK
It indicates that the acknowledgement field in a segment is significant, as discussed early.

PUSH
The PUSH flag is set or reset according to a data type that is sent immediately or not.

RST
It Resets the connection.

SYN
It synchronizes the sequence number.

FIN
This indicates no more data from the sender.

Window
It is used in Acknowledgement segment. It specifies the number of data bytes, beginning with the one indicated in the
acknowledgement number field that the receiver is ready to accept.

Checksum
It is used for error detection.

Options
The IP datagram options provide additional punctuality. It can use several optional parameters between a TCP
sender and receiver
Table of Options
The table of options in TCP segment header is as follows −
Padding
Options in each may vary in size, and it may be necessary to "pad" the TCP header with zeros so that the segment
ends on a 32-bit word boundary as per the standard.

Data
Although in some cases like acknowledgement segments with no data in the reverse direction, the variable-length
field carries the application data from sender to receiver. This field, connected with the TCP header fields, constitute a
TCP segment.

VI.User Datagram Protocol (UDP)


● User Datagram Protocol (UDP) is a Transport Layer protocol. UDP is a part of the Internet Protocol suite,
referred to as UDP/IP suite. Unlike TCP, it is an unreliable and connectionless protocol.

● So, there is no need to establish a connection prior to data transfer. The UDP helps to establish low-latency
and loss-tolerating connections establish over the network.The UDP enables process to process
communication.

● Though Transmission Control Protocol (TCP) is the dominant transport layer protocol used with most of the
Internet services; provides assured delivery, reliability, and much more but all these services cost us
additional overhead and latency.

● Here, UDP comes into the picture. For real-time services like computer gaming, voice or video
communication, live conferences; we need UDP. Since high performance is needed, UDP permits packets to
be dropped instead of processing delayed packets.

● There is no error checking in UDP, so it also saves bandwidth.


User Datagram Protocol (UDP) is more efficient in terms of both latency and bandwidth.

UDP Header –

● UDP header is an 8-bytes fixed and simple header, while for TCP it may vary from 20 bytes to 60 bytes.
● The first 8 Bytes contains all necessary header information and the remaining part consist of data.
● UDP port number fields are each 16 bits long, therefore the range for port numbers is defined from 0 to
65535; port number 0 is reserved. Port numbers help to distinguish different user requests or processes.

Source Port: Source Port is a 2 Byte long field used to identify the port number of the source.

Destination Port: It is a 2 Byte long field, used to identify the port of the destined packet.

Length: Length is the length of UDP including the header and the data. It is a 16-bits field.

Checksum: Checksum is 2 Bytes long field. It is the 16-bit one’s complement of the one’s complement sum of the
UDP header, the pseudo-header of information from the IP header, and the data, padded with zero octets at the end
(if necessary) to make a multiple of two octets.

Notes – Unlike TCP, the Checksum calculation is not mandatory in UDP. No Error control or flow control is provided
by UDP. Hence UDP depends on IP and ICMP for error reporting. Also UDP provides port numbers so that is can
differentiate between users requests.

Application of UDP:

● Used for simple request-response communication when the size of data is less and hence there is lesser
concern about flow and error control.
● It is a suitable protocol for multicasting as UDP supports packet switching.
● UDP is used for some routing update protocols like RIP(Routing Information Protocol).
● Normally used for real-time applications which can not tolerate uneven delays between sections of a
received message.
● UDP is widely used in online gaming, where low latency and high-speed communication is essential for a
good gaming
● Following implementations uses UDP as a transport layer protocol:
NTP (Network Time Protocol)
DNS (Domain Name Service)
BOOTP, DHCP.
NNP (Network News Protocol)
Quote of the day protocol
TFTP, RTSP, RIP.
● The application layer can do some of the tasks through UDP-
Trace Route
Record Route
Timestamp

Advantage of UDP:

1. Speed: UDP is faster than TCP because it does not have the overhead of establishing a connection and ensuring
reliable data delivery.

2. Lower latency: Since there is no connection establishment, there is lower latency and faster response time.

3. Simplicity: UDP has a simpler protocol design than TCP, making it easier to implement and manage.

4. Broadcast support: UDP supports broadcasting to multiple recipients, making it useful for applications such as
video streaming and online gaming.

5. Smaller packet size: UDP uses smaller packet sizes than TCP, which can reduce network congestion and improve
overall network performance.

Disadvantage of UDP:

1. No reliability: UDP does not guarantee delivery of packets or order of delivery, which can lead to missing or
duplicate data.

2. No congestion control: UDP does not have congestion control, which means that it can send packets at a rate that
can cause network congestion.

3. No flow control: UDP does not have flow control, which means that it can overwhelm the receiver with packets that
it cannot handle.

4. Vulnerable to attacks: UDP is vulnerable to denial-of-service attacks, where an attacker can flood a network with
UDP packets, overwhelming the network and causing it to crash.

5. Limited use cases: UDP is not suitable for applications that require reliable data delivery, such as email or file
transfers, and is better suited for applications that can tolerate some data loss, such as video streaming or online
gaming.

Unit 3 remaining topics

IPv4 introduction & Datagram Header


IPv4:

● IPv4 is a connectionless protocol used for packet-switched networks. It


operates on a best-effort delivery model, in which neither delivery is
guaranteed, nor proper sequencing or avoidance of duplicate delivery is
assured.
● Internet Protocol Version 4 (IPv4) is the fourth revision of the Internet Protocol
and a widely used protocol in data communication over different kinds of
networks.
● IPv4 is a connectionless protocol used in packet-switched layer networks, such
as Ethernet.
● It provides a logical connection between network devices by providing
identification for each device.
● There are many ways to configure IPv4 with all kinds of devices – including
manual and automatic configurations – depending on the network type.
● IPv4 is defined and specified in IETF publication RFC 791.
● IPv4 uses 32-bit addresses for Ethernet communication in five classes: A, B,
C, D and E.
● Classes A, B and C have a different bit length for addressing the network host.
● Class D addresses are reserved for multicasting, while class E addresses are
reserved for military purposes.
● IPv4 uses 32-bit (4-byte) addressing, which gives 232 addresses.
● IPv4 addresses are written in the dot-decimal notation, which comprises of four
octets of the address expressed individually in decimal and separated by
periods, for instance, 192.168.1.5.

IPv4 Datagram Header Size of the header is 20 to 60 bytes.Due to the presence of


options, the size of the datagram header can be of variable length (20 bytes to 60
bytes).

VERSION: Version of the IP protocol (4 bits), which is 4 for IPv4

HLEN: IP header length (4 bits), which is the number of 32 bit words in the header. The
minimum value for this field is 5 and the maximum is 15.

Type of service: Low Delay, High Throughput, Reliability (8 bits)

Total Length: Length of header + Data (16 bits), which has a minimum value 20 bytes
and the maximum is 65,535 bytes.
Identification: Unique Packet Id for identifying the group of fragments of a single IP
datagram (16 bits)

Flags: 3 flags of 1 bit each : reserved bit (must be zero), do not fragment flag, more
fragments flag (same order)

Fragment Offset: Represents the number of Data Bytes ahead of the particular
fragment in the particular Datagram. Specified in terms of number of 8 bytes, which has
the maximum value of 65,528 bytes.

Time to live: Datagram’s lifetime (8 bits), It prevents the datagram to loop through the
network by restricting the number of Hops taken by a Packet before delivering to the
Destination.

Protocol: Name of the protocol to which the data is to be passed (8 bits)

Header Checksum: 16 bits header checksum for checking errors in the datagram
header

Source IP address: 32 bits IP address of the sender

Destination IP address: 32 bits IP address of the receiver

Option: Optional information such as source route, record route. Used by the Network
administrator to check whether a path is working or not.
Application Layer in OSI Model
Introduction :
The Application Layer is topmost layer in the Open System Interconnection (OSI) model. This layer provides
several ways for manipulating the data (information) which actually enables any type of user to access network
with ease. This layer also makes a request to its bottom layer, which is presentation layer for receiving various
types of information from it. The Application Layer interface directly interacts with application and provides
common web application services. This layer is basically highest level of open system, which provides services
directly for application process.

Functions of Application Layer :


The Application Layer, as discussed above, being topmost layer in OSI model, performs several kinds of functions
which are requirement in any kind of application or communication process.
Following are list of functions which are performed by Application Layer of OSI Model –

Data from User Application layer Data from Presentation Layer

● Application Layer provides a facility by which users can forward several emails and it also provides a
storage facility.
● This layer allows users to access, retrieve and manage files in a remote computer.
● It allows users to log on as a remote host.
● This layer provides access to global information about various services.
● This layer provides services which include: e-mail, transferring files, distributing results to the user,
directory services, network resources and so on.

Features provided by Application Layer Protocols :


To ensure smooth communication, application layer protocols are implemented the same on source host and
destination host.
The following are some of the features which are provided by Application layer protocols-

● The Application Layer protocol defines process for both parties which are involved in communication.
● These protocols define the type of message being sent or received from any side (either source host or
destination host).
● These protocols also define basic syntax of the message being forwarded or retrieved.
● These protocols define the way to send a message and the expected response.
● These protocols also define interaction with the next level.

Application Layer Protocols: The application layer provides several protocols which allow any software to easily
send and receive information and present meaningful data to its users.
The following are some of the protocols which are provided by the application layer.

● TELNET: Telnet stands for Telecommunications Network. This protocol is used for managing files over
the Internet. It allows the Telnet clients to access the resources of Telnet server. Telnet uses port number
23.
● DNS: DNS stands for Domain Name System. The DNS service translates the domain name (selected by
user) into the corresponding IP address. For example- If you choose the domain name as
www.abcd.com, then DNS must translate it as 192.36.20.8 (random IP address written just for
understanding purposes). DNS protocol uses the port number 53.
● DHCP: DHCP stands for Dynamic Host Configuration Protocol. It provides IP addresses to hosts.
Whenever a host tries to register for an IP address with the DHCP server, DHCP server provides lots of
information to the corresponding host. DHCP uses port numbers 67 and 68.
● FTP: FTP stands for File Transfer Protocol. This protocol helps to transfer different files from one device
to another. FTP promotes sharing of files via remote computer devices with reliable, efficient data
transfer. FTP uses port number 20 for data access and port number 21 for data control.
● SMTP: SMTP stands for Simple Mail Transfer Protocol. It is used to transfer electronic mail from one user
to another user. SMTP is used by end users to send emails with ease. SMTP uses port numbers 25 and
587.
● HTTP: HTTP stands for Hyper Text Transfer Protocol. It is the foundation of the World Wide Web
(WWW). HTTP works on the client server model. This protocol is used for transmitting hypermedia
documents like HTML. This protocol was designed particularly for the communications between the web
browsers and web servers, but this protocol can also be used for several other purposes. HTTP is a
stateless protocol (network protocol in which a client sends requests to server and server responses back
as per the given state), which means the server is not responsible for maintaining the previous client’s
requests. HTTP uses port number 80.
● NFS: NFS stands for Network File System. This protocol allows remote hosts to mount files over a
network and interact with those file systems as though they are mounted locally. NFS uses the port
number 2049.
● SNMP: SNMP stands for Simple Network Management Protocol. This protocol gathers data by polling
the devices from the network to the management station at fixed or random intervals, requiring them to
disclose certain information. SNMP uses port numbers 161 (TCP) and 162 (UDP).

DNS

An application layer protocol defines how the application processes running on different systems, pass the messages
to each other.

● DNS stands for Domain Name System.

● DNS is a directory service that provides a mapping between the name of a host on the network and its
numerical address.

● DNS is required for the functioning of the internet.

● Each node in a tree has a domain name, and a full domain name is a sequence of symbols specified by
dots.

● DNS is a service that translates the domain name into IP addresses. This allows the users of networks to
utilize user-friendly names when looking for other hosts instead of remembering the IP addresses.
● For example, suppose the FTP site at EduSoft had an IP address of 132.147.165.50, most people would
reach this site by specifying ftp.EduSoft.com. Therefore, the domain name is more reliable than IP address.

What is the Need of DNS?

● Every host is identified by the IP address but remembering numbers is very difficult for people also the IP
addresses are not static therefore a mapping is required to change the domain name to the IP address.
● So DNS is used to convert the domain name of the websites to their numerical IP address.

● DNS is a TCP/IP protocol used on different platforms. The domain name space is divided into three different
sections: generic domains, country domains, and inverse domain.

Generic Domains
● It defines the registered hosts according to their generic behavior.
● Each node in a tree defines the domain name, which is an index to the DNS database.
● It uses three-character labels, and these labels describe the organization type.

Country Domain
● The format of country domain is same as a generic domain, but it uses two-character country abbreviations
(e.g., us for the United States) in place of three character organizational abbreviations.
● Ex:-com(commercial), .edu(educational), .mil(military), .org(nonprofit organization), .net(similar to
commercial) all these are generic domains.

Inverse Domain
● The inverse domain is used for mapping an address to a name. When the server has received a request
from the client, and the server contains the files of only authorized clients. To determine whether the client is
on the authorized list or not, it sends a query to the DNS server and ask for mapping an address to the
name.
● Ex:- .in (India) .us .uk

Organization of Domain
● It is very difficult to find out the IP address associated with a website because there are millions of websites
and with all those websites we should be able to generate the IP address immediately, there should not be a
lot of delays for that to happen organization of the database is very important.
Root DNS Server

DNS record: Domain name, IP address what is the validity? what is the time to live? and all the information related to
that domain name. These records are stored in a tree-like structure.

Namespace: Set of possible names, flat or hierarchical. The naming system maintains a collection of bindings of
names to values – given a name, a resolution mechanism returns the corresponding value.

Name server: It is an implementation of the resolution mechanism.


DNS = Name service in Internet – A zone is an administrative unit, and a domain is a subtree.

Name-to-Address Resolution

● The host requests the DNS name server to resolve the domain name. And the name server returns the IP
address corresponding to that domain name to the host so that the host can future connect to that IP
address.

● Hierarchy of Name Servers Root name servers: It is contacted by name servers that can not resolve the
name.
● It contacts the authoritative name server if name mapping is not known. It then gets the mapping and returns
the IP address to the host.
● Top-level domain (TLD) server: It is responsible for com, org, edu, etc, and all top-level country domains like
uk, fr, ca, in, etc.
● They have info about authoritative domain servers and know the names and IP addresses of each
authoritative name server for the second-level domains.

● Authoritative name servers are the organization’s DNS servers, providing authoritative hostnames to IP
mapping for organization servers.
● It can be maintained by an organization or service provider. In order to reach cse.dtu.in we have to ask the
root DNS server, then it will point out to the top-level domain server and then to the authoritative domain
name server which actually contains the IP address.
● So the authoritative domain server will return the associative IP address.

Domain Name Server

● The client machine sends a request to the local name server, which, if the root does not find the address in
its database, sends a request to the root name server, which in turn, will route the query to a top-level
domain (TLD) or authoritative name server.
● The root name server can also contain some hostName to IP address mappings. The Top-level domain
(TLD) server always knows who the authoritative name server is.
● So finally the IP address is returned to the local name server which in turn returns the IP address to the
host.

Domain Name Server

Working of DNS
● DNS is a client/server network communication protocol. DNS clients send requests to the. server while DNS
servers send responses to the client.
● Client requests contain a name which is converted into an IP address known as a forward DNS lookups
while requests containing an IP address which is converted into a name known as reverse DNS lookups.
● DNS implements a distributed database to store the name of all the hosts available on the internet.
● If a client like a web browser sends a request containing a hostname, then a piece of software such as DNS
resolver sends a request to the DNS server to obtain the IP address of a hostname. If DNS server does not
contain the IP address associated with a hostname, then it forwards the request to another DNS server. If IP
address has arrived at the resolver, which in turn completes the request over the internet protocol.

What is DNS Lookup?


● DNS Lookup or DNS Resolution can be simply termed as the process that helps in allowing devices and
applications that translate readable domain names to the corresponding IP Addresses used by the
computers for communicating over the web.

DNS Servers Involved in Loading a Webpage


● Upon loading the webpage, several DNS Servers are responsible for translating the domain name into the
corresponding IP Address of the web server hosting the website. Here is the list of main DNS servers
involved in loading a Webpage.

■ Local DNS Resolver


■ Root DNS Servers
■ Top-Level Domain (TLD) DNS Servers
■ Authoritative DNS Servers
■ Web Server
● This hierarchical system of DNS servers ensures that when you type a domain name into your web browser,
it can be translated into the correct IP address, allowing you to access the desired webpage on the internet.

What is DNS Resolver?


● DNS Resolver is simply called a DNS Client and has the functionality for initiating the process of DNS
Lookup which is also called DNS Resolution.
● By using the DNS Resolver, applications can easily access different websites and services present on the
Internet by using domain names that are very much friendly to the user and that also resolves the problem of
remembering IP Address.

What Are the Types of DNS Queries?


● There are basically three types of DNS Queries that occur in DNS Lookup. These are stated below.

● Recursive Query: In this query, if the resolver is unable to find the record, in that case, DNS client wants the
DNS Server will respond to the client in any way like with the requested source record or an error message.
● Iterative Query: Iterative Query is the query in which DNS Client wants the best answer possible from the
DNS Server.
● Non-Recursive Query: Non-Recursive Query is the query that occurs when a DNS Resolver queries a DNS
Server for some record that has access to it because of the record that exists in its cache.

What is DNS Caching?


● DNS Caching can be simply termed as the process used by DNS Resolvers for storing the previously
resolved information of DNS that contains domain names, and IP Addresses for some time. The main
principle of DNS Caching is to speed up the process of future DNS lookup and also help in reducing the
overall time of DNS Resolution.
SMTP
● SMTP stands for Simple Mail Transfer Protocol.
● SMTP is a set of communication guidelines that allow software to transmit an electronic mail over the
internet is called Simple Mail Transfer Protocol.
● It is a program used for sending messages to other computer users based on e-mail addresses.
● It provides a mail exchange between users on the same or different computers, and it also supports:
● It can send a single message to one or more recipients.
● Sending message can include text, voice, video or graphics.
● It can also send the messages on networks outside the internet.
● The main purpose of SMTP is used to set up communication rules between servers.
● The servers have a way of identifying themselves and announcing what kind of communication they are
trying to perform.
● They also have a way of handling the errors such as incorrect email address. For example, if the recipient
address is wrong, then receiving server reply with an error message of some kind.

Components of SMTP

(A) (B)

(C) (D)
● First, we will break the SMTP client and SMTP server into two components such as user agent
(UA) and mail transfer agent (MTA). The user agent (UA) prepares the message, creates the
envelope and then puts the message in the envelope. The mail transfer agent (MTA) transfers this
mail across the internet.

● SMTP allows a more complex system by adding a relaying system. Instead of just having one MTA
at sending side and one at receiving side, more MTAs can be added, acting either as a client or
server to relay the email.

● The relaying system without TCP/IP protocol can also be used to send the emails to users, and this
is achieved by the use of the mail gateway. The mail gateway is a relay MTA that can be used to
receive an email.

Working of SMTP
● Composition of Mail: A user sends an e-mail by composing an electronic mail message
using a Mail User Agent (MUA).
● Mail User Agent is a program which is used to send and receive mail. The message contains two parts:
○ body and header. The body is the main part of the message while the header includes information
such as the sender and recipient address. The header also includes descriptive information such
as the subject of the message. In this case, the message body is like a letter and header is like an
envelope that contains the recipient's address.
● Submission of Mail: After composing an email, the mail client then submits the completed e-mail to the
SMTP server by using SMTP on TCP port 25.
● Delivery of Mail: E-mail addresses contain two parts: username of the recipient and domain name. For
example, vivek@gmail.com, where "vivek" is the username of the recipient and "gmail.com" is the domain
name.
● If the domain name of the recipient's email address is different from the sender's domain name, then MSA
will send the mail to the Mail Transfer Agent (MTA). To relay the email, the MTA will find the target domain. It
checks the MX record from Domain Name System to obtain the target domain. The MX record contains the
domain name and IP address of the recipient's domain. Once the record is located, MTA connects to the
exchange server to relay the message.
● Receipt and Processing of Mail: Once the incoming message is received, the exchange server delivers it
to the incoming server (Mail Delivery Agent) which stores the e-mail where it waits for the user to retrieve it.
● Access and Retrieval of Mail: The stored email in MDA can be retrieved by using MUA (Mail User Agent).
MUA can be accessed by using login and password.

SNMP

● SNMP stands for Simple Network Management Protocol.


● SNMP is a framework used for managing devices on the internet.
● It provides a set of operations for monitoring and managing the internet.
● SNMP Concept

Computer Network SNMP

● SNMP has two components Manager and agent.


● The manager is a host that controls and monitors a set of agents such as routers.
● It is an application layer protocol in which a few manager stations can handle a set of agents.
● The protocol designed at the application level can monitor the devices made by different manufacturers and
installed on different physical networks.
● It is used in a heterogeneous network made of different LANs and WANs connected by routers or gateways.

Managers & Agents


● A manager is a host that runs the SNMP client program while the agent is a router that runs the SNMP
server program.
● Management of the internet is achieved through simple interaction between a manager and agent.
● The agent is used to keep the information in a database while the manager is used to access the values in
the database. For example, a router can store the appropriate variables such as a number of packets
received and forwarded while the manager can compare these variables to determine whether the router is
congested or not.
● Agents can also contribute to the management process. A server program on the agent checks the
environment, if something goes wrong, the agent sends a warning message to the manager.

Management with SNMP has three basic ideas:

● A manager checks the agent by requesting the information that reflects the behavior of the agent.
● A manager also forces the agent to perform a certain function by resetting values in the agent database.
● An agent also contributes to the management process by warning the manager regarding an unusual
condition.

Management Components

● Management is not achieved only through the SNMP protocol but also the use of other protocols that can
cooperate with the SNMP protocol. Management is achieved through the use of the other two protocols: SMI
(Structure of management information) and MIB(management information base).
● Management is a combination of SMI, MIB, and SNMP. All these three protocols such as abstract syntax
notation 1 (ASN.1) and basic encoding rules (BER).
SMI
The SMI (Structure of management information) is a component used in network management. Its main function is to
define the type of data that can be stored in an object and to show how to encode the data for the transmission over a
network.

MIB
The MIB (Management information base) is a second component for the network management.
Each agent has its own MIB, which is a collection of all the objects that the manager can manage. MIB is categorized
into eight groups: system, interface, address translation, ip, icmp, tcp, udp, and egp. These groups are under the mib
object.

SNMP defines five types of messages: GetRequest, GetNextRequest, SetRequest, GetResponse, and Trap.

Computer Network SNMP

GetRequest: The GetRequest message is sent from a manager (client) to the agent (server) to retrieve the value of a
variable.

GetNextRequest: The GetNextRequest message is sent from the manager to agent to retrieve the value of a
variable. This type of message is used to retrieve the values of the entries in a table. If the manager does not know
the indexes of the entries, then it will not be able to retrieve the values. In such situations, GetNextRequest message
is used to define an object.
GetResponse: The GetResponse message is sent from an agent to the manager in response to the GetRequest and
GetNextRequest message. This message contains the value of a variable requested by the manager.

SetRequest: The SetRequest message is sent from a manager to the agent to set a value in a variable.

Trap: The Trap message is sent from an agent to the manager to report an event. For example, if the agent is
rebooted, then it informs the manager as well as sends the time of rebooting.

HTTP

● HTTP stands for HyperText Transfer Protocol.

● It is a protocol used to access the data on the World Wide Web (www).

● The HTTP protocol can be used to transfer the data in the form of plain text, hypertext, audio, video, and so
on.

● This protocol is known as HyperText Transfer Protocol because of its efficiency that allows us to use in a
hypertext environment where there are rapid jumps from one document to another document.

● HTTP is similar to the FTP as it also transfers the files from one host to another host. But, HTTP is simpler
than FTP as HTTP uses only one connection, i.e., no control connection to transfer the files.

● HTTP is used to carry the data in the form of MIME-like format.

● HTTP is similar to SMTP as the data is transferred between client and server. The HTTP differs from the
SMTP in the way the messages are sent from the client to the server and from server to the client. SMTP
messages are stored and forwarded while HTTP messages are delivered immediately.

Features of HTTP:

● Connectionless protocol: HTTP is a connectionless protocol. HTTP client initiates a request and waits for
a response from the server. When the server receives the request, the server processes the request and
sends back the response to the HTTP client after which the client disconnects the connection. The
connection between client and server exist only during the current request and response time only.

● Media independent: HTTP protocol is a media independent as data can be sent as long as both the client
and server know how to handle the data content. It is required for both the client and server to specify the
content type in MIME-type header.

● Stateless: HTTP is a stateless protocol as both the client and server know each other only during the
current request. Due to this nature of the protocol, both the client and server do not retain the information
between various requests of the web pages.

HTTP Transactions
Computer Network HTTP

● The above figure shows the HTTP transaction between client and server. The client initiates a transaction by
sending a request message to the server. The server replies to the request message by sending a response
message.

Messages
● HTTP messages are of two types: request and response. Both the message types follow the same
message format.

● Request Message: The request message is sent by the client that consists of a request line, headers, and
sometimes a body.

● Response Message: The response message is sent by the server to the client that consists of a status line,
headers, and sometimes a body.

Uniform Resource Locator (URL)

● A client that wants to access the document in an internet needs an address and to facilitate the access of
documents, the HTTP uses the concept of Uniform Resource Locator (URL).

● The Uniform Resource Locator (URL) is a standard way of specifying any kind of information on the internet.

● The URL defines four parts: method, host computer, port, and path.

● Method: The method is the protocol used to retrieve the document from a server. For example, HTTP.

● Host: The host is the computer where the information is stored, and the computer is given an alias name.
Web pages are mainly stored in the computers and the computers are given an alias name that begins with
the characters "www". This field is not mandatory.
● Port: The URL can also contain the port number of the server, but it's an optional field. If the port number is
included, then it must come between the host and path and it should be separated from the host by a colon.

● Path: Path is the pathname of the file where the information is stored. The path itself contain slashes that
separate the directories from the subdirectories and files.

Introduction:

Electronic mail, commonly known as email, is a method of exchanging messages over the internet. Here are
the basics of email:
● An email address: This is a unique identifier for each user, typically in the format of name@domain.com.
● An email client: This is a software program used to send, receive and manage emails, such as Gmail,
Outlook, or Apple Mail.
● An email server: This is a computer system responsible for storing and forwarding emails to their
intended recipients.
● —>To send an email:
1. Compose a new message in your email client.
2. Enter the recipient’s email address in the “To” field.
3. Add a subject line to summarize the content of the message.
4. Write the body of the message.
5. Attach any relevant files if needed.
6. Click “Send” to deliver the message to the recipient’s email server.
7. Emails can also include features such as cc (carbon copy) and bcc (blind carbon copy) to send copies of
the message to multiple recipients, and reply, reply all, and forward options to manage the conversation.
● Electronic Mail (e-mail) is one of most widely used services of Internet.
● This service allows an Internet user to send a message in formatted manner (mail) to the other Internet
user in any part of world.
● Message in mail not only contain text, but it also contains images, audio and videos data.
● The person who is sending mail is called sender and person who receives mail is called recipient. It is just
like postal mail service. Components of E-Mail
● System : The basic components of an email system are : User Agent (UA), Message Transfer Agent (MTA),
Mail Box, and Spool file. These are explained as following below.
1. User Agent (UA) : The UA is normally a program which is used to send and receive mail. Sometimes, it
is called as mail reader. It accepts variety of commands for composing, receiving and replying to
messages as well as for manipulation of the mailboxes.
2. Message Transfer Agent (MTA) : MTA is actually responsible for transfer of mail from one system to
another. To send a mail, a system must have client MTA and system MTA. It transfer mail to mailboxes of
recipients if they are connected in the same machine. It delivers mail to peer MTA if destination mailbox is
in another machine. The delivery from one MTA to another MTA is done by Simple Mail Transfer Protocol.
3. Mailbox : It is a file on local hard drive to collect mails. Delivered mails are present in this file. The user
can read it delete it according to his/her requirement. To use e-mail system each user must have a
mailbox . Access to mailbox is only to owner of mailbox.
4. Spool file : This file contains mails that are to be sent. User agent appends outgoing mails in this file using
SMTP. MTA extracts pending mail from spool file for their delivery. E-mail allows one name, an alias, to
represent several different e-mail addresses. It is known as mailing list, Whenever user have to sent a
message, system checks recipient’s name against alias database. If mailing list is present for defined alias,
separate messages, one for each entry in the list, must be prepared and handed to MTA. If for defined alias,
there is no such mailing list is present, name itself becomes naming address and a single message is
delivered to mail transfer entity.

Services provided by E-mail system :

1. Composition – The composition refer to process that creates messages and answers. For composition
any kind of text editor can be used.
2. Transfer – Transfer means sending procedure of mail i.e. from the sender to recipient.
3. Reporting – Reporting refers to confirmation for delivery of mail. It help user to check whether their mail
is delivered, lost or rejected.
4. Displaying – It refers to present mail in form that is understand by the user.
5. Disposition – This step concern with recipient that what will recipient do after receiving mail i.e save
mail, delete before reading or delete after reading.

Advantages Or Disadvantages:

Advantages of email:
1. Convenient and fast communication with individuals or groups globally.
2. Easy to store and search for past messages.
3. Ability to send and receive attachments such as documents, images, and videos.
4. Cost-effective compared to traditional mail and fax.
5. Available 24/7.

Disadvantages of email:
1. Risk of spam and phishing attacks.
2. Overwhelming amount of emails can lead to information overload.
3. Can lead to decreased face-to-face communication and loss of personal touch.
4. Potential for miscommunication due to lack of tone and body language in written messages.
5. Technical issues, such as server outages, can disrupt email service.
6. It is important to use email responsibly and effectively, for example, by keeping the subject line clear and
concise, using proper etiquette, and protecting against security threats.

World Wide Web (WWW)


The World Wide Web is abbreviated as WWW and is commonly known as the web. The WWW was initiated
by CERN (European library for Nuclear Research) in 1989.

WWW can be defined as the collection of different websites around the world, containing different information
shared via local servers(or computers).

History:
It is a project created, by Timothy Berner Lee in 1989, for researchers to work together effectively at CERN.

is an organization, named the World Wide Web Consortium (W3C), which was developed for further
development of the web. This organization is directed by Tim Berner’s Lee, aka the father of the web.

System Architecture:
From the user’s point of view, the web consists of a vast, worldwide connection of documents or web pages.

Each page may contain links to other pages anywhere in the world. The pages can be retrieved and viewed by
using browsers of which internet explorer, Netscape Navigator, Google Chrome, etc are the popular ones.

The browser fetches the page requested interprets the text and formatting commands on it, and displays the
page, properly formatted, on the screen.

The basic model of how the web works are shown in the figure below.

Here the browser is displaying a web page on the client machine. When the user clicks on a line of text that is
linked to a page on the abd.com server, the browser follows the hyperlink by sending a message to the
abd.com server asking it for the page.

A Web browser is used to access web pages.


Web browsers can be defined as programs which display text, data, pictures, animation and video on the Internet.

Hyperlinked resources on the World Wide Web can be accessed using software interfaces provided by Web
browsers.

Initially, Web browsers were used only for surfing the Web but now they have become more universal.

Web browsers can be used for several tasks including conducting searches, mailing, transferring files, and much
more. Some of the commonly used browsers are Internet Explorer, Opera Mini, and Google Chrome.

Features of WWW:

● HyperText Information System


● Cross-Platform
● Distributed
● Open Standards and Open Source
● Uses Web Browsers to provide a single interface for many services
● Dynamic, Interactive and Evolving.
● “Web 2.0”

Components of the Web: There are 3 components of the web:

1. Uniform Resource Locator (URL): serves as a system for resources on the web.
2. HyperText Transfer Protocol (HTTP): specifies communication of browser and server.
3. Hyper Text Markup Language (HTML): defines the structure, organisation and content of a webpage.

What is Streamig ?

Streaming is the continuous transmission of audio or video files from a server to a client. In simpler terms, streaming
is what happens when consumers watch TV or listen to podcasts on Internet-connected devices.

With streaming, the media file being played on the client device is stored remotely, and is transmitted a few seconds
at a time over the Internet.

Streaming audio

Streaming audio refers to the real-time delivery of audio content over the internet. Instead of downloading the entire
audio file before playing it, streaming allows the audio data to be played as it is received.
This enables users to listen to audio content without waiting for the entire file to download.

Properties of audio typically include:

1. Bitrate: The amount of data processed per unit of time, usually measured in kilobits per second (kbps) or
megabits per second (Mbps). Higher bitrates generally result in better audio quality.
2. Sample Rate: The number of samples of audio carried per second, measured in Hertz (Hz). Common
sample rates are 44.1 kHz or 48 kHz.
3. Codec: The method used to compress and decompress audio data. Common audio codecs include MP3,
AAC, and Ogg Vorbis.
4. Channels: The number of separate audio signals in the content. Mono has one channel, stereo has two,
and surround sound can have more.
5. Format: The file type or container format, such as MP3, WAV, FLAC, or Ogg.
6. Compression: Audio files are often compressed to reduce file size. Lossless compression preserves the
original quality, while lossy compression sacrifices some quality to achieve smaller file sizes.

Working of streaming audio

Streaming audio works by sending continuous data packets of audio over the internet in real-time. Here's a simplified

overview of how it works:

1. Source: The audio content originates from a source, which could be a live event (like a radio broadcast or
concert) or a pre-recorded file.
2. Encoding: The audio data is encoded into a digital format using a specific codec. This process involves
converting the analog audio signal into a digital format that can be efficiently transmitted over the internet.
3. Packetization: The encoded audio data is divided into small packets. Each packet contains a portion of the
audio information and is assigned a sequence number.
4. Transmission: These packets are then sent over the internet in real-time using a streaming protocol (such
as RTSP, HLS, or MPEG-DASH). The streaming protocol ensures a steady flow of data to the receiving end.
5. Buffering: The receiving device (e.g., a computer or smartphone) buffers a small amount of data to account
for variations in internet speed and latency. Buffering helps ensure smooth playback by providing a
continuous stream of audio to the listener.
6. Decoding: The receiving device decodes the incoming packets back into audio data. The codec used for
encoding is employed in reverse to reconstruct the original audio signal.
7. Playback: The decoded audio data is played back in real-time, allowing the user to listen to the content
without having to download the entire file.

Streaming audio allows users to start listening almost instantly, without the need to wait for the entire audio file to

download. The continuous flow of data ensures a seamless and uninterrupted listening experience, even over

variable internet connections.

Streaming video
Streaming video is a method of delivering digital video content in real-time over the internet. Instead of downloading

the entire video file before viewing, users can watch the video as it is being transmitted, allowing for instant playback.

Popular streaming services include Netflix, YouTube, and Hulu

.Properties of Video:1. Video is a sequence of images displayed at constant rate e.g. 24 images/sec.

2. Digital image is array of pixels. Each pixel represented by bits.

3. The most important characteristic of video is its high bit rate. Video on Internet usually ranges from 100 kbps for

low-quality video conferencing to over 3 Mbps for streaming High-Definition (HD) movies.

4. Video can be compressed, therefore trading off video quality with bit rate.

5. A video is a sequence of images, typically being displayed at a constant rate, for example, at 24 or 30 images per

second.

6. An uncompressed, digitally encoded image consists of an array of pixels, with each pixel encoded into a number of

bits to represent luminance and colour.

7. Multiple versions of same video can be created using different compression techniques.

Working of streaming video :-Streaming video involves sending a continuous flow of compressed audio and video

data over the internet in real-time. The process typically includes:

1. Content Creation: The video content is initially created and encoded into a digital format suitable for
streaming.
2. Compression: The video file is compressed to reduce its size for efficient transmission. Common
compression standards include H.264 and H.265.
3. Server Hosting: The compressed video is hosted on a server, often in data centers, ready for distribution.
4. Streaming Server: When a user requests to watch a video, a streaming server processes the request. It
breaks down the video into small chunks.
5. Transmission: These chunks are then sent to the user's device in a continuous stream over the internet.
6. Buffering: The user's device stores a small portion of the video in a buffer to ensure smooth playback,
compensating for fluctuations in internet speed.
7. Decoding: The device decodes the received video chunks and plays them in sequence, creating a
seamless viewing experience.
8. Adaptive Streaming: To handle varying internet speeds, adaptive streaming adjusts the quality of the video
in real-time. It can switch between different resolutions or bitrates based on the viewer's internet connection.

Overall, streaming allows users to watch videos without downloading the entire file beforehand, offering on-demand
access to a wide range of content.

You might also like