Layer 6 Presentation Layer

De/Encryption, Encoding, String representation

The presentation layer (data presentation layer, data provision level) sets the system-dependent representation of the data (for example, ASCII, EBCDIC) into an independent form, enabling the syntactically correct data exchange between different systems. Also, functions such as data compression and encryption are guaranteed that data to be sent by the application layer of a system that can be read by the application layer of another system to the layer 6. The presentation layer. If necessary, the presentation layer acts as a translator between different data formats, by making an understandable for both systems data format, the ASN.1 (Abstract Syntax Notation One) used.

OSI Layer 6 - Presentation Layer

The presentation layer is responsible for the delivery and formatting of information to the application layer for further processing or display. It relieves the application layer of concern regarding syntactical differences in data representation within the end-user systems. An example of a presentation service would be the conversion of an EBCDIC-coded text computer file to an ASCII-coded file. The presentation layer is the lowest layer at which application programmers consider data structure and presentation, instead of simply sending data in the form of datagrams or packets between hosts. This layer deals with issues of string representation - whether they use the Pascal method (an integer length field followed by the specified amount of bytes) or the C/C++ method (null-terminated strings, e.g. "thisisastring\0"). The idea is that the application layer should be able to point at the data to be moved, and the presentation layer will deal with the rest. Serialization of complex data structures into flat byte-strings (using mechanisms such as TLV or XML) can be thought of as the key functionality of the presentation layer. Encryption is typically done at this level too, although it can be done on the application, session, transport, or network layers, each having its own advantages and disadvantages. Decryption is also handled at the presentation layer. For example, when logging on to bank account sites the presentation layer will decrypt the data as it is received.[1] Another example is representing structure, which is normally standardized at this level, often by using XML. As well as simple pieces of data, like strings, more complicated things are standardized in this layer. Two common examples are 'objects' in object-oriented programming, and the exact way that streaming video is transmitted. In many widely used applications and protocols, no distinction is made between the presentation and application layers. For example, HyperText Transfer Protocol (HTTP), generally regarded as an application-layer protocol, has presentation-layer aspects such as the ability to identify character encoding for proper conversion, which is then done in the application layer. Within the service layering semantics of the OSI network architecture, the presentation layer responds to service requests from the application layer and issues service requests to the session layer. In the OSI model: the presentation layer ensures the information that the application layer of one system sends out is readable by the application layer of another system. For example, a PC program communicates with another computer, one using extended binary coded decimal interchange code (EBCDIC) and the other using ASCII to represent the same characters. If necessary, the presentation layer might be able to translate between multiple data formats by using a common format. Wikipedia
  • Data conversion
  • Character code translation
  • Compression
  • Encryption and Decryption

The Presentation OSI Layer is usually composed of 2 sublayers that are:

CASE common application service element

ACSEAssociation Control Service Element
ROSERemote Operation Service Element
CCRCommitment Concurrency and Recovery
RTSEReliable Transfer Service Element

SASE specific application service element

FTAMFile Transfer, Access and Manager
VTVirtual Terminal
MOTISMessage Oriented Text Interchange Standard
CMIPCommon Management Information Protocol
JTMJob Transfer and Manipulation
MMSManufacturing Messaging Service
RDARemote Database Access
DTPDistributed Transaction Processing

Layer 7   Application Layer

Layer 6   presentation layer, layer 5   session layer, layer 4   transport layer, layer 3   network layer, layer 2   data link layer, layer 1   physical layer.

The OSI Model – The 7 Layers of Networking Explained in Plain English

freeCodeCamp

By Chloe Tucker

This article explains the Open Systems Interconnection (OSI) model and the 7 layers of networking, in plain English.

The OSI model is a conceptual framework that is used to describe how a network functions. In plain English, the OSI model helped standardize the way computer systems send information to each other.

Learning networking is a bit like learning a language - there are lots of standards and then some exceptions. Therefore, it’s important to really understand that the OSI model is not a set of rules. It is a tool for understanding how networks function.

Once you learn the OSI model, you will be able to further understand and appreciate this glorious entity we call the Internet, as well as be able to troubleshoot networking issues with greater fluency and ease.

All hail the Internet!

Prerequisites

You don’t need any prior programming or networking experience to understand this article. However, you will need:

  • Basic familiarity with common networking terms (explained below)
  • A curiosity about how things work :)

Learning Objectives

Over the course of this article, you will learn:

  • What the OSI model is
  • The purpose of each of the 7 layers
  • The problems that can happen at each of the 7 layers
  • The difference between TCP/IP model and the OSI model

Common Networking Terms

Here are some common networking terms that you should be familiar with to get the most out of this article. I’ll use these terms when I talk about OSI layers next.

A node is a physical electronic device hooked up to a network, for example a computer, printer, router, and so on. If set up properly, a node is capable of sending and/or receiving information over a network.

Nodes may be set up adjacent to one other, wherein Node A can connect directly to Node B, or there may be an intermediate node, like a switch or a router, set up between Node A and Node B.

Typically, routers connect networks to the Internet and switches operate within a network to facilitate intra-network communication. Learn more about hub vs. switch vs. router.

Here's an example:

Image

For the nitpicky among us (yep, I see you), host is another term that you will encounter in networking. I will define a host as a type of node that requires an IP address. All hosts are nodes, but not all nodes are hosts. Please Tweet angrily at me if you disagree.

Links connect nodes on a network. Links can be wired, like Ethernet, or cable-free, like WiFi.

Links to can either be point-to-point, where Node A is connected to Node B, or multipoint, where Node A is connected to Node B and Node C.

When we’re talking about information being transmitted, this may also be described as a one-to-one vs. a one-to-many relationship.

A protocol is a mutually agreed upon set of rules that allows two nodes on a network to exchange data.

“A protocol defines the rules governing the syntax (what can be communicated), semantics (how it can be communicated), and synchronization (when and at what speed it can be communicated) of the communications procedure. Protocols can be implemented on hardware, software, or a combination of both. Protocols can be created by anyone, but the most widely adopted protocols are based on standards.” - The Illustrated Network.

Both wired and cable-free links can have protocols.

While anyone can create a protocol, the most widely adopted protocols are often based on standards published by Internet organizations such as the Internet Engineering Task Force (IETF).

A network is a general term for a group of computers, printers, or any other device that wants to share data.

Network types include LAN, HAN, CAN, MAN, WAN, BAN, or VPN. Think I’m just randomly rhyming things with the word can ? I can ’t say I am - these are all real network types. Learn more here .

Topology describes how nodes and links fit together in a network configuration, often depicted in a diagram. Here are some common network topology types:

What is Network Topology? Best Guides to Types & Diagrams - DNSstuff

A network consists of nodes, links between nodes, and protocols that govern data transmission between nodes.

At whatever scale and complexity networks get to, you will understand what’s happening in all computer networks by learning the OSI model and 7 layers of networking.

What is the OSI Model?

The OSI model consists of 7 layers of networking.

First, what’s a layer?

Cave, Dragon's Lair, mountains

No, a layer - not a lair . Here there are no dragons.

A layer is a way of categorizing and grouping functionality and behavior on and of a network.

In the OSI model, layers are organized from the most tangible and most physical, to less tangible and less physical but closer to the end user.

Each layer abstracts lower level functionality away until by the time you get to the highest layer. All the details and inner workings of all the other layers are hidden from the end user.

How to remember all the names of the layers? Easy.

  • Please | Physical Layer
  • Do | Data Link Layer
  • Not | Network Layer
  • Tell (the) | Transport Layer
  • Secret | Session Layer
  • Password (to) | Presentation Layer
  • Anyone | Application Layer

Keep in mind that while certain technologies, like protocols, may logically “belong to” one layer more than another, not all technologies fit neatly into a single layer in the OSI model. For example, Ethernet, 802.11 (Wifi) and the Address Resolution Protocol (ARP) procedure operate on >1 layer.

The OSI is a model and a tool, not a set of rules.

OSI Layer 1

Layer 1 is the physical layer . There’s a lot of technology in Layer 1 - everything from physical network devices, cabling, to how the cables hook up to the devices. Plus if we don’t need cables, what the signal type and transmission methods are (for example, wireless broadband).

Instead of listing every type of technology in Layer 1, I’ve created broader categories for these technologies. I encourage readers to learn more about each of these categories:

  • Nodes (devices) and networking hardware components. Devices include hubs, repeaters, routers, computers, printers, and so on. Hardware components that live inside of these devices include antennas, amplifiers, Network Interface Cards (NICs), and more.
  • Device interface mechanics. How and where does a cable connect to a device (cable connector and device socket)? What is the size and shape of the connector, and how many pins does it have? What dictates when a pin is active or inactive?
  • Functional and procedural logic. What is the function of each pin in the connector - send or receive? What procedural logic dictates the sequence of events so a node can start to communicate with another node on Layer 2?
  • Cabling protocols and specifications. Ethernet (CAT), USB, Digital Subscriber Line (DSL) , and more. Specifications include maximum cable length, modulation techniques, radio specifications, line coding, and bits synchronization (more on that below).
  • Cable types. Options include shielded or unshielded twisted pair, untwisted pair, coaxial and so on. Learn more about cable types here .
  • Signal type. Baseband is a single bit stream at a time, like a railway track - one-way only. Broadband consists of multiple bit streams at the same time, like a bi-directional highway.
  • Signal transmission method (may be wired or cable-free). Options include electrical (Ethernet), light (optical networks, fiber optics), radio waves (802.11 WiFi, a/b/g/n/ac/ax variants or Bluetooth). If cable-free, then also consider frequency: 2.5 GHz vs. 5 GHz. If it’s cabled, consider voltage. If cabled and Ethernet, also consider networking standards like 100BASE-T and related standards.

The data unit on Layer 1 is the bit.

A bit the smallest unit of transmittable digital information. Bits are binary, so either a 0 or a 1. Bytes, consisting of 8 bits, are used to represent single characters, like a letter, numeral, or symbol.

Bits are sent to and from hardware devices in accordance with the supported data rate (transmission rate, in number of bits per second or millisecond) and are synchronized so the number of bits sent and received per unit of time remains consistent (this is called bit synchronization). The way bits are transmitted depends on the signal transmission method.

Nodes can send, receive, or send and receive bits. If they can only do one, then the node uses a simplex mode. If they can do both, then the node uses a duplex mode. If a node can send and receive at the same time, it’s full-duplex – if not, it’s just half-duplex.

The original Ethernet was half-duplex. Full-duplex Ethernet is an option now, given the right equipment.

How to Troubleshoot OSI Layer 1 Problems

Here are some Layer 1 problems to watch out for:

  • Defunct cables, for example damaged wires or broken connectors
  • Broken hardware network devices, for example damaged circuits
  • Stuff being unplugged (...we’ve all been there)

If there are issues in Layer 1, anything beyond Layer 1 will not function properly.

Layer 1 contains the infrastructure that makes communication on networks possible.

It defines the electrical, mechanical, procedural, and functional specifications for activating, maintaining, and deactivating physical links between network devices. - Source

Fun fact: deep-sea communications cables transmit data around the world. This map will blow your mind: https://www.submarinecablemap.com/

And because you made it this far, here’s a koala:

Closeup of a Koala

OSI Layer 2

Layer 2 is the data link layer . Layer 2 defines how data is formatted for transmission, how much data can flow between nodes, for how long, and what to do when errors are detected in this flow.

In more official tech terms:

  • Line discipline. Who should talk for how long? How long should nodes be able to transit information for?
  • Flow control. How much data should be transmitted?
  • Error control - detection and correction . All data transmission methods have potential for errors, from electrical spikes to dirty connectors. Once Layer 2 technologies tell network administrators about an issue on Layer 2 or Layer 1, the system administrator can correct for those errors on subsequent layers. Layer 2 is mostly concerned with error detection, not error correction. ( Source )

There are two distinct sublayers within Layer 2:

  • Media Access Control (MAC): the MAC sublayer handles the assignment of a hardware identification number, called a MAC address, that uniquely identifies each device on a network. No two devices should have the same MAC address. The MAC address is assigned at the point of manufacturing. It is automatically recognized by most networks. MAC addresses live on Network Interface Cards (NICs). Switches keep track of all MAC addresses on a network. Learn more about MAC addresses on PC Mag and in this article . Learn more about network switches here .
  • Logical Link Control (LLC): the LLC sublayer handles framing addressing and flow control. The speed depends on the link between nodes, for example Ethernet or Wifi.

The data unit on Layer 2 is a frame .

Each frame contains a frame header, body, and a frame trailer:

  • Header: typically includes MAC addresses for the source and destination nodes.
  • Body: consists of the bits being transmitted.
  • Trailer: includes error detection information. When errors are detected, and depending on the implementation or configuration of a network or protocol, frames may be discarded or the error may be reported up to higher layers for further error correction. Examples of error detection mechanisms: Cyclic Redundancy Check (CRC) and Frame Check Sequence (FCS). Learn more about error detection techniques here .

Example of frames, the network layer, and the physical layer

Typically there is a maximum frame size limit, called an Maximum Transmission Unit, MTU. Jumbo frames exceed the standard MTU, learn more about jumbo frames here .

How to Troubleshoot OSI Layer 2 Problems

Here are some Layer 2 problems to watch out for:

  • All the problems that can occur on Layer 1
  • Unsuccessful connections (sessions) between two nodes
  • Sessions that are successfully established but intermittently fail
  • Frame collisions

The Data Link Layer allows nodes to communicate with each other within a local area network. The foundations of line discipline, flow control, and error control are established in this layer.

OSI Layer 3

Layer 3 is the network layer . This is where we send information between and across networks through the use of routers. Instead of just node-to-node communication, we can now do network-to-network communication.

Routers are the workhorse of Layer 3 - we couldn’t have Layer 3 without them. They move data packets across multiple networks.

Not only do they connect to Internet Service Providers (ISPs) to provide access to the Internet, they also keep track of what’s on its network (remember that switches keep track of all MAC addresses on a network), what other networks it’s connected to, and the different paths for routing data packets across these networks.

Routers store all of this addressing and routing information in routing tables.

Here’s a simple example of a routing table:

A routing table showing the destination, subnet mask, and interface

The data unit on Layer 3 is the data packet . Typically, each data packet contains a frame plus an IP address information wrapper. In other words, frames are encapsulated by Layer 3 addressing information.

The data being transmitted in a packet is also sometimes called the payload . While each packet has everything it needs to get to its destination, whether or not it makes it there is another story.

Layer 3 transmissions are connectionless, or best effort - they don't do anything but send the traffic where it’s supposed to go. More on data transport protocols on Layer 4.

Once a node is connected to the Internet, it is assigned an Internet Protocol (IP) address, which looks either like 172.16. 254.1 (IPv4 address convention) or like 2001:0db8:85a3:0000:0000:8a2e:0370:7334 (IPv6 address convention). Routers use IP addresses in their routing tables.

IP addresses are associated with the physical node’s MAC address via the Address Resolution Protocol (ARP), which resolves MAC addresses with the node’s corresponding IP address.

ARP is conventionally considered part of Layer 2, but since IP addresses don’t exist until Layer 3, it’s also part of Layer 3.

How to Troubleshoot OSI Layer 3 Problems

Here are some Layer 3 problems to watch out for:

  • All the problems that can crop up on previous layers :)
  • Faulty or non-functional router or other node
  • IP address is incorrectly configured

Many answers to Layer 3 questions will require the use of command-line tools like ping , trace , show ip route , or show ip protocols . Learn more about troubleshooting on layer 1-3 here .

The Network Layer allows nodes to connect to the Internet and send information across different networks.

OSI Layer 4

Layer 4 is the transport layer . This where we dive into the nitty gritty specifics of the connection between two nodes and how information is transmitted between them. It builds on the functions of Layer 2 - line discipline, flow control, and error control.

This layer is also responsible for data packet segmentation, or how data packets are broken up and sent over the network.

Unlike the previous layer, Layer 4 also has an understanding of the whole message, not just the contents of each individual data packet. With this understanding, Layer 4 is able to manage network congestion by not sending all the packets at once.

The data units of Layer 4 go by a few names. For TCP, the data unit is a packet. For UDP, a packet is referred to as a datagram. I’ll just use the term data packet here for the sake of simplicity.

Transmission Control Protocol (TCP) and User Datagram Protocol (UDP) are two of the most well-known protocols in Layer 4.

TCP, a connection-oriented protocol, prioritizes data quality over speed.

TCP explicitly establishes a connection with the destination node and requires a handshake between the source and destination nodes when data is transmitted. The handshake confirms that data was received. If the destination node does not receive all of the data, TCP will ask for a retry.

TCP also ensures that packets are delivered or reassembled in the correct order. Learn more about TCP here .

UDP, a connectionless protocol, prioritizes speed over data quality. UDP does not require a handshake, which is why it’s called connectionless.

Because UDP doesn’t have to wait for this acknowledgement, it can send data at a faster rate, but not all of the data may be successfully transmitted and we’d never know.

If information is split up into multiple datagrams, unless those datagrams contain a sequence number, UDP does not ensure that packets are reassembled in the correct order. Learn more about UDP here .

TCP and UDP both send data to specific ports on a network device, which has an IP address. The combination of the IP address and the port number is called a socket.

Learn more about sockets here .

Learn more about the differences and similarities between these two protocols here .

How to Troubleshoot OSI Layer 4 Problems

Here are some Layer 4 problems to watch out for:

  • Blocked ports - check your Access Control Lists (ACL) & firewalls
  • Quality of Service (QoS) settings. QoS is a feature of routers/switches that can prioritize traffic, and they can really muck things up. Learn more about QoS here .

The Transport Layer provides end-to-end transmission of a message by segmenting a message into multiple data packets; the layer supports connection-oriented and connectionless communication.

OSI Layer 5

Layer 5 is the session layer . This layer establishes, maintains, and terminates sessions.

A session is a mutually agreed upon connection that is established between two network applications. Not two nodes! Nope, we’ve moved on from nodes. They were so Layer 4.

Just kidding, we still have nodes, but Layer 5 doesn’t need to retain the concept of a node because that’s been abstracted out (taken care of) by previous layers.

So a session is a connection that is established between two specific end-user applications. There are two important concepts to consider here:

  • Client and server model: the application requesting the information is called the client, and the application that has the requested information is called the server.
  • Request and response model: while a session is being established and during a session, there is a constant back-and-forth of requests for information and responses containing that information or “hey, I don’t have what you’re requesting.”

Sessions may be open for a very short amount of time or a long amount of time. They may fail sometimes, too.

Depending on the protocol in question, various failure resolution processes may kick in. Depending on the applications/protocols/hardware in use, sessions may support simplex, half-duplex, or full-duplex modes.

Examples of protocols on Layer 5 include Network Basic Input Output System (NetBIOS) and Remote Procedure Call Protocol (RPC), and many others.

From here on out (layer 5 and up), networks are focused on ways of making connections to end-user applications and displaying data to the user.

How to Troubleshoot OSI Layer 5 Problems

Here are some Layer 5 problems to watch out for:

  • Servers are unavailable
  • Servers are incorrectly configured, for example Apache or PHP configs
  • Session failure - disconnect, timeout, and so on.

The Session Layer initiates, maintains, and terminates connections between two end-user applications. It responds to requests from the presentation layer and issues requests to the transport layer.

OSI Layer 6

Layer 6 is the presentation layer . This layer is responsible for data formatting, such as character encoding and conversions, and data encryption.

The operating system that hosts the end-user application is typically involved in Layer 6 processes. This functionality is not always implemented in a network protocol.

Layer 6 makes sure that end-user applications operating on Layer 7 can successfully consume data and, of course, eventually display it.

There are three data formatting methods to be aware of:

  • American Standard Code for Information Interchange (ASCII): this 7-bit encoding technique is the most widely used standard for character encoding. One superset is ISO-8859-1, which provides most of the characters necessary for languages spoken in Western Europe.
  • Extended Binary-Coded Decimal Interchange Code (EBDCIC): designed by IBM for mainframe usage. This encoding is incompatible with other character encoding methods.
  • Unicode: character encodings can be done with 32-, 16-, or 8-bit characters and attempts to accommodate every known, written alphabet.

Learn more about character encoding methods in this article , and also here .

Encryption: SSL or TLS encryption protocols live on Layer 6. These encryption protocols help ensure that transmitted data is less vulnerable to malicious actors by providing authentication and data encryption for nodes operating on a network. TLS is the successor to SSL.

How to Troubleshoot OSI Layer 6 Problems

Here are some Layer 6 problems to watch out for:

  • Non-existent or corrupted drivers
  • Incorrect OS user access level

The Presentation Layer formats and encrypts data.

OSI Layer 7

Layer 7 is the application layer .

True to its name, this is the layer that is ultimately responsible for supporting services used by end-user applications. Applications include software programs that are installed on the operating system, like Internet browsers (for example, Firefox) or word processing programs (for example, Microsoft Word).

Applications can perform specialized network functions under the hood and require specialized services that fall under the umbrella of Layer 7.

Electronic mail programs, for example, are specifically created to run over a network and utilize networking functionality, such as email protocols, which fall under Layer 7.

Applications will also control end-user interaction, such as security checks (for example, MFA), identification of two participants, initiation of an exchange of information, and so on.

Protocols that operate on this level include File Transfer Protocol (FTP), Secure Shell (SSH), Simple Mail Transfer Protocol (SMTP), Internet Message Access Protocol (IMAP), Domain Name Service (DNS), and Hypertext Transfer Protocol (HTTP).

While each of these protocols serve different functions and operate differently, on a high level they all facilitate the communication of information. ( Source )

How to Troubleshoot OSI Layer 7 Problems

Here are some Layer 7 problems to watch out for:

  • All issues on previous layers
  • Incorrectly configured software applications
  • User error (... we’ve all been there)

The Application Layer owns the services and functions that end-user applications need to work. It does not include the applications themselves.

Our Layer 1 koala is all grown up.

Koala with Photoshopped makeup

Learning check - can you apply makeup to a koala?

Don’t have a koala?

Well - answer these questions instead. It’s the next best thing, I promise.

  • What is the OSI model?
  • What are each of the layers?
  • How could I use this information to troubleshoot networking issues?

Congratulations - you’ve taken one step farther to understanding the glorious entity we call the Internet.

Learning Resources

Many, very smart people have written entire books about the OSI model or entire books about specific layers. I encourage readers to check out any O’Reilly-published books about the subject or about network engineering in general.

Here are some resources I used when writing this article:

  • The Illustrated Network, 2nd Edition
  • Protocol Data Unit (PDU): https://www.geeksforgeeks.org/difference-between-segments-packets-and-frames/
  • Troubleshooting Along the OSI Model: https://www.pearsonitcertification.com/articles/article.aspx?p=1730891
  • The OSI Model Demystified: https://www.youtube.com/watch?v=HEEnLZV2wGI
  • OSI Model for Dummies: https://www.dummies.com/programming/networking/layers-in-the-osi-model-of-a-computer-network/

Chloe Tucker is an artist and computer science enthusiast based in Portland, Oregon. As a former educator, she's continuously searching for the intersection of learning and teaching, or technology and art. Reach out to her on Twitter @_chloetucker and check out her website at chloe.dev .

Learn to code. Build projects. Earn certifications—All for free.

If you read this far, thank the author to show them you care. Say Thanks

Learn to code for free. freeCodeCamp's open source curriculum has helped more than 40,000 people get jobs as developers. Get started

Network Encyclopedia Logo

Presentation Layer

Last Edited

What is the Presentation Layer?

Presentation Layer is the Layer 6 of the seven-layer Open Systems Interconnection (OSI) reference model . The presentation layer structures data that is passed down from the application layer into a format suitable for network transmission. This layer is responsible for data encryption, data compression, character set conversion, interpretation of graphics commands, and so on. The network redirector also functions at this layer.

Presentation Layer

Presentation Layer functions

  • Translation:  Before being transmitted, information in the form of characters and numbers should be changed to bit streams. Layer 6 is responsible for interoperability between encoding methods as different computers use different encoding methods. It translates data between the formats the network requires and the format the computer.
  • Encryption:  Encryption at the transmitter and decryption at the receiver
  • Compression:  Data compression to reduce the bandwidth of the data to be transmitted. The primary role of  data compression  is to reduce the number of bits to be transmitted. Multimedia files, such as audio and video, are bigger than text files and compression is more important.

Role of Presentation Layer in the OSI Model

This layer is not always used in network communications because its functions are not always necessary. Translation is only needed if different types of machines need to talk with each other. Encryption is optional in communication. If the information is public there is no need to encrypt and decrypt info. Compression is also optional. If files are small there is no need for compression.

Explaining Layer 6 in video

Most real-world protocol suites, such as TCP/IP , do not use separate presentation layer protocols. This layer is mostly an abstraction in real-world networking.

An example of a program that loosely adheres to layer 6 of OSI is the tool that manages the Hypertext Transfer Protocol (HTTP) — although it’s technically considered an application-layer protocol per the TCP/IP model.

However, HTTP includes presentation layer services within it. HTTP works when the requesting device forwards user requests passed to the web browser onto a web server elsewhere in the network.

It receives a return message from the web server that includes a multipurpose internet mail extensions (MIME) header. The MIME header indicates the type of file – text, video, or audio – that has been received so that an appropriate player utility can be used to present the file to the user.

In short, the presentation layer

Makes sure that data which is being transferred or received should be accurate or clear to all the devices which are there, in a closed network.

  • ensures proper formatting and delivery to and from the application layer;
  • performs data encryption; and
  • manages serialization of data objects.

presentation layer process

Unveiling the Interpreter: Fortifying the Presentation Layer’s Role in Cybersecurity

  • March 28, 2024

Cherise Esparza

Welcome back to Tea with C. As we navigate deeper into the OSI model, today’s spotlight shines on Layer 6: the Presentation Layer. The Presentation Layer, often likened to an adept interpreter in the digital realm, plays a pivotal role in the seamless transmission and reception of data across the network.

At its essence, the Presentation Layer is tasked with data translation, encryption, and compression. It ensures that the information sent from the application layer is suitably formatted for transmission across the network and can be accurately interpreted by the receiving system. This layer is a universal translator for network communications, bridging different data formats into a universally understood language.

Encryption protocols at this layer are vital for securing data at rest and in transit. They are the bedrock of data integrity and confidentiality, shielding sensitive information from prying eyes and potential cyber threats. This is where the magic of transforming data into a secure format occurs, making it an essential battleground for cybersecurity efforts.

However, the Presentation Layer is not without its vulnerabilities. Some of the most insidious security threats stem from weaknesses in the coding practices used to develop applications interacting at this layer. Buffer overflows, SQL injections, and cross-site scripting are prime examples of exploits that can lead to significant security breaches. These vulnerabilities underscore the critical importance of secure coding practices and robust input validation procedures to fend off attackers.

The roles vital to securing the Presentation Layer span a broad spectrum of cybersecurity expertise. Network security analysts play a key role in scrutinizing the data exchange protocols and ensuring that encryption measures are robust and correctly implemented. Developers adhere to a secure development lifecycle, ensuring that code is thoroughly vetted and sanitized before deployment. Lastly, the overarching vigilance of security analysts dedicated to network monitoring and logging forms the backbone of a comprehensive security strategy at this layer.

Ensuring the security of the Presentation Layer is a multifaceted challenge that requires a concerted effort from all parties involved in the development and deployment of network applications. As we gear up for our following discussion on the final layer of the OSI model , the Application Layer, remember that each layer presents unique challenges and opportunities for enhancing our cybersecurity posture. Join us next week as we conclude our exploration of the OSI model.

Share this post

Recent articles.

presentation layer process

SecurityGate Launches Version 4.0 of its Industry- Leading OT GRC Platform for OT Cyber Improvement

Major new features and enhancements set to transform user experience and performance  SecurityGate, the provider of the leading SaaS platform for OT GRC, announced the

presentation layer process

The Critical Role of Cybersecurity in the Automotive Industry

As the automotive industry accelerates its integration of digital technologies, vehicles are becoming more than just means of transportation; they are evolving into connected mobile

presentation layer process

NIS2 Directive Compliance Checklist: Ensuring Robust Cybersecurity in Essential and Important Entities

The NIS2 Directive, a pivotal piece of legislation by the European Union, aims to enhance the cybersecurity posture of essential and important entities across the

presentation layer process

SecurityGate Announces Integration with Claroty xDome.

Announcing SecurityGate’s latest integration with Claroty xDome.

presentation layer process

Understanding the NIS2 Directive: A Comprehensive Overview

Learn about the background of the NIS2 Directive and the critical differences between NIS and NIS2.

presentation layer process

SecurityGate Announces Integration with MicroSec to Provide Automatic Asset Inventory Synchronization

SecurityGate, the provider of the leading SaaS platform for OT cyber improvement, is excited to announce the launch of its latest technology integration with MicroSec,

5120 Woodway Dr. Suite 9003 Houston, TX 77056

SecurityGate c/o Talent Garden Calabiana Via Arcivescovo Calabiana, 6, 20139 Milano, Italy

  • Privacy Policy
  • Terms of Service
  • Support Terms

Platform Tour

Channel program, case studies, the business of cyber series.

  • +971 (5) 281 10952
  • info@networkwalks.com
  • Cisco & IT Courses
  • Cyber Security & Hacking Courses
  • Premium Membership

Network Walks Logo

Presentation Layer of OSI Model (Layer-6)

Presentation Layer of OSI Model

Presentation Layer is responsible for representation & formatting of data for session Layer in encapsulation process. It is the 6th Layer in the seven layer OSI Model after Session Layer. Presentation layer serves like a translator & takes care that the data is sent in such a way that the receiver will understand the information or data and will be able to use the data. OSI Model divides the network communication processes into seven layers in order to simplify it. Each layer performs specific functions to support the layers above it. This seven Layer model starts from Physical till Application Layer & Presentation Layer is on 2nd place in this model as in below figure:

Presentation Layer of OSI Model

Functions/Duties of Presentation Layer

Each Layer in OSI Model Performs some important duties. Important functions performed by Presentation Layer are listed here:

  • The first & most important is, of course Data Formatting & Representation . When the presentation layer receives data from the application layer, to be sent over the network, it makes sure that the data is in the proper format. If it is not, the presentation layer converts the data to the proper format. On the other side of communication, when the presentation layer receives network data from the Presentation layer, it makes sure that the data is in the proper format and once again converts it if it is not.
  • It is also responsible for Data Encryption/Decryption: Presentation Layer carries out encryption at the transmitter end and decryption at the receiver end to keep data secure during transmission.
  • Data Compression/De-compression also falls under the responsibility matrix of Presentation Layer . Presentation Layer compresses data to a small size to reduce resource usage such as data storage space or transmission capacity.

*Encryption is typically done at this layer as well, although it can be done on the application, session, transport, or network layers, each having its own advantages and disadvantages

Presentation Layer Protocols

The OSI Model provides a conceptual framework for communication between computers, but the model itself is not a method of communication. Actual communication is made possible by using communication protocols. Each layer on the OSI Model has some protocols associated with it. Some important protocols on Presentation layer are listed in below:

  • JPEG/GIF/PNG/TIFF

Network Equipment/Components at Presentation Layer

  • Load Balancers
  • End Devices e.g. Computers, Smart Phones, Servers, …

Presentation Layer is the 6th Layer in seven Layer OSI Model. It performs important functions like Data Formatting, Data Representation, Data Encryption/Decryption, Data Compression and De-compression. Important Protocols at Presentation Layer include ASCII, EBCDIC, JPEG, MPEG, GIF, PNG, TIFF, SSL & TLS. Equipment operating at Presentation Layer include Firewalls, Gateways, Load Balancers & Computers.

Now, test your knowledge on OSI Model using our free Quizzes & Cheat sheet resources for long term memory:

Networkwalks Summary Cheatsheets
Free Online Quizzes (Best for Cisco CCNA, Huawei HCNA, N+)

Follow our Facebook Page & YouTube Channel for more updated Cheatsheets & Quizzes :

' src=

Written by  Arman Hasen

guest

Please Whitelist This Site? I know everyone hates ads. But please understand that I am providing premium content for free that takes hundreds of hours of time to research and write. I don't want to go to a pay-only model like some sites, but when more and more people block ads, I end up working for free. And I have a family to support, just like you. :) If you like The TCP/IP Guide, please consider the download version . It's priced very economically and you can read all of it in a convenient format without ads. If you want to use this site for free, I'd be grateful if you could add the site to the whitelist for Adblock. To do so, just open the Adblock menu and select "Disable on tcpipguide.com". Or go to the Tools menu and select "Adblock Plus Preferences...". Then click "Add Filter..." at the bottom, and add this string: "@@||tcpipguide.com^$document". Then just click OK. Thanks for your understanding! Sincerely, Charles Kozierok Author and Publisher, The TCP/IP Guide
Using software to mass-download the site .
If you want to read The TCP/IP Guide offline, . Thank you.
!

   
        

The presentation layer is the sixth layer of the OSI Reference Model protocol stack, and second from the top. It is different from the other layers in two key respects. First, it has a much more limited and specific function than the other layers; it's actually somewhat easy to describe, hurray! Second, it is used much less often than the other layers; in many types of connections it is not required.

The name of this layer suggests its main function as well: it deals with the presentation of data. More specifically, the presentation layer is charged with taking care of any issues that might arise where data sent from one system needs to be viewed in a different way by the other system. It also takes care of any special processing that must be done to data from the time an application tries to send it until the time it is sent over the network.

Here are some of the specific types of data handling issues that the presentation layer handles:

The reason that the presentation layer is not always used in network communications is that the jobs mentioned above are simply not always needed. Compression and encryption are usually considered “optional”, and translation features are also only needed in certain circumstances. Another reason why the presentation layer is sometimes not mentioned is that its functions may be performed as part of the application layer.

The fact that the translation job done by the presentation layer isn't always needed means that it is common for it to be “skipped” by actual protocol stack implementations. This means that protocols at layer seven may talk directly with those at layer five. Once again, this is part of the reason why all of the functions of layers five through seven may be included together in the same software package, as described in the overview of layers and layer groupings .

The sixth OSI model layer is called the . Protocols at this layer take care of manipulation tasks that transform data from one representation to another, such as translation, compression and encryption. In many cases, no such functions are required in a particular networking stack; if so, there may not be any protocol active at layer six.

. Thanks for your support!

How-To Geek

The 7 osi networking layers explained.

4

Your changes have been saved

Email is sent

Email has already been sent

Please verify your email address.

You’ve reached your account maximum for followed topics.

How to Take Better Night Sky Photos on a Google Pixel

Why i wish i started using onedrive sooner, this single feature makes new outlook for windows worth it, quick links.

  • Physical Layer
  • Data Link Layer
  • Network Layer
  • Transport Layer
  • Session Layer
  • Presentation Layer
  • Application Layer

The Open Systems Interconnection (OSI) networking model defines a conceptual framework for communications between computer systems. The model is an ISO standard which identifies seven fundamental networking layers, from the physical hardware up to high-level software applications.

Each layer in the model handles a specific networking function. The standard helps administrators to visualize networks, isolate problems, and understand the use cases for new technologies. Many network equipment vendors advertise the OSI layer that their products are designed to slot into.

OSI was adopted as an international standard in 1984. It remains relevant today despite the changes to network implementation that have occurred since first publication. Cloud, edge, and IoT can all be accommodated within the model.

Diagram showing the 7 OSI networking layers

In this article, we'll explain each of the seven OSI layers in turn. We'll start from the lowest level, labelled as Layer 1.

1. Physical Layer

All networking begins with physical equipment. This layer encapsulates the hardware involved in the communications, such as switches and cables. Data is transferred as a stream of binary digits - 0 or 1 - that the hardware prepares from input it's been fed. The physical layer specifies the electrical signals that are used to encode the data over the wire, such as a 5-volt pulse to indicate a binary "1."

Errors in the physical layer tend to result in data not being transferred at all. There could be a break in the connection due to a missing plug or incorrect power supply. Problems can also arise when two components disagree on the physical encoding of data values. In the case of wireless connections, a weak signal can lead to bit loss during transmission.

2. Data Link Layer

The model's second layer concerns communication between two devices that are directly connected to each other in the same network. It's responsible for establishing a link that allows data to be exchanged using an agreed protocol. Many network switches operate at Layer 2.

The data link layer will eventually pass bits to the physical layer. As it sits above the hardware, the data link layer can perform basic error detection and correction in response to physical transfer issues. There are two sub-layers that define these responsibilities: Logical Link Control (LLC) that handles frame synchronization and error detection, and Media Access Control (MAC) which uses MAC addresses to constrain how devices acquire permission to transfer data.

3. Network Layer

The network layer is the first level to support data transfer between two separately maintained networks. It's redundant in situations where all your devices exist on the same network.

Data that comes to the network layer from higher levels is first broken up into packets suitable for transmission. Packets received from the remote network in response are reassembled into usable data.

The network layer is where several important protocols are first encountered. These include IP (for determining the path to a destination), ICMP, routing, and virtual LAN. Together these mechanisms facilitate inter-network communications with a familiar degree of usability. However operations at this level aren't necessarily reliable: messages aren't required to succeed and may not necessarily be retried.

4. Transport Layer

The transport layer provides higher-level abstractions for coordinating data transfers between devices. Transport controllers determine where data will be sent and the rate it should be transferred at.

Layer 4 is where TCP and UDP are implemented, providing the port numbers that allow devices to expose multiple communication channels. Load balancing is often situated at Layer 4 as a result, allowing traffic to be routed between ports on a target device.

Transport mechanisms are expected to guarantee successful communication. Stringent error controls are applied to recover from packet loss and retry failed transfers. Flow control is enforced so the sender doesn't overwhelm the remote device by sending data more quickly than the available bandwidth permits.

5. Session Layer

Layer 5 creates ongoing communication sessions between two devices. Sessions are used to negotiate new connections, agree on their duration, and gracefully close down the connection once the data exchange is complete. This layer ensures that sessions remain open long enough to transfer all the data that's being sent.

Checkpoint control is another responsibility that's held by Layer 5. Sessions can define checkpoints to facilitate progress updates and resumable transmissions. A new checkpoint could be set every few megabytes for a file upload, allowing the sender to continue from a particular point if the transfer gets interrupted.

Many significant protocols operate at Layer 5 including authentication and logon technologies such as LDAP and NetBIOS. These establish semi-permanent communication channels for managing an end user session on a specific device.

6. Presentation Layer

The presentation layer handles preparation of data for the application layer that comes next in the model. After data has made it up from the hardware, through the data link, and across the transport, it's almost ready to be consumed by high-level components. The presentation layer completes the process by performing any formatting tasks that may be required.

Decryption, decoding, and decompression are three common operations found at this level. The presentation layer processes received data into formats that can be eventually utilized by a client application. Similarly, outward-bound data is reformatted into compressed and encrypted structures that are suitable for network transmission.

TLS is one major technology that's part of the presentation layer. Certificate verification and data decryption is handled before requests reach the network client, allowing information to be consumed with confidence that it's authentic.

7. Application Layer

The application layer is the top of the stack. It represents the functionality that's perceived by network end users. Applications in the OSI model provide a convenient end-to-end interface to facilitate complete data transfers, without making you think about hardware, data links, sessions, and compression.

Despite its name, this layer doesn't relate to client-side software such as your web browser or email client. An application in OSI terms is a protocol that caters for the complete communication of complex data through layers 1-6.

HTTP, FTP, DHCP, DNS, and SSH all exist at the application layer. These are high-level mechanisms which permit direct transfers of user data between an origin device and a remote server. You only need minimal knowledge of the workings of the other layers.

The seven OSI layers describe the transfer of data through computer networks. Understanding the functions and responsibilities of each layer can help you identify the source of problems and assess the intended use case for new components.

OSI is an abstract model that doesn't directly map to the specific networking implementations commonly used today. As an example, the TCP/IP protocol works on its own simpler system of four layers: Network Access, Internet, Transport, and Application. These abstract and absorb the equivalent OSI layers: the application layer spans OSI L5 to L7, while L1 and L2 are combined in TCP/IP's concept of Network Access.

OSI remains applicable despite its lack of direct real-world application. It's been around so long that it's widely understood among administrators from all backgrounds. Its relatively high level of abstraction has also ensured it's remained relevant in the face of new networking paradigms, many of which have targeted Layer 3 and above. An awareness of the seven layers and their responsibilities can still help you appreciate the flow of data through a network while uncovering integration opportunities for new components.

  • Engineering Mathematics
  • Discrete Mathematics
  • Operating System
  • Computer Networks
  • Digital Logic and Design
  • C Programming
  • Data Structures
  • Theory of Computation
  • Compiler Design
  • Computer Org and Architecture

What is OSI Model? – Layers of OSI Model

OSI stands for Open Systems Interconnection , where open stands to say non-proprietary. It is a 7-layer architecture with each layer having specific functionality to perform. All these 7 layers work collaboratively to transmit the data from one person to another across the globe. The OSI reference model was developed by ISO – ‘International Organization for Standardization ‘, in the year 1984.

The OSI model provides a theoretical foundation for understanding network communication . However, it is usually not directly implemented in its entirety in real-world networking hardware or software . Instead, specific protocols and technologies are often designed based on the principles outlined in the OSI model to facilitate efficient data transmission and networking operations

What is OSI Model?

  • What are the 7 layers of the OSI Model?

Physical Layer – Layer 1

Data link layer (dll) – layer 2, network layer – layer 3, transport layer – layer 4, session layer – layer 5, presentation layer – layer 6, application layer – layer 7.

  • What is the Flow of Data in OSI Model?

Advantages of OSI Model

  • OSI Model in a Nutshell

OSI vs TCP/IP Model

The OSI model, created in 1984 by ISO , is a reference framework that explains the process of transmitting data between computers. It is divided into seven layers that work together to carry out specialised network functions , allowing for a more systematic approach to networking.

OSI-Model

For those preparing for competitive exams like GATE, a strong understanding of networking concepts, including the OSI model, is crucial. To deepen your knowledge in this area and other key computer science topics, consider enrolling in the GATE CS Self-Paced course . This course offers comprehensive coverage of the syllabus, helping you build a solid foundation for your exam preparation.

Data Flow In OSI Model

When we transfer information from one device to another, it travels through 7 layers of OSI model. First data travels down through 7 layers from the sender’s end and then climbs back 7 layers on the receiver’s end.

Data flows through the OSI model in a step-by-step process:

  • Application Layer: Applications create the data.
  • Presentation Layer: Data is formatted and encrypted.
  • Session Layer: Connections are established and managed.
  • Transport Layer: Data is broken into segments for reliable delivery.
  • Network Layer : Segments are packaged into packets and routed.
  • Data Link Layer: Packets are framed and sent to the next device.
  • Physical Layer: Frames are converted into bits and transmitted physically.

Each layer adds specific information to ensure the data reaches its destination correctly, and these steps are reversed upon arrival.

Data Flow in OSI model

Let’s look at it with an Example:

Luffy sends an e-mail to his friend Zoro.

Step 1: Luffy interacts with e-mail application like Gmail , outlook , etc. Writes his email to send. (This happens in Layer 7: Application layer )

Step 2: Mail application prepares for data transmission like encrypting data and formatting it for transmission. (This happens in Layer 6: Presentation Layer )

Step 3: There is a connection established between the sender and receiver on the internet. (This happens in Layer 5: Session Layer )

Step 4: Email data is broken into smaller segments. It adds sequence number and error-checking information to maintain the reliability of the information. (This happens in Layer 4: Transport Layer )

Step 5: Addressing of packets is done in order to find the best route for transfer. (This happens in Layer 3: Network Layer )

Step 6: Data packets are encapsulated into frames, then MAC address is added for local devices and then it checks for error using error detection. (This happens in Layer 2: Data Link Layer )

Step 7: Lastly Frames are transmitted in the form of electrical/ optical signals over a physical network medium like ethernet cable or WiFi.

After the email reaches the receiver i.e. Zoro, the process will reverse and decrypt the e-mail content. At last, the email will be shown on Zoro’s email client.

What Are The 7 Layers of The OSI Model?

The OSI model consists of seven abstraction layers arranged in a top-down order:

  • Physical Layer
  • Data Link Layer
  • Network Layer
  • Transport Layer
  • Session Layer
  • Presentation Layer
  • Application 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.

Data Bits in the Physical Layer

Functions of the Physical Layer

  • Bit Synchronization: The physical layer provides the synchronization of the bits by providing a clock. This clock controls both sender and receiver thus providing synchronization at the bit level.
  • Bit Rate Control: The Physical layer also defines the transmission rate i.e. the number of bits sent per second.
  • Physical Topologies: Physical layer specifies how the different, devices/nodes are arranged in a network i.e. bus, star, or mesh topology.
  • Transmission Mode: Physical layer also defines how the data flows between the two connected devices. The various transmission modes possible are Simplex, half-duplex and full-duplex.
Note: Hub, Repeater, Modem, and Cables are Physical Layer devices. Network Layer, Data Link Layer, and Physical Layer are also known as Lower Layers or Hardware Layers .

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. When a packet arrives in a network, it is the responsibility of the DLL to transmit it to the Host using its MAC address . The Data Link Layer is divided into two sublayers:

  • Logical Link Control (LLC)
  • Media Access Control (MAC)

The packet received from the Network layer is further divided into frames depending on the frame size of the NIC(Network Interface Card). DLL also encapsulates Sender and Receiver’s MAC address in the header.

The Receiver’s MAC address is obtained by placing an ARP(Address Resolution Protocol) request onto the wire asking “Who has that IP address?” and the destination host will reply with its MAC address.

Functions of the Data Link Layer

  • Framing: Framing is a function of the data link layer. It provides a way for a sender to transmit a set of bits that are meaningful to the receiver. This can be accomplished by attaching special bit patterns to the beginning and end of the frame.
  • Physical Addressing: After creating frames, the Data link layer adds physical addresses ( MAC addresses ) of the sender and/or receiver in the header of each frame.
  • Error Control: The data link layer provides the mechanism of error control in which it detects and retransmits damaged or lost frames.
  • Flow Control: The data rate must be constant on both sides else the data may get corrupted thus, flow control coordinates the amount of data that can be sent before receiving an acknowledgment.
  • Access Control: When a single communication channel is shared by multiple devices, the MAC sub-layer of the data link layer helps to determine which device has control over the channel at a given time.

Function of DLL

Note: Packet in the Data Link layer is referred to as Frame. Data Link layer is handled by the NIC (Network Interface Card) and device drivers of host machines. Switch & Bridge are Data Link Layer devices.

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 address es are placed in the header by the network layer.

Functions of the Network Layer

  • Routing: The network layer protocols determine which route is suitable from source to destination. This function of the network layer is known as routing.
  • Logical Addressing: To identify each device inter-network uniquely, the network layer defines an addressing scheme. The sender & receiver’s IP addresses are placed in the header by the network layer. Such an address distinguishes each device uniquely and universally.
Note: Segment in the Network layer is referred to as Packet . Network layer is implemented by networking devices such as routers and switches.

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 acknowledgment of the successful data transmission and re-transmits the data if an error is found.

At the sender’s side: The transport layer receives the formatted data from the upper layers, performs Segmentation , and also implements Flow and error control to ensure proper data transmission. It also adds Source and Destination port number s 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 requests 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 the 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.

Functions of the Transport Layer

  • Segmentation and Reassembly: This layer accepts the message from the (session) layer, and breaks the message into smaller units. Each of the segments produced has a header associated with it. The transport layer at the destination station reassembles the message.
  • Service Point Addressing: To deliver the message to the correct process, the transport layer header includes a type of address called service point address or port address. Thus by specifying this address, the transport layer makes sure that the message is delivered to the correct process.

Services Provided by Transport Layer

  • Connection-Oriented Service
  • Connectionless Service

1. Connection-Oriented Service: It is a three-phase process that includes:

  • Connection Establishment
  • Data Transfer
  • Termination/disconnection

In this type of transmission, the receiving device sends an acknowledgment, back to the source after a packet or group of packets is received. This type of transmission is reliable and secure.

2. 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.

Note: Data in the Transport Layer is called Segments . Transport layer is operated by the Operating System. It is a part of the OS and communicates with the Application Layer by making system calls. The transport layer is called as Heart of the OSI model. Device or Protocol Use : TCP, UDP  NetBIOS, PPTP

This layer is responsible for the establishment of connection, maintenance of sessions, and authentication, and also ensures security.

Functions of the Session Layer

  • Session Establishment, Maintenance, and Termination: The layer allows the two processes to establish, use, and terminate a connection.
  • Synchronization: This layer allows a process to add checkpoints that are considered synchronization points in the data. These synchronization points help to identify the error so that the data is re-synchronized properly, and ends of the messages are not cut prematurely and data loss is avoided.
  • Dialog Controller: The session layer allows two systems to start communication with each other in half-duplex or full-duplex.
Note: All the below 3 layers(including Session Layer) are integrated as a single layer in the TCP/IP model as the “Application Layer”. Implementation of these 3 layers is done by the network application itself. These are also known as Upper Layers or Software Layers. Device or Protocol Use : NetBIOS, PPTP.

Let us consider a scenario where a user wants to send a message through some Messenger application running in their browser. The “ Messenger ” here acts as the application layer which provides the user with an interface to create the data. This message or so-called Data is compressed, optionally encrypted (if the data is sensitive), and converted into bits (0’s and 1’s) so that it can be transmitted.

Communication in Session Layer

Communication in Session 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.

Functions of the Presentation Layer

  • 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 ciphertext 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.

Note: Device or Protocol Use: JPEG, MPEG, GIF.

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 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.

Note: The application Layer is also called Desktop Layer. Device or Protocol Use : SMTP .

Functions of the Application Layer

The main functions of the application layer are given below.

  • Network Virtual Terminal(NVT): It allows a user to log on to a remote host.
  • File Transfer Access and Management(FTAM): This application allows a user to access files in a remote host, retrieve files in a remote host, and manage or control files from a remote computer.
  • Mail Services: Provide email service.
  • Directory Services: This application provides distributed database sources and access for global information about various objects and services.
Note: The OSI model acts as a reference model and is not implemented on the Internet because of its late invention. The current model being used is the TCP/IP model.

OSI Model – Layer Architecture

7 Helps in identifying the client and synchronizing communication. Message
6 Data from the application layer is extracted and manipulated in the required format for transmission. Message , ,
5 Establishes Connection, Maintenance, Ensures Authentication and Ensures security. Message (or encrypted message)
4 Take Service from Network Layer and provide it to the Application Layer. Segment
3 Transmission of data from one host to another, located in different networks. Packet
2 Node to Node Delivery of Message. Frame ,
1 Establishing Physical Connections between Devices. Bits , , , Cables

TCP/IP protocol ( Transfer Control Protocol/Internet Protocol ) was created by U.S. Department of Defense’s Advanced Research Projects Agency (ARPA) in 1970s.

Some key differences between the OSI model and the TCP/IP Model are:

  • TCP/IP model consists of 4 layers but OSI model has 7 layers. Layers 5,6,7 of the OSI model are combined into the Application Layer of TCP/IP model and OSI layers 1 and 2 are combined into Network Access Layers of TCP/IP protocol.
  • The TCP/IP model is older than the OSI model, hence it is a foundational protocol that defines how should data be transferred online.
  • Compared to the OSI model, the TCP/IP model has less strict layer boundaries.
  • All layers of the TCP/IP model are needed for data transmission but in the OSI model, some applications can skip certain layers. Only layers 1,2 and 3 of the OSI model are necessary for data transmission.

OSI-vs-TCP/IP

OSI vs TCP/IP

Why Does The OSI Model Matter?

Even though the modern Internet doesn’t strictly use the OSI Model (it uses a simpler Internet protocol suite), the OSI Model is still very helpful for solving network problems. Whether it’s one person having trouble getting their laptop online, or a website being down for thousands of users, the OSI Model helps to identify the problem. If you can narrow down the issue to one specific layer of the model, you can avoid a lot of unnecessary work.

Imperva Application Security

Imperva security solutions protect your applications at different levels of the OSI model. They use DDoS mitigation to secure the network layer and provide web application firewall (WAF), bot management, and API security to protect the application layer.

To secure applications and networks across the OSI stack, Imperva offers multi-layered protection to ensure websites and applications are always available, accessible, and safe. The Imperva application security solution includes:

  • DDoS Mitigation: Protects the network layer from Distributed Denial of Service attacks.
  • Web Application Firewall (WAF) : Shields the application layer from threats.
  • Bot Management: Prevents malicious bots from affecting the application.
  • API Security: Secures APIs from various vulnerabilities and attacks.

The OSI Model defines the communication of a computing system into 7 different layers. Its advantages include:

  • It divides network communication into 7 layers which makes it easier to understand and troubleshoot.
  • It standardizes network communications, as each layer has fixed functions and protocols.
  • Diagnosing network problems is easier with the OSI model .
  • It is easier to improve with advancements as each layer can get updates separately.

Disadvantages of OSI Model

  • Complexity: The OSI Model has seven layers, which can be complicated and hard to understand for beginners.
  • Not Practical: In real-life networking, most systems use a simpler model called the Internet protocol suite (TCP/IP), so the OSI Model isn’t always directly applicable.
  • Slow Adoption: When it was introduced, the OSI Model was not quickly adopted by the industry, which preferred the simpler and already-established TCP/IP model.
  • Overhead: Each layer in the OSI Model adds its own set of rules and operations, which can make the process more time-consuming and less efficient.
  • Theoretical: The OSI Model is more of a theoretical framework, meaning it’s great for understanding concepts but not always practical for implementation.

In conclusion, the OSI (Open Systems Interconnection) model is a conceptual framework that standardizes the functions of a telecommunication or computing system into seven distinct layers: Physical, Data Link, Network, Transport, Session, Presentation, and Application. Each layer has specific responsibilities and interacts with the layers directly above and below it, ensuring seamless communication and data exchange across diverse network environments. Understanding the OSI model helps in troubleshooting network issues, designing robust network architectures, and facilitating interoperability between different networking products and technologies.

Frequently Asked Questions on OSI Model – FAQs

Is osi layer still used.

Yes, the OSI model is still used by networking professionals to understand data abstraction paths and processes better.

What is the highest layer of the OSI model?

Layer 7 or Application layer is highest layer of OSI model.

What is layer 8?

Layer 8 doesn’t actually exist in the OSI model but is often jokingly used to refer to the end user. For example: a layer 8 error would be a user error.

Please Login to comment...

Similar reads.

  • Best Twitch Extensions for 2024: Top Tools for Viewers and Streamers
  • Discord Emojis List 2024: Copy and Paste
  • Best Adblockers for Twitch TV: Enjoy Ad-Free Streaming in 2024
  • PS4 vs. PS5: Which PlayStation Should You Buy in 2024?
  • 10 Best Free VPN Services in 2024

Improve your Coding Skills with Practice

 alt=

What kind of Experience do you want to share?

OSI Seven Layers Model Explained with Examples

This tutorial explains the OSI reference model. Learn the seven layers of the OSI model and the functions of each layer in detail through examples.

The OSI (Open System Interconnection) reference model is a comprehensive set of standards and rules for hardware manufacturers and software developers. By following these standards, they can build networking components and software applications that work in any environment. It was published in 1984 by ISO (International Organization for Standardization).

It provides a framework for creating and implementing networking standards, devices, and internetworking schemes. It explains the networking from a modular perspective, making it easier to understand and troubleshoot.

Seven layers of the OSI Model

The OSI model has seven different layers, which are divided into two groups. The following table lists all the layers with their names and numbers.

Group Layer Number Layer Name Description
Top Layers 7 Application Provide a user interface for sending and receiving data
6 Presentation Encrypt, format, and compress data for transmission
5 Session Initiate and terminate a session with the remote system
Bottom Layers 4 Transport Break the data stream into smaller segments and provide reliable and unreliable data delivery
3 Network Provide logical addressing
2 Data Link Prepare data for transmission
1 Physical Move data between devices

seven layers of OSI model

Let’s understand each layer in detail.

This tutorial is the second part of the article " Networking reference models explained in detail with examples. ". Other parts of this article are the following.

This tutorial is the first part of the article. It summarizes why the OSI model was created and what advantages it has.

This tutorial is the third part of the article. It compares the OSI reference model with the TCP/IP model and lists the similarities and differences between both.

This tutorial is the fourth part of the article. It explains the five layers of the TCP/IP model in detail.

This tutorial is the fifth part of the article. It explains how data is encapsulated and de-encapsulated when it passes through the layers.

The Application Layer

This is the last and topmost layer of the OSI model. This layer provides an interface between the local system and the application program running on the network. If an application wants to use the resources available on the remote system, it interacts with this layer. Then, this layer provides the protocols and services that the application needs to access those resources.

There are two types of application programs: Network-aware and Network-unaware . An application program is considered a Network-aware application if it can make any type of network request. If an application program cannot make any type of network request, it is considered a Network-unaware program.

Network-aware programs are further divided into two types.

Programs that are mainly built to work on a local system. This type of program occasionally accesses the network for particular reasons such as updates, documentation, and troubleshooting. MS-Word, Adobe-Photoshop, and VLC Player are examples of this type of program.

Programs that are mainly built to work with a remote system. This type of program provides a platform to access resources available on a remote system. This type of program only works if the system is connected to the network. SSH, FTP, and TFTP are examples of this type of program.

The Application layer describes only the programs which fall in the second type. But it doesn’t mean that the first type of programs can’t take the advantage of the Application layer. It simply means that they are not documented in the Application layer. But if required, they can also connect to the network through the Application layer.

The Top layer of the OSI model is the application layer. It provides the protocols and services that are required by the network-aware applications to connect to the network. FTP, TFTP, POP3, SMTP, and HTTP are examples of standards and protocols used in this layer.

The Presentation Layer

The sixth layer of the OSI model is the Presentation layer. Applications running on the local system may or may not understand the format that is used to transmit the data over the network. The presentation layer works as a translator. When receiving data from the Application layer, it converts that data in such a format that can be sent over the network. When receiving data from the Session layer, it reconverts the data in such a format that the application, which will use it, can understand.

Conversion, compression, and encryption are the main functions that the Presentation layer performs on the sending computer while on the receiving computer these functions are reconversion, decompression, and decryption. ASCII, BMP, GIF, JPEG, WAV, AVI, and MPEG are examples of standards and protocols that work in this layer.

The Session Layer

The session layer is the fifth layer of the OSI model. It is responsible for setting up, managing, and dismantling sessions between presentation layer entities and providing dialogs between computers.

When an application makes a network request, this layer checks whether the requested resource is available on the local system or on a remote system. If the requested resource is available on a remote system, it tests whether a network connection to access that resource is available or not. If a network connection is not available, it sends an error message back to the application informing that the connection is not available.

If a network connection is available, it establishes a session with the remote system. For each request, it uses a separate session. This allows multiple applications to send or receive data simultaneously. When data transmission is completed, it terminates the session.

The session layer is responsible for establishing, managing, and terminating communications between two computers. RPCs and NFS are examples of the session layer.

The Transport Layer

The transport layer is the fourth layer of the OSI model. It provides the following functionalities: -

Segmentation

On the sending computer, it breaks the data stream into smaller pieces. Each piece is known as a segment and the process of breaking the data stream into smaller pieces is known as the segmentation . On the receiving computer, it joins all segments to recreate the original data stream.

Data transportation

This layer establishes a logical connection between the sending system and receiving system and uses that connection to provide end-to-end data transportation. This process uses two protocols: TCP and UDP.

The TCP protocol is used for reliable data transportation. TCP is a connection-oriented protocol. UDP protocol is used for unreliable data transportation. UDP is a connection-less protocol.

The main difference between a connection-less and connection-oriented protocol is that a connection-oriented protocol provides reliable data delivery. For reliable data delivery, it uses several mechanisms such as the three-way handshake process, acknowledgments, sequencing, and flow control.

Multiplexing

Through the use of port numbers, this layer also provides connection multiplexing. Connection multiplexing allows multiple applications to send and receive data simultaneously.

The main functionalities of the Transport layer are segmentation, data transportation, and connection multiplexing. For data transportation, it uses TCP and UDP protocols. TCP is a connection-oriented protocol. It provides reliable data delivery.

The Network Layer

The third layer of the OSI model is the Network Layer. This layer takes the data segment from the Transport layer and adds a logical address to it. A logical address has two components; network partition and host partition. The Network partition is used to group networking components while the host partition is used to uniquely identify a system on the network. A logical address is known as the IP address. Once the logical address and other related information are added to the segment , it becomes the packet .

This layer decides whether the packet is intended for the local system or a remote system. It also specifies the standards and protocols which are used to move data packets over networks.

To move data packets between two different networks, a device known as the router is used. Routers use the logical address to make the routing decision. Routing is the process of forwarding data packets to their destination.

Defining logical addresses and finding the best path to reach the destination address are the main functions of this layer. Routers work in this layer. Routing also takes place in this layer. IP, IPX, and AppleTalk are examples of this layer.

The Data Link Layer

The Data Link Layer is the second layer of the OSI model. This layer defines how networking components access the media and what transmission methods they use. This layer has two sub-layers: MAC and LLC.

MAC (Media Access Control)

This sub-layer defines how the data packets are placed in media. It also provides physical addressing. The physical address is known as the MAC address. Unlike logical addresses that need to be configured, physical addresses are pre-configured in NIC. The MAC address is used to uniquely identify a host in the local network.

LLC (Logical Link Control)

This sub-layer identifies the network layer protocol. On the sending computer, it encapsulates the information of the Network Layer protocol in the LLC header from which the Data Link layer receives the data packet. On the receiving computer, it checks the LLC header to get the information about the network layer protocol. This way, a data packet is always delivered to the same network layer protocol from which it was sent.

Defining physical addresses, finding hosts in the local network, specifying standards and methods to access the media are the primary functions of this layer. Switching takes place in this layer. Switches and Bridges work in this layer. HDLC, PPP, and Frame Relay are examples of this layer.

The Physical Layer

The Physical Layer is the first layer of the OSI model. This layer specifies the standards for devices, media, and technologies that are used in moving the data across the network such as:-

  • Type of cable used in connecting the devices
  • Patterns of pins used in both sides of the cable
  • Type of interface-card used in the networking device
  • Type of connector used to connect the cable with the network interface
  • Encoding of digital signals received from the Data Link layer based on the attached media type such as electrical for copper, light for fiber, or a radio wave for wireless.

On the sending computer, it converts digital signals received from the Data Link layer, into analog signals and loads them on the physical media. On the receiving computer, it picks analog signals from the media and converts them into digital signals, and transfers them to the Data Link layer for further processing.

The Physical Layer mainly defines standards for media and devices that are used to move data across the network. 10BaseT, 10Base100, CSU/DSU, DCE, and DTE are examples of the standards used in this layer.

That’s all for this tutorial. In the next part of this article, we will compare the OSI model with the TCP/IP model and explains the similarities and differences between both models. If you like this tutorial, please don’t forget to share it with friends.

By ComputerNetworkingNotes Updated on 2024-06-09

ComputerNetworkingNotes CCNA Study Guide OSI Seven Layers Model Explained with Examples

  • EtherChannel Load Distribution Explained
  • Link Aggregation Control Protocol (LACP) Explained
  • Port Aggregation Protocol (PAgP) Explained
  • EtherChannel Manual Configuration
  • EtherChannel Basic Concepts Explained
  • STP, RSTP, PVST, RPVST, and MSTP
  • Similarities and Differences between STP and RSTP
  • RSTP / RPVST Explained with Examples
  • PVST/RPVST and EtherChannel Explained
  • STP/RSTP Timers Explained

We do not accept any kind of Guest Post. Except Guest post submission, for any other query (such as adverting opportunity, product advertisement, feedback, suggestion, error reporting and technical issue) or simply just say to hello mail us [email protected]

Understanding the Role of the Presentation Layer in Data Format Translation and Security

2022/08/23 ・ computer networking, 1. introduction.

According to a recent study conducted by the Institute of Electrical and Electronics Engineers (IEEE), the presentation layer is responsible for ensuring that the data is in a format that is acceptable to the application layer. This includes data compression and decompression, encryption and decryption, and character set conversion. In today’s data-driven world, the ability to effectively manage and secure data is becoming increasingly important, and understanding the role of the presentation layer in this process is crucial.

This article will explore the techniques and technologies used in the presentation layer to perform data format translation, compression and decompression, and encryption and decryption. This will include a discussion of the benefits and limitations of these techniques, as well as real-life examples and case studies of their implementation. By the end of this article, readers will have a solid understanding of the role and functions of the presentation layer in the OSI model and how it contributes to secure and efficient data transmission.

2. The role of the presentation layer

The presentation layer, also known as the syntax layer, is the sixth layer in the OSI model. It ensures that the data is in a format acceptable to the application layer. This includes data format translation, compression and decompression, encryption and decryption, and character set conversion. It acts as an interface between the application layer and the rest of the layers in the OSI model.

Data Format Translation:

The presentation layer is responsible for translating data between different formats so the application layer can understand it. For example, it may convert a file from one format, such as TIFF, to another format, such as JPEG. This ensures that the data is in a form that is compatible with the application layer and can be processed accordingly.

Compression and Decompression:

Another essential function of the presentation layer is data compression and decompression. The layer compresses the data before sending it to the next layer, the network layer. This reduces the amount of data that needs to be transmitted, reducing the time required for the data to be shared. Once the data reaches the destination, the decompression process takes place, and the data is restored to its original form. There are various compression and decompression techniques like LZ77, LZ78, and Huffman coding that are used to compress and decompress data.

3. Data compression and decompression techniques

Data compression and decompression are essential functions of the presentation layer in the OSI model. Compression refers to reducing the amount of data that needs to be transmitted. At the same time, decompression restores the data to its original form once it reaches the destination. The use of compression techniques can significantly reduce the amount of time required for data to be transmitted, as well as reduce the bandwidth needed for transmission.

The presentation layer’s most commonly used compression techniques include LZ77, LZ78, and Huffman coding.

LZ77 is a lossless data compression algorithm that Abraham Lempel and Jacob Ziv first introduced in 1977. It replaces repeated instances of a data string concerning the original series. LZ77 is a dictionary-based algorithm that uses a sliding window to identify and replace repeated data instances. This technique is effective at compressing data that contains many repeated patterns, but it can be less effective on highly random data.

LZ78 is another lossless data compression algorithm that Lempel and Ziv introduced in 1978. It is similar to LZ77 but uses a different data compression approach. Instead of using a sliding window, LZ78 uses a dictionary of previously encountered data strings. This approach allows LZ78 to achieve higher compression ratios than LZ77 but also requires more memory and processing power.

Huffman coding:

Huffman coding is a lossless data compression algorithm introduced by David Huffman in 1952. Huffman coding is a variable-length coding algorithm that assigns shorter codes to more frequently occurring symbols in the data. This technique is especially effective for compressing data that contains many repeating characters, such as text or DNA sequences.

Each technique has its advantages and disadvantages; LZ77 and LZ78 are simpler than Huffman coding and can be implemented quickly. With a limited amount of memory, on the other hand, Huffman coding is more efficient in terms of compression ratio, but it is more complex and memory-intensive.

In real-life examples, all three algorithms have been used in various applications. For instance, LZ77 has been used to compress data in the telecommunications industry, and LZ78 has been used in data storage devices like hard drives and flash drives. In contrast, Huffman coding compresses text, images, audio and video files.

4. Encryption and decryption in the presentation layer

Encryption and decryption are essential security measures that are used to protect sensitive information as it is transmitted over a network. In the OSI model, encryption and decryption occur at the presentation layer. The presentation layer is responsible for ensuring that the data is in a format acceptable to the application layer, and it also ensures that the information is protected during transmission.

Encryption refers to converting plain text into an unreadable form, known as ciphertext. The ciphertext can only be read and understood by someone with the correct decryption key. Decryption, on the other hand, is the process of converting ciphertext back into plain text using the right decryption key.

The importance of encryption and decryption in the presentation layer is clear, especially with the rise of cyber threats. It ensures that only authorised parties can access and understand the sensitive information being transmitted. Without encryption and decryption, sensitive data would be vulnerable to eavesdropping and tampering.

There are two main types of encryption and decryption methods that are commonly used in the presentation layer: symmetric key encryption and asymmetric key encryption.

Symmetric key encryption:

Symmetric key encryption is a method of encryption where the same key is used for both encryption and decryption. This method is fast and efficient, but it also has some drawbacks. The main disadvantage is that the key must be securely exchanged between the sender and the receiver before any encryption can occur.

Asymmetric key encryption:

Asymmetric key encryption, also known as public key encryption, is a method of encryption where a pair of keys is used. One key is used for encryption, and the other is used for decryption. This method is more secure than symmetric key encryption because the key used for encryption can be made public, while the key used for decryption is kept private.

In real life, symmetric key encryption is used for bulk encryption, for example, in the transportation of email, instant messaging and other types of data where the speed of encryption is more important than key exchange. On the other hand, Asymmetric key encryption is often used for digital signatures, online transactions and handshaking in secure connections.

5. Common Attacks on the Presentation Layer

The Presentation Layer in the OSI model ensures data security during transmission. However, like any other layer in the OSI model, it is also vulnerable to various attacks, vulnerabilities, and threats. These can have severe consequences, such as unauthorised access or manipulation of sensitive information.

One standard attack on the presentation layer is a “format string attack”. This occurs when an attacker can insert random formatting characters into a string, which can then be used to disrupt the normal execution of a program. This can lead to various consequences, including buffer overflows, which can be used to execute arbitrary code or crash the system.

Another attack that targets the presentation layer is “malicious code injection”. This occurs when an attacker can insert malicious code into a seemingly benign file or message. This can be done by exploiting vulnerabilities in data format translation or compression/decompression mechanisms. Once the malicious code is executed, it can cause various types of damage, such as data loss, unauthorised access to sensitive information, or even complete system compromise.

In addition to these specific attacks, the presentation layer is vulnerable to more general threats, such as “man-in-the-middle” or “replay” attacks. These are attacks in which an attacker intercepts and alters communications between two parties to gain unauthorised access to sensitive information. Such attacks can occur on any OSI model layer, but they are particularly dangerous when they target the presentation layer, as the attacker can manipulate or intercept data in transit.

6. How to Secure the Presentation Layer

Securing the Presentation Layer in the OSI model is crucial for protecting sensitive information during transmission. There are various security best practices that organisations can implement to protect against attacks, vulnerabilities, and threats on this layer.

One critical best practice is to keep software and systems up-to-date with the latest security patches and updates. This ensures that known vulnerabilities are fixed, making it harder for attackers to exploit them. It’s also important to regularly monitor systems and networks for signs of suspicious activity, such as unusual traffic patterns or login attempts.

Another best practice is to use secure protocols for data transmission and storage. Examples of secure protocols used at the Presentation Layer are Transport Layer Security (TLS) and Secure Sockets Layer (SSL), which encrypt communications between parties. Additionally, the use of robust encryption and decryption mechanisms, such as symmetric and asymmetric key encryption, can help protect against man-in-the-middle and replay attacks.

Enforcing strict access controls and implementing a solid data classification system can also secure the presentation layer. This includes access controls to limit who can view, modify or delete sensitive data and a data classification system which can help determine how data is handled, processed and protected.

Implementing a robust incident response plan that includes detailed procedures for identifying, containing and reporting security incidents can also be a valuable asset in case of a security breach. It’s also important to regularly train employees on security best practices and to make them aware of the importance of security in the presentation layer.

In addition, performing regular penetration testing, Vulnerability Assessments, and security audits can also help to identify and address security vulnerabilities. This can include testing the effectiveness of encryption and decryption mechanisms, evaluating the robustness of access controls, and identifying potential vulnerabilities in data format translation and compression/decompression mechanisms.

7. Conclusion

In conclusion, the presentation layer in the OSI model is a critical component in the data transmission process. Its functions include data format translation, data compression and decompression, and encryption and decryption. These functions are vital to ensure that the data is in a format compatible with the application layer and to protect the data during transmission.

We have discussed how the presentation layer plays a vital role in the OSI model. The techniques and technologies used in the presentation layer to perform data format translation, compression and decompression, encryption and decryption. The article also includes the advantages and disadvantages of each technique, real-life examples and case studies, if applicable, that illustrate the concepts and makes them more relatable.

The topic of the presentation layer in the OSI model is essential for anyone working in the network security and communications field, as it provides an understanding of how data is protected and formatted during transmission. We hope this article has provided a comprehensive understanding of the role and functions of the presentation layer in the OSI model.

However, it’s important to note that the Presentation Layer, like any other layer in the OSI model, is also vulnerable to various attacks, vulnerabilities, and threats. Therefore, it is crucial to implement security best practices to protect against these threats, such as keeping software and systems up-to-date with the latest security patches and updates, using secure protocols, and robust encryption and decryption mechanisms. Strict access controls, incident response plans, and regular security assessments can also help secure the Presentation Layer.

8. FAQs on the Presentation Layer

  • How does the presentation layer ensure data format compatibility?

The presentation layer ensures data format compatibility by providing a set of protocols and standards for data representation and encoding. These protocols, such as ASCII or Unicode, define a standard format for data so that it can be easily understood and processed by different systems. This helps to ensure that data can be exchanged between other systems without loss of meaning or integrity.

  • How does the presentation layer protect data during transmission?

The presentation layer protects data during transmission by using various encryption techniques to ensure that the data is secure as it is transmitted over a network. Encryption is the process of converting plaintext data into a coded format (ciphertext) unreadable by unauthorised parties. Standard encryption methods used at the presentation layer include SSL (Secure Sockets Layer) and TLS (Transport Layer Security).

  • What are some standard encryption algorithms used in the presentation layer?

Some standard encryption algorithms used in the presentation layer include:

  • RSA (Rivest-Shamir-Adleman)
  • AES (Advanced Encryption Standard)
  • DES (Data Encryption Standard)
  • 3DES (Triple Data Encryption Standard)
  • What is the difference between symmetric and asymmetric encryption in the presentation layer?

Symmetric key encryption and asymmetric key encryption are both encryption methods that are used to protect data during transmission, but they use different techniques to secure the data.

Symmetric key encryption uses a single shared key for encryption and decryption, meaning that the sender and receiver both have to use the same key to encrypt and decrypt the data.

Asymmetric key encryption, also called public-key encryption, uses a pair of keys, one for encryption (the public key) and one for decryption (the private key). So the sender uses the recipient’s public key to encrypt the data, and the recipient uses their private key to decrypt the data.

  • How does the presentation layer handle data format translation for different data types?

The presentation layer handles data format translation for different data types using a set of protocols and standards for data representation and encoding. These protocols, such as ASCII or Unicode, define a standard format for data so that it can be easily understood and processed by different systems. The presentation layer can also use data conversion algorithms to convert data between other formats, such as a Word document to a PDF.

  • How does the presentation layer interact with other layers in the OSI model?

The presentation layer, the sixth layer in the OSI model, acts as an intermediary between the application layer (layer 7) and the session layer (layer 5). It is responsible for translating data between different formats and encoding schemes, and it is also responsible for compressing and decompressing data. The presentation layer communicates with the application layer to convert the data it receives into a format the application can understand. It also communicates with the session layer to establish, manage, and terminate sessions between networked devices.

  • How do changes in data formats affect the presentation layer?

Changes in data formats can have a significant impact on the presentation layer, as the presentation layer is responsible for converting data between different formats. The presentation layer must be updated when data formats change to support the new design. If this is done, the presentation layer can convert the data, which may be unreadable or lost. Additionally, there are changes in the protocol or standard used in the presentation layer. In that case, it will affect the compatibility with other systems, so the sending and receiving ends have to use the same protocol. Otherwise, they would not be able to understand each other.

  • How does the presentation layer handle data compression and decompression in real-time communications?

The presentation layer is responsible for compressing and decompressing data in real-time communications. Compression reduces data size to improve transmission efficiency, while decompression restores the data to its original format. The presentation layer uses various compression algorithms to compress data and the same algorithms to decompress the data when it is received.

In real-time communications, the presentation layer might use lossless compression algorithms to compress the data in order not to lose any information but at the same time still be able to compress the data to a smaller size.

  • How can data integrity be maintained in the presentation layer?

Data integrity in the presentation layer can be maintained using encryption, secure hash algorithms, and error-detection codes.

Encryption is the process of converting plaintext data into a coded format (ciphertext) that is unreadable by unauthorised parties. This helps to protect data from unauthorised access and modification during transmission.

Secure hash algorithms are used to create a unique digital signature for each piece of data, which can be used to verify the integrity of the data upon receipt. This helps to detect any changes or modifications that may have occurred during transmission.

Error-detection codes are used to detect errors in the data during transmission and can help to correct these errors.

Additionally, the presentation layer can also use a digital signature or digital certificate to ensure the authenticity of data, which is the process of using a digital signature to ensure that the data is not tampered with during transmission.

  • Stack Overflow for Teams Where developers & technologists share private knowledge with coworkers
  • Advertising & Talent Reach devs & technologists worldwide about your product, service or employer brand
  • OverflowAI GenAI features for Teams
  • OverflowAPI Train & fine-tune LLMs
  • Labs The future of collective knowledge sharing
  • About the company Visit the blog

Collectives™ on Stack Overflow

Find centralized, trusted content and collaborate around the technologies you use most.

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Get early access and see previews of new features.

OSI model - What's the presentation and session layer for?

So I feel I pretty well understand the application layer, and everything below (and including) the transport layer.

The session and presentation layers, though, I don't fully understand. I've read the simplistic descriptions in Wikipedia, but it doesn't have an example of why separating out those layers is useful.

  • What is the session layer? What does it do, and under what circumstances is it better to have a session layer than simply talk to the transport with your app?
  • What is the presentation layer? (same questions as above)

Adam Davis's user avatar

7 Answers 7

The session layer is meant to store states between two connections, like what we use cookies for when working with web programming.

The presentation layer is meant to convert between different formats. This was simpler when the only format that was worried about was character encoding, ie ASCII and EBCDIC. When you consider all of the different formats that we have today(Quicktime, Flash, Pdf) centralizing this layer is out of the question.

TCP/IP doesn't make any allocation to these layers, since they are really out of the scope of a networking protocol. It's up to the applications that take advantage of the stack to implement these.

Antonio Haley's user avatar

The reasons there aren't any examples on wikipedia is that there aren't a whole lot of examples of the OSI network model, period.

OSI has once again created a standard nobody uses, so nobody really know how one should use it.

Rik's user avatar

Layers 5-6 are not commonly used in today's web applications, so you don't hear much about them. The TCP/IP stack is slightly different than a pure OSI Model.

Corey Goldberg's user avatar

One of the reasons TCP/IP is used today instead of OSI is it was too bloated and theoretical, the session and presentation layer aren't really needed as separate layers as it turned out.

Vasil's user avatar

I think that presentation layer protocols define the format of data. This means protocols like XML or ASN.1. You could argue that video/audio codecs are part of the presentation layer Although this is probably heading towards the application layer.

I can't help you with the session layer. That has always baffled me.

To be honest, there are very vague boundaries in everything above the transport layer. This is because it is usually handled by a single software application. Also, these layers are not directly associated with transporting data from A to B. Layers 4 and below each have a very specific purpose in moving the data e.g. switching, routing, ensuring data integrity etc. This makes it easier to distinguish between these layers.

David Turvey's user avatar

Presentation Layer The Presentation Layer represents the area that is independent of data representation at the application layer - in general, it represents the preparation or translation of application format to network format, or from network formatting to application format. In other words, the layer “presents” data for the application or the network. A good example of this is encryption and decryption of data for secure transmission - this happens at Layer 6.

Session Layer When two devices, computers or servers need to “speak” with one another, a session needs to be created, and this is done at the Session Layer. Functions at this layer involve setup, coordination (how long should a system wait for a response, for example) and termination between the applications at each end of the session.

Himansh's user avatar

For the presentation layer :because most of communication done between heterogeneous systems (Operating Systems,programing langages,cpu architectures)we need to use a unified idepedent specification .like ANS1 ans BRE.

ibrahim 's user avatar

Your Answer

Reminder: Answers generated by artificial intelligence tools are not allowed on Stack Overflow. Learn more

Sign up or log in

Post as a guest.

Required, but never shown

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy .

Not the answer you're looking for? Browse other questions tagged networking model stack osi or ask your own question .

  • The Overflow Blog
  • The hidden cost of speed
  • The creator of Jenkins discusses CI/CD and balancing business with open source
  • Featured on Meta
  • Announcing a change to the data-dump process
  • Bringing clarity to status tag usage on meta sites
  • What does a new user need in a homepage experience on Stack Overflow?
  • Feedback requested: How do you use tag hover descriptions for curating and do...
  • Staging Ground Reviewer Motivation

Hot Network Questions

  • Minimal permutation degree of the dihedral group
  • Can the planet Neptune be seen from Earth with binoculars?
  • Is there a way to read lawyers arguments in various trials?
  • Is this host and 'parasite' interaction feasible?
  • How to extrude a profile along multiple curves keeping tilt equal between instances and sane normals?
  • Information theoretical interpretation of Free Energy
  • Romeo & Juliet laws and age of consent laws
  • Starting with 2014 "+" signs and 2015 "−" signs, you delete signs until one remains. What’s left?
  • What prevents random software installation popups from mis-interpreting our consents
  • The head of a screw is missing on one side of the spigot outdoor
  • Book Request: Machshava by Topics
  • Were the common people in Germany ("good germans") morally co-responsible of the war crimes of their government?
  • Could they free up a docking port on ISS by undocking the emergency vehicle and letting it float next to the station for a little while
  • Can anyone debunk this claim regarding Non Hindus and other religion as per Hindu scriptures
  • How can we know how good a TRNG is?
  • How to truncate text in latex?
  • Is the 2024 Ukrainian invasion of the Kursk region the first time since WW2 Russia was invaded?
  • Has anyone returned from space in a different vehicle from the one they went up in? And if so who was the first?
  • Can you move between an attack and the attack granted by Horde Breaker?
  • What is the optimal number of function evaluations?
  • Beatles reference in parody story from the 1980s
  • Are others allowed to use my copyrighted figures in theses, without asking?
  • Parsing and processing "resolvectl statistics" output using awk
  • 70s-90s Anime Mecha Movie/Series

presentation layer process

Presentation Domain Data Layering

26 August 2015

Martin Fowler

team organization

encapsulation

application architecture

web development

One of the most common ways to modularize an information-rich program is to separate it into three broad layers: presentation (UI), domain logic (aka business logic), and data access. So you often see web applications divided into a web layer that knows about handling HTTP requests and rendering HTML, a business logic layer that contains validations and calculations, and a data access layer that sorts out how to manage persistent data in a database or remote services.

On the whole I've found this to be an effective form of modularization for many applications and one that I regularly use and encourage. It's biggest advantage (for me) is that it allows me to reduce the scope of my attention by allowing me to think about the three topics relatively independently. When I'm working on domain logic code I can mostly ignore the UI and treat any interaction with data sources as an abstract set of functions that give me the data I need and update it as I wish. When I'm working on the data access layer I focus on the details of wrangling the data into the form required by my interface. When I'm working on the presentation I can focus on the UI behavior, treating any data to display or update as magically appearing by function calls. By separating these elements I narrow the scope of my thinking in each piece, which makes it easier for me to follow what I need to do.

This narrowing of scope doesn't imply any sequence to programming them - I usually find I need to iterate between the layers. I might build the data and domain layers off my initial understanding of the UX, but when refining the UX I need to change the domain which necessitates a change to the data layer. But even with that kind of cross-layer iteration, I find it easier to focus on one layer at a time as I make changes. It's similar to the switching of thinking modes you get with refactoring's two hats .

Another reason to modularize is to allow me to substitute different implementations of modules. This separation allows me to build multiple presentations on top of the same domain logic without duplicating it. Multiple presentations could be separate pages in a web app, having a web app plus mobile native apps, an API for scripting purposes, or even an old fashioned command line interface. Modularizing the data source allows me to cope gracefully with a change in database technology, or to support services for persistence that may change with little notice. However I have to mention that while I often hear about data access substitution being a driver for separating the data source layer, I rarely hear of someone actually doing it.

Modularity also supports testability, which naturally appeals to me as a big fan of SelfTestingCode . Module boundaries expose seams that are good affordance for testing . UI code is often tricky to test, so it's good to get as much logic as you can into a domain layer which is easily tested without having to do gymnastics to access the program through a UI 1 . Data access is often slow and awkward, so using TestDoubles around the data layer often makes domain logic testing much easier and responsive.

1: A PageObject is also an important tool to help testing around UIs.

While substitutability and testability are certainly benefits of this layering, I must stress that even without either of these reasons I would still divide into layers like this. The reduced scope of attention reason is sufficient on its own.

When talking about this we can either look at it as one pattern (presentation-domain-data) or split it into two patterns (presentation-domain, and domain-data). Both points of view are useful - I think of presentation-domain-data as a composite of presentation-domain and domain-data.

I consider these layers to be a form of module, which is a generic word I use for how we clump our software into relatively independent pieces. Exactly how this corresponds to code depends on the programming environment we're in. Usually the lowest level is some form of subroutine or function. An object-oriented language will have a notion of class that collects functions and data structure. Most languages have some form of higher level called packages or namespaces, which often can be formed into a hierarchy. Modules may correspond to separately deployable units: libraries, or services, but they don't have to.

Layering can occur at any of these levels. A small program may just put separate functions for the layers into different files. A larger system may have layers corresponding to namespaces with many classes in each.

I've mentioned three layers here, but it's common to see architectures with more than three layers. A common variation is to put a service layer between the domain and presentation, or to split the presentation layer into separate layers with something like Presentation Model . I don't find that more layers breaks the essential pattern, since the core separations still remain.

The dependencies generally run from top to bottom through the layer stack: presentation depends on the domain, which then depends on the data source. A common variation is to arrange things so that the domain does not depend on its data sources by introducing a mapper between the domain and data source layers. This approach is often referred to as a Hexagonal Architecture .

These layers are logical layers not physical tiers. I can run all three layers on my laptop, I can run the presentation and domain model in a desktop with a database on a server, I can split the presentation with a rich client in the browser and a Backed For Frontend on the server. In that case I treat the BFF as a presentation layer as it's focused on supporting a particular presentation option.

Although presentation-domain-data separation is a common approach, it should only be applied at a relatively small granularity. As an application grows, each layer can get sufficiently complex on its own that you need to modularize further. When this happens it's usually not best to use presentation-domain-data as the higher level of modules. Often frameworks encourage you to have something like view-model-data as the top level namespaces; that's OK for smaller systems, but once any of these layers gets too big you should split your top level into domain oriented modules which are internally layered.

Developers don't have to be full-stack but teams should be.

One common way I've seen this layering lead organizations astray is the AntiPattern of separating development teams by these layers. This looks appealing because front-end and back-end development require different frameworks (or even languages) making it easy for developers to specialize in one or the other. Putting those people with common skills together supports skill sharing and allows the organization to treat the team as a provider of a single, well-delineated type of work. In the same way, putting all the database specialists together fits in with the common centralization of databases and schemas. But the rich interplay between these layers necessitates frequent swapping between them. This isn't too hard when you have specialists in the same team who can casually collaborate, but team boundaries add considerable friction, as well as reducing an individual's motivation to develop the important cross-layer understanding of a system. Worse, separating the layers into teams adds distance between developers and users. Developers don't have to be full-stack (although that is laudable) but teams should be.

Further Reading

I've written about this separation from a number of different angles elsewhere. This layering drives the structure of P of EAA and chapter 1 of that book talks more about this layering. I didn't make this layering a pattern in its own right in that book but have toyed with that territory with Separated Presentation and PresentationDomainSeparation .

For more on why presentation-domain-data shouldn't be the highest level modules in a larger system, take a look at the writing and speaking of Simon Brown . I also agree with him that software architecture should be embedded in code.

I had a fascinating discussion with my colleague Badri Janakiraman about the nature of hexagonal architectures. The context was mostly around applications using Ruby on Rails, but much of the thinking applies to other cases when you may be considering this approach.

Acknowledgements

IMAGES

  1. Presentation Layer

    presentation layer process

  2. Simple Layered Diagrams for PowerPoint

    presentation layer process

  3. What is presentation layer?

    presentation layer process

  4. Presentation Layer of OSI Model (Layer-6)

    presentation layer process

  5. 3-Layer Process Diagram for PowerPoint

    presentation layer process

  6. The OSI Model Layers from Physical to Application

    presentation layer process

VIDEO

  1. Layer Process

  2. OSI model

  3. Floor tile cement stabilization layer laying process

  4. Reinforcement process of the outer layer of round wood columns

  5. Lecture-03:How Network Layer work in Bangla

  6. CCNA Course

COMMENTS

  1. Presentation Layer in OSI model

    Presentation Layer in OSI model

  2. Layer 6 Presentation Layer

    Presentation Layer | Layer 6 - The OSI-Model

  3. Presentation layer

    Presentation layer

  4. The OSI Model

    The OSI Model - The 7 Layers of Networking Explained in ...

  5. What is Presentation Layer in the OSI Model?

    Key functions of the Presentation Layer in the OSI model include: Data Encryption: It securely encrypts data to prevent unauthorized access during transmission. Data Compression: It reduces data ...

  6. Presentation Layer of the OSI Model

    Presentation Layer of the OSI Model | Protocols & Functions

  7. A Guide to the Presentation Layer

    The presentation layer is the sixth layer in the OSI model. Known as a translator, it converts data into an accurate, well-defined, standard format after it receives it from the application layer. ... The process helps accelerate the rate at which data transmits to other layers. If you're sending many files, the layer ensures that the files ...

  8. Presentation Layer

    Presentation Layer is the Layer 6 of the seven-layer Open Systems Interconnection (OSI) reference model. The presentation layer structures data that is passed down from the application layer into a format suitable for network transmission. This layer is responsible for data encryption, data compression, character set conversion, interpretation ...

  9. PDF Presentation Layer

    The presentation layer is concerned with preserving the meaning of information sent across a network. The presentation layer may represent (encode) the data in various ways (e.g., data compression, or encryption), but the receiving peer will convert the encoding back into its original meaning. The presentation layer concerns itself with the ...

  10. Unveiling the Interpreter: Fortifying the Presentation Layer's Role in

    The Presentation Layer, often likened to an adept interpreter in the digital realm, plays a pivotal role in the seamless transmission and reception of data across the network. At its essence, the Presentation Layer is tasked with data translation, encryption, and compression. It ensures that the information sent from the application layer is ...

  11. Presentation layer and Session layer of the OSI model

    The presentation layer is the sixth layer of the OSI Reference model. It defines how data and information is transmitted and presented to the user. It translates data and format code in such a way that it is correctly used by the application layer. It identifies the syntaxes that different applications use and formats data using those syntaxes.

  12. Presentation Layer of OSI Model (Layer-6)

    Presentation Layer of OSI Model (Layer-6)

  13. Presentation Layer

    The Presentation Layer in the OSI model is defined as the layer that enables interaction between different application layer implementations by translating data formats and languages to facilitate communication. ... The system that ends up receiving this data does the reverse process by translating the generic data format into a format ...

  14. The TCP/IP Guide

    Presentation Layer (Layer 6) The presentation layer is the sixth layer of the OSI Reference Model protocol stack, and second from the top. It is different from the other layers in two key respects. First, it has a much more limited and specific function than the other layers; it's actually somewhat easy to describe, hurray! Second, it is used ...

  15. The 7 OSI Networking Layers Explained

    The presentation layer completes the process by performing any formatting tasks that may be required. Decryption, decoding, and decompression are three common operations found at this level. The presentation layer processes received data into formats that can be eventually utilized by a client application. Similarly, outward-bound data is ...

  16. Lec 10: Transport layer, Session Layer, and Presentation Layer

    Presentation Layer: According to the Open System Interconnection (OSI) paradigm, the Presentation Layer is the sixth layer. ... Encoding is the process of converting a local representation into ...

  17. What is the presentation layer?

    The presentation layer interacts closely with the application layer, which is located directly above it. The presentation layer's main task is to present data in such a way that it can be understood and interpreted from both the system sending the data and the system receiving it. After this has been accomplished, the application layer then determines how the data should be structured and ...

  18. What is OSI Model?

    What is OSI Model | 7 Layers Explained

  19. OSI Seven Layers Model Explained with Examples

    OSI Seven Layers Model Explained with Examples

  20. Presentation Layer of the OSI Model: Definition and Function

    The presentation layer is the sixth layer of the Open Systems Interconnection (OSI), model. In computer networking, the OSI model is a concept that describes the transmission of data from one computer to another. Each layer in the model is a packet of protocols, or procedures that govern data transmission, which allow the layer to execute ...

  21. Understanding the Role of the Presentation Layer in Data Format

    Learn about the techniques and technologies used in the Presentation Layer of the OSI model for performing data format translation, compression and decompression, and encryption and decryption. ... Encryption is the process of converting plaintext data into a coded format (ciphertext) that is unreadable by unauthorised parties. This helps to ...

  22. OSI model

    OSI model - What's the presentation and session layer for?

  23. Presentation Domain Data Layering

    web development. One of the most common ways to modularize an information-rich program is to separate it into three broad layers: presentation (UI), domain logic (aka business logic), and data access. So you often see web applications divided into a web layer that knows about handling HTTP requests and rendering HTML, a business logic layer ...