Professional Documents
Culture Documents
L4 CN NETWORK REFERENCE MODELS
L4 CN NETWORK REFERENCE MODELS
L4 CN NETWORK REFERENCE MODELS
Layered Architecture
The main aim of the layered architecture is to divide the design into small pieces.
Each lower layer adds its services to the higher layer to provide a full set of services
to manage communications and run the applications.
It provides modularity and clear interfaces, i.e., provides interaction between
subsystems.
It ensures the independence between layers by providing the services from lower to
higher layer without defining how the services are implemented. Therefore, any
modification in a layer will not affect the other layers.
The number of layers, functions, contents of each layer will vary from network to
network. However, the purpose of each layer is to provide the service from lower to
a higher layer and hiding the details from the layers of how the services are
implemented.
The basic elements of layered architecture are services, protocols, and interfaces.
o Service: It is a set of actions that a layer provides to the higher layer.
o Protocol: It defines a set of rules that a layer uses to exchange the information
with peer entity. These rules mainly concern about both the contents and
order of the messages used.
o Interface: It is a way through which the message is transferred from one layer
to another layer.
In a layer n architecture, layer n on one machine will have a communication with the
layer n on another machine and the rules used in a conversation are known as a layer-
n protocol.
In case of layered architecture, no data is transferred from layer n of one machine to
layer n of another machine. Instead, each layer passes the data to the layer
immediately just below it, until the lowest layer is reached.
Below layer 1 is the physical medium through which the actual communication takes
place.
In a layered architecture, unmanageable tasks are divided into several small and
manageable tasks.
The data is passed from the upper layer to lower layer through an interface. A Layered
architecture provides a clean-cut interface so that minimum information is shared
among different layers. It also ensures that the implementation of one layer can be
easily replaced by another implementation.
A set of layers and protocols is known as network architecture.
Reasons for Layered architecture?
Divide-and-conquer approach: Divide-and-conquer approach makes a design
process in such a way that the unmanageable tasks are divided into small and
manageable tasks. In short, we can say that this approach reduces the complexity of
the design.
Modularity: Layered architecture is more modular. Modularity provides the
independence of layers, which is easier to understand and implement.
Easy to modify: It ensures the independence of layers so that implementation in one
layer can be changed without affecting other layers.
Easy to test: Each layer of the layered architecture can be analyzed and tested
individually.
OSI is a reference model that describes how information from a software application in one
computer moves through a physical medium to the software application in another
computer.
The OSI model has seven layers. The principles that were applied to arrive at the seven
layers can be briefly summarized as follows:
1. A layer should be created where a different abstraction is needed.
2. Each layer should perform a well-defined function.
3. The function of each layer should be chosen with an eye toward defining
internationally standardized protocols.
4. The layer boundaries should be chosen to minimize the information flow across the
interfaces.
5. The number of layers should be large enough that distinct functions need not be
thrown together in the same layer out of necessity and small enough that the
architecture does not become unwieldy.
The fundamental reason for the seven layers OSI model is to comprehend the data
transmission and communication system steps.
Characteristics of OSI Model:
The OSI model is divided into two layers: upper layers and lower layers.
The upper layer of the OSI model mainly deals with the application related issues, and they
are implemented only in the software. The application layer is closest to the end user. Both
the end user and the application layer interact with the software applications. An upper layer
refers to the layer just above another layer.
The lower layer of the OSI model deals with the data transport issues. The data link layer and
the physical layer are implemented in hardware and software. The physical layer is the
lowest layer of the OSI model and is closest to the physical medium. The physical layer is
mainly responsible for placing the information on the physical medium.
1. Physical layer
The lowest layer of the OSI reference model is the physical layer.
It is responsible for the actual physical connection between the devices.
The physical layer contains information in the form of bits.
It is responsible for transmitting individual bits from one node to the next. When receiving
data, this layer will get the signal received and convert it into 0s and 1s and send them to the
Data Link layer, which will put the frame back together.
The physical layer is concerned with transmitting raw bits over a communication channel.
The design issues have to do with making sure that when one side sends a 1 bit, it is received
by the other side as a 1 bit, not as a 0 bit.
It controls electrical and mechanical aspects of data transmission; it controls the
transmission of bits between two nodes.
2. Data-link layer
The data link layer is responsible for the node-to-node delivery of the message.
The main function of this layer is to make sure data transfer is error-free from one node to
another, over the physical layer.
It accomplishes this task by having the sender break up the input data into data frames
(typically a few hundred or a few thousand bytes) and transmits the frames sequentially. If
the service is reliable, the receiver confirms correct receipt of each frame by sending back an
acknowledgement frame.
When a packet arrives in a network, it is the responsibility of DLL to transmit it to the Host
using its MAC address.
3. Network layer
The network layer works for the transmission of data from one host to the other located in
different networks. It also takes care of packet routing i.e. selection of the shortest path to
transmit the packet, from the number of routes available. The sender & receiver’s IP
addresses are placed in the header by the network layer.
The network layer controls the operation of the subnet. A key design issue is determining
how packets are routed from source to destination. Routes can be based on static tables that
are ''wired into'' the network and rarely changed. They can also be determined at the start
of each conversation, for example, a terminal session (e.g., a login to a remote machine).
Finally, they can be highly dynamic, being determined anew for each packet, to reflect the
current network load.
If too many packets are present in the subnet at the same time, they will get in one another's
way, forming bottlenecks. The control of such congestion also belongs to the network layer.
More generally, the quality of service provided (delay, transit time, jitter, etc.) is also a
network layer issue.
When a packet has to travel from one network to another to get to its destination, many
problems can arise. The addressing used by the second network may be different from the
first one. The second one may not accept the packet at all because it is too large. The protocols
may differ, and so on. It is up to the network layer to overcome all these problems to allow
heterogeneous networks to be interconnected. In broadcast networks, the routing problem
is simple, so the network layer is often thin or even non-existent establishes paths for data
between computers and determines switching among routes between computers,
determines how to disaggregate messages into individual packets.
1. Data is received error free by network layer.
2. Main function: routing and forwarding;
3. Also, congestion control.
This layer is responsible for translating the logical network address and names into their
physical address (MAC address). This layer is also responsible for addressing, determining
routes for sending and managing network problems such as packet switching, data
congestion and routines.
4. Transport layer
The basic function of the transport layer is to accept data from above, split it up into smaller
units if need be, pass these to the network layer, and ensure that the pieces all arrive
correctly at the other end. Furthermore, all this must be done efficiently and in a way that
isolates the upper layers from the inevitable changes in the hardware technology.
The transport layer also determines what type of service to provide to the session layer, and,
ultimately, to the users of the network.
The transport layer is a true end-to-end layer, all the way from the source to the destination.
In other words, a program on the source machine carries on a conversation with a similar
program on the destination machine, using the message headers and control messages. In
the lower layers, the protocols are between each machine and its immediate neighbors, and
not between the ultimate source and destination machines, which may be separated by many
routers.
It deals with data transfer between end systems and determines flow control.
This layer is responsible for end-to-end delivers of messages between the networked hosts.
It first divides the streams of data into chunks or packets before transmission and then the
receiving computer re-assembles the packets. It also guarantee error free data delivery
without loss or duplications.
1. E2E communication.
2. Error-, flow- and congestion control end-to-end.
The transport layer provides services to the application layer and takes services from the
network layer. The data in the transport layer is referred to as Segments. It is responsible for
the End to End Delivery of the complete message. The transport layer also provides the
acknowledgement of the successful data transmission and re-transmits the data if an error
is found.
At sender’s side: Transport layer receives the formatted data from the upper layers,
performs Segmentation, and also implements Flow & Error control to ensure proper data
transmission. It also adds Source and Destination port numbers in its header and forwards
the segmented data to the Network Layer.
Note: The sender needs to know the port number associated with the receiver’s application.
Generally, this destination port number is configured, either by default or manually. For
example, when a web application makes a request to a web server, it typically uses port
number 80, because this is the default port assigned to web applications. Many applications
have default ports assigned.
At receiver’s side: Transport Layer reads the port number from its header and forwards the
Data which it has received to the respective application. It also performs sequencing and
reassembling of the segmented data.
In this type of transmission, the receiving device sends an acknowledgement, back to the
source after a packet or group of packets is received. This type of transmission is reliable and
secure.
B. Connectionless service: It is a one-phase process and includes Data Transfer. In this type
of transmission, the receiver does not acknowledge receipt of a packet. This approach allows
for much faster communication between devices. Connection-oriented service is more
reliable than connectionless Service.
5. Session layer
This layer is responsible for the establishment of connection, maintenance of sessions,
authentication, and also ensures security.
The session layer allows users on different machines to establish sessions between them.
Sessions offer various services, including dialog control (keeping track of whose turn it is to
transmit), token management (preventing two parties from attempting the same critical
operation at the same time), and synchronization (check pointing long transmissions to
allow them to continue from where they were after a crash).
Creates and manages sessions when one application process requests access to another
applications process, e.g., MSWord importing a spread sheet from Excel.
This layer is responsible for establishing and ending the sessions across the network. The
interactive login is an example of services provided by this layer in which the connective are
re-connected in care of any interruption.
6. Presentation layer
The presentation layer is also called the Translation layer. The data from the application
layer is extracted here and manipulated as per the required format to transmit over the
network.
The presentation layer is concerned with the syntax and semantics of the information
transmitted.
In order to make it possible for computers with different data representations to
communicate, the data structures to be exchanged can be defined in an abstract way, along
with a standard encoding to be used ''on the wire.'' The presentation layer manages these
abstract data structures and allows higher-level data structures (e.g., banking records), to be
defined and exchanged.
Determines syntactic representation of data, e.g., agreement on character code like
The functions of the presentation layer are:
Translation: For example, ASCII to EBCDIC.
Encryption/ Decryption: Data encryption translates the data into another form or
code. The encrypted data is known as the cipher text and the decrypted data is known
as plain text. A key value is used for encrypting as well as decrypting data.
Compression: Reduces the number of bits that need to be transmitted on the
network.
7. Application layer
At the very top of the OSI Reference Model stack of layers, we find the Application layer which
is implemented by the network applications. These applications produce the data, which has
to be transferred over the network. This layer also serves as a window for the application
services to access the network and for displaying the received information to the user.
Example: Application – Browsers, Skype Messenger, etc.
The application layer contains a variety of protocols that are commonly needed by users. One
widely-used application protocol is HTTP (Hypertext Transfer Protocol), which is the basis
for the World Wide Web. When a browser wants a Web page, it sends the name of the page
it wants to the server using HTTP. The server then sends the page back. Other application
protocols are used for file transfer, electronic mail, and network news.
Establishes interface between a user and a host computer, e.g., searching in a database
application.
This layer interacts with software applications that implement a communicating component.
Such application programs fall outside the scope of the OSI model. Application-layer
functions typically include identifying communication partners, determining resource
availability, and synchronizing communication.
Process/application layer
An application layer is the topmost layer in the TCP/IP model.
It is responsible for handling high-level protocols, issues of representation.
This layer allows the user to interact with the application.
When one application layer protocol wants to communicate with another application
layer, it forwards its data to the transport layer.
There is an ambiguity occurs in the application layer. Every application cannot be
placed inside the application layer except those who interact with the communication
system. For example: text editor cannot be considered in application layer while web
browser using HTTP protocol to interact with the network where HTTP protocol is
an application layer protocol.
Following are the main protocols used in the application layer:
HTTP: HTTP stands for Hypertext transfer protocol. This protocol allows us to access
the data over the world wide web. It transfers the data in the form of plain text, audio,
video. It is known as a Hypertext transfer protocol as it has the efficiency to use in a
hypertext environment where there are rapid jumps from one document to another.
SNMP: SNMP stands for Simple Network Management Protocol. It is a framework
used for managing the devices on the internet by using the TCP/IP protocol suite.
SMTP: SMTP stands for Simple mail transfer protocol. The TCP/IP protocol that
supports the e-mail is known as a Simple mail transfer protocol. This protocol is used
to send the data to another e-mail address.
DNS: DNS stands for Domain Name System. An IP address is used to identify the
connection of a host to the internet uniquely. But, people prefer to use the names
instead of addresses. Therefore, the system that maps the name to the address is
known as Domain Name System.
TELNET: It is an abbreviation for Terminal Network. It establishes the connection
between the local computer and remote computer in such a way that the local
terminal appears to be a terminal at the remote system.
FTP: FTP stands for File Transfer Protocol. FTP is a standard internet protocol used
for transmitting the files from one computer to another computer.
Internet Layer
An internet layer is the second layer of the TCP/IP model.
An internet layer is also known as the network layer.
The main responsibility of the internet layer is to send the packets from any network,
and they arrive at the destination irrespective of the route they take.
ARP Protocol
ARP stands for Address Resolution Protocol.
ARP is a network layer protocol which is used to find the physical address from the
IP address.
The two terms are mainly associated with the ARP Protocol:
o ARP request: When a sender wants to know the physical address of the
device, it broadcasts the ARP request to the network.
o ARP reply: Every device attached to the network will accept the ARP request
and process the request, but only recipient recognize the IP address and sends
back its physical address in the form of ARP reply. The recipient adds the
physical address both to its cache memory and to the datagram header
ICMP Protocol
ICMP stands for Internet Control Message Protocol.
It is a mechanism used by the hosts or routers to send notifications regarding
datagram problems back to the sender.
A datagram travels from router-to-router until it reaches its destination. If a router is
unable to route the data because of some unusual conditions such as disabled links, a
device is on fire or network congestion, then the ICMP protocol is used to inform the
sender that the datagram is undeliverable.
An ICMP protocol mainly uses two terms:
o ICMP Test: ICMP Test is used to test whether the destination is reachable or
not.
o ICMP Reply: ICMP Reply is used to check whether the destination device is
responding or not.
The core responsibility of the ICMP protocol is to report the problems, not correct
them. The responsibility of the correction lies with the sender.
ICMP can send the messages only to the source, but not to the intermediate routers
because the IP datagram carries the addresses of the source and destination but not
of the router that it is passed to.