Computer Networks Notes
Computer Networks Notes
• Computer Network Architecture is defined as the physical and logical design of the software,
hardware, protocols, and media of the transmission of data.
• Simply we can say that how computers are organized and how tasks are allocated to the
computer
• Following are the two types of network architecture
• Peer-To-Peer network
• Client/Server network
• Peer-To-Peer network
• Peer-To-Peer network is a network in which all the computers are linked together with equal
privilege and responsibilities for processing the data.
• Peer-To-Peer network is useful for small environments, usually up to 10 computers.
• Peer-To-Peer network has no dedicated server.
• Special permissions are assigned to each computer for sharing the resources, but this can lead
to a problem if the computer with the resource is down.
• Client/Server Network : CSN (Client/Server Network) is type of computer network in which one
of centralized and powerful computers (commonly called as server) is hub to which many of
personal computers that are less powerful or workstations
• Client/Server network is a network model designed for the end users called clients, to access the
resources such as songs, video, etc. From a central computer known as Server.
• The central controller is known as a server while all other computers in the network are
called clients.
• A server performs all the major operations such as security and network management.
• A server is responsible for managing all the resources such as files, directories, printer, etc.
• Interfaces and Services is a process that generally provides and gives a common technique for
each layer to communicate with each other.
• Service Interface is used to implement a Service-Oriented Architecture (SOA). This is
implemented to achieve interoperability among the applications among various technologies.
• Standard terminology basically required for layered networks to request and aim for the
services are provided.
• Service is defined as a set of primitive operations. And are provided by layer to each of layers
above it.
• Below is diagram showing relation between layers at an interface
In diagram, layers N+1, N, and N-1 are involved and engaged in process of communication among each
other.
Service Data Unit (SDU) – SDU is a piece of information or data that is generally passed by layer just
above current layer for transmission. Unit of data or information is passed down to a lower layer from
an OSI (Open System Interconnection) layer or sublayer. Data is passed with request to transmit data.
SDU basically identifies or determines information that is been transferred among entities of peer layers
that are not interpreted by supporting entities of lower-layer.
Protocol Data Unit (PDU) – PDU is a single unit of information or data that is transmitted or transferred
among entities of peer layers of a computer network
Interface Data Unit (IDU) – IDU is used to have an agreed way of communication among two layers in a
network layered architecture. It is passed from (N+1 to N).
BANDWIDTH
• One of the most essential conditions of a website’s performance is the amount of bandwidth
allocated to the network
• Bandwidth determines how rapidly the webserver is able to upload the requested information.
• Bandwidth is characterized as the measure of data or information that can be transmitted in a
fixed measure of time
• Bandwidth is only one component of what an individual sees as the speed of a network.
LATENCY
• In a network, during the process of data communication, latency(also known as delay) is defined
as the total time taken for a complete message to arrive at the destination,
• Starting with the time when the first bit of the message is sent out from the source and ending
with the time when the last bit of the message is delivered at the destination
• The network connections where small delays occur are called “Low-
Latency-Networks” and the network connections which suffer from long
delays are known as “High-Latency-Networks”.
• High latency leads to the creation of bottlenecks in any network communication
Computer network
computer network is a system that connects numerous independent
computers in order to share information (data) and resources
A computer network is a collection of two or more computer systems that are
linked together
. A network connection can be established using either cable or wireless
media.
Importance
Computer networks play a crucial role in today’s interconnected world.
They allow devices to communicate and share resources, such as files and
printers, which enhances collaboration and efficiency.
Networks also enable internet access, email communication, online gaming,
and much more.
Businesses rely on networks for their daily operations, enabling employees to
work together,
access shared data, and communicate seamlessly.
Overall, computer networks are essential for modern communication,
information sharing, and productivity.
Advantages of Computer Networking
Some of the main advantages of Computer Networking are discussed below:
Central Storage of Data: Files can be stored on a central node (the file
server) that can be shared and made available to every user in an
organization.
Connectivity: There is a negligible range of abilities required to connect to a
modern computer network
It allows us to collaborate on projects.
→ Most companies use computer networking to connect with the teams to get
all the updates and get the shared documents.
It can ease us to send/receive large-sized files in a few blinks of the eye.
Disadvantages of Computer Networks
It can lead us to lose access to information very quickly.
→ If a file crashes over a computer network, we will not be able to access that
information instantly.
The cost of computer networking is very high.
→ Executing the network as a whole, along with the cables, is pretty
expensive.
Computer networking can result in people stopping believing in their memory.
A virus in one device can also disturb the entire network
UNIT 2
Qno.1 explain data link layer address with example?
The data link layer is the second layer from the bottom in the OSI (Open System
It is responsible for the node-to-node delivery of data. Its major role is to ensure error-
This is considered the most complex layer of the OSI model as it hides all the underlying
The data link layer is further divided into two sub-layers, which are as follows:
This sublayer of the data link layer deals with multiplexing, the flow of data among
applications and other services, and LLC is responsible for providing error messages and
acknowledgments as well.
Framing & Link access: Data Link Layer protocols encapsulate each network frame
within a Link layer frame before the transmission across the link.
A frame consists of a data field in which network layer datagram is inserted and a
The data link layer encapsulates the source and destination’s MAC address/ physical
Error Control
Data can get corrupted due to various reasons like noise, attenuation, etc. So, it is the
responsibility of the data link layer, to detect the error in the transmitted data and
Flow Control
If the receiver’s receiving speed is lower than the sender’s sending speed, then this can
lead to an overflow in the receiver’s buffer and some frames may get lost. So, it’s the
responsibility of DLL to synchronize the sender’s and receiver’s speeds and establish
Access Control
When multiple devices share the same communication channel there is a high
probability of collision, so it’s the responsibility of DLL to check which device has control
Flow control:-refers to the mechanisms and techniques used to manage the rate of data
transmission between sender and receiver to prevent congestion, and buffer overflow, and
ensure reliable delivery..
Stop-and-wait flow control is the simplest form of flow control. In this method the message is
broken into multiple frames, and the receiver indicates its readiness to receive a frame of data .
When acknowledgement is received, then only sender will send or transfer the next frame
This process is continued until sender transmits EOT (End of Transmission) frame.
Go-Back-N protocol, also called Go-Back-N Automatic Repeat reQuest, is a data link layer protocol
that uses a sliding window method for reliable and sequential delivery of data frames.
It uses the principle of protocol pipelining in which the multiple frames can be sent before receiving
If we have five frames and the concept is Go-Back-3, which means that the three frames can be
sent, i.e., frame no 1, frame no 2, frame no 3 can be sent before expecting the acknowledgment of
frame no 1.
Suppose there are a sender and a receiver, and let’s assume that there are 11 frames to be sent.
These frames are represented as 0,1,2,3,4,5,6,7,8,9,10, and these are the sequence numbers of the
frames. Mainly, the sequence number is decided by the sender’s window size. But, for the better
understanding, we took the running sequence numbers, i.e., 0,1,2,3,4,5,6,7,8,9,10. Let’s consider
the window size as 4, which means that the four frames can be sent at a time before expecting the
Step 1: Firstly, the sender will send the first four frames to the receiver, i.e., 0,1,2,3, and now the
It is also known as Sliding Window Protocol and used for error detection and control in the data link
layer.
In the selective repeat, the sender sends several frames specified by a window size even without
the need to wait for individual acknowledgement from the receiver as in Go-Back-N ARQ
In Selective Repeat ARQ only the lost or error frames are retransmitted, whereas correct frames are
The receiver while keeping track of sequence numbers buffers the frames in memory and sends
NACK for only frames which are missing or damaged. The sender will send/retransmit a packet for
Example
Explanation
Step 1 – Frame 0 sends from sender to receiver and set timer.
Step 2 – Without waiting for acknowledgement from the receiver another frame, Frame1 is sent by
Step 3 – In the same way frame2 is also sent to the receiver by setting the timer without waiting for
previous acknowledgement.
Step 4 – Whenever sender receives the ACK0 from receiver, within the frame 0 timer then it is
Step 5 – whenever the sender receives the ACK1 from the receiver, within the frame 1 timer then it
Step 6 – If the sender doesn’t receive the ACK2 from the receiver within the time slot, it declares
timeout for frame 2 and resends the frame 2 again, because it thought the frame2 may be lost or
damaged.
Framing in computer networks is the process of dividing digital data into small parts, or frames, to
Frames are made up of a header, which contains information about the frame, and a payload,
The header is divided into smaller fields, such as destination address, source address, and control
information
. Parts of a Frame
• Frame Header − It contains the source and the destination addresses of the frame.
• Payload field − It contains the message to be delivered.
• Trailer − It contains the error detection and error correction bits.
• Flag − It marks the beginning and end of the frame.
Types of Framing
Framing can be of two types, fixed sized framing and variable sized framing.
Fixed-sized Framing
Here the size of the frame is fixed and so the frame length acts as delimiter of the frame.
Consequently, it does not require additional boundary bits to identify the start and end of the
frame.
Here, the size of each frame to be transmitted may be different. So additional mechanisms are kept
to mark the end of one frame and the beginning of the next frame.
It controls the data packets between the two devices where reliable and gradual delivery of data
Go-Back-N ARQ
Bit stiffing
Bit stuffing is the process of inserting noninformation bits into data to break up bit
patterns to affect the synchronous transmission of information.
It is widely used in network and communication protocols, in which bit stuffing is
a required part of the transmission process
Bit stuffing is used for various purposes, such as for bringing bit streams that do
not necessarily have the same or rationally related bit rate
Another use of bit stuffing is for run length limited coding:
Bit stuffing can also serve other purposes. For example, it can bring bit streams that don't
have the same bit rates up to the same rate to fill buffers or fill frames.
Byte stuffing
Byte stuffing is a mechanism to convert a message formed of a sequence of bytes that may
contain reserved values such as frame delimiter, into another byte sequence that does not
contain the reserved values.
Byte Stuffing is a technique used in data communication to ensure accurate and reliable
transmission of data between devices.
The main purpose of Byte Stuffing is to distinguish between data and control characters
within the transmitted data stream, preventing the occurrence of specific reserved
characters that might be misinterpreted as control characters.
QNO. 8 EXPLAIN Finite state model
In simple terms, a finite state model for protocol verification is like creating a roadmap that shows
all the possible states a system can be in and how it transitions between those states during
communication.
It helps ensure that the protocol works correctly by mapping out every possible scenario or
It’s like having a clear plan to follow to make sure everything runs smoothly.
In a finite state model for protocol verification, the states are determined by considering all the
different possible conditions or situations that the system can be in during communication.
Each state represents a specific scenario or condition that the system can encounter
. By identifying and defining these states, we can create a comprehensive map of how the system
It’s like creating a detailed picture of all the possible paths the system can take.
In a network, a Petri net model is like a way to visually represent how data and processes move and interact within the network
. It helps in understanding the flow of information, actions, and states in a network system, similar to how it works in other
contexts like systems or protocols. It’s a useful tool for analyzing and optimizing network processes.