• 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
  • Computer Network Tutorial

Basics of Computer Network

  • Basics of Computer Networking
  • Introduction to basic Networking Terminology
  • Goals of Networks
  • Basic characteristics of Computer Networks
  • Challenges of Computer Network
  • Physical Components of Computer Network

Network Hardware and Software

  • Types of Computer Networks
  • LAN Full Form
  • How to Set Up a LAN Network?
  • MAN Full Form in Computer Networking
  • MAN Full Form
  • WAN Full Form
  • Introduction of Internetworking
  • Difference between Internet, Intranet and Extranet
  • Protocol Hierarchies in Computer Network
  • Network Devices (Hub, Repeater, Bridge, Switch, Router, Gateways and Brouter)
  • Introduction of a Router
  • Introduction of Gateways
  • What is a network switch, and how does it work?

Network Topology

  • Types of Network Topology
  • Difference between Physical and Logical Topology
  • What is OSI Model? - Layers of OSI Model
  • Physical Layer in OSI Model
  • Data Link Layer
  • Session Layer in OSI model

Presentation Layer in OSI model

  • Application Layer in OSI Model
  • Protocol and Standard in Computer Networks
  • Examples of Data Link Layer Protocols
  • TCP/IP Model
  • TCP/IP Ports and Its Applications
  • What is Transmission Control Protocol (TCP)?
  • TCP 3-Way Handshake Process
  • Services and Segment structure in TCP
  • TCP Connection Establishment
  • TCP Connection Termination
  • Fast Recovery Technique For Loss Recovery in TCP
  • Difference Between OSI Model and TCP/IP Model

Medium Access Control

  • MAC Full Form
  • Channel Allocation Problem in Computer Network
  • Multiple Access Protocols in Computer Network
  • Carrier Sense Multiple Access (CSMA)
  • Collision Detection in CSMA/CD
  • Controlled Access Protocols in Computer Network


  • Stop and Wait ARQ
  • Sliding Window Protocol | Set 3 (Selective Repeat)
  • Piggybacking in Computer Networks

IP Addressing

  • What is IPv4?
  • What is IPv6?
  • Introduction of Classful IP Addressing
  • Classless Addressing in IP Addressing
  • Classful Vs Classless Addressing
  • Classless Inter Domain Routing (CIDR)
  • Supernetting in Network Layer
  • Introduction To Subnetting
  • Difference between Subnetting and Supernetting
  • Types of Routing
  • Difference between Static and Dynamic Routing
  • Unicast Routing - Link State Routing
  • Distance Vector Routing (DVR) Protocol
  • Fixed and Flooding Routing algorithms
  • Introduction of Firewall in Computer Network

Congestion Control Algorithms

  • Congestion Control in Computer Networks
  • Congestion Control techniques in Computer Networks
  • Computer Network | Leaky bucket algorithm
  • TCP Congestion Control

Network Switching

  • Circuit Switching in Computer Network
  • Message switching techniques
  • Packet Switching and Delays in Computer Network
  • Differences Between Virtual Circuits and Datagram Networks

Application Layer:DNS

  • Domain Name System (DNS) in Application Layer
  • Details on DNS
  • Introduction to Electronic Mail
  • E-Mail Format
  • World Wide Web (WWW)
  • HTTP Full Form
  • Streaming Stored Video
  • What is a Content Distribution Network and how does it work?

CN Interview Quetions

  • Top 50 Networking Interview Questions (2024)
  • Top 50 TCP/IP interview questions and answers
  • Top 50 IP addressing interview questions and answers
  • Last Minute Notes - Computer Networks
  • Computer Network - Cheat Sheet
  • Network Layer
  • Transport Layer
  • Application Layer

Prerequisite : OSI Model

Introduction : Presentation Layer is the 6th layer in the Open System Interconnection (OSI) model. This layer is also known as Translation layer, as this layer serves as a data translator for the network. The data which this layer receives from the Application Layer is extracted and manipulated here as per the required format to transmit over the network. The main responsibility of this layer is to provide or define the data format and encryption. The presentation layer is also called as Syntax layer since it is responsible for maintaining the proper syntax of the data which it either receives or transmits to other layer(s).

Functions of Presentation Layer :

The presentation layer, being the 6th layer in the OSI model, performs several types of functions, which are described below-

  • Presentation layer format and encrypts data to be sent across the network.
  • This layer takes care that the data is sent in such a way that the receiver will understand the information (data) and will be able to use the data efficiently and effectively.
  • This layer manages the abstract data structures and allows high-level data structures (example- banking records), which are to be defined or exchanged.
  • This layer carries out the encryption at the transmitter and decryption at the receiver.
  • This layer carries out data compression to reduce the bandwidth of the data to be transmitted (the primary goal of data compression is to reduce the number of bits which is to be transmitted).
  • This layer is responsible for interoperability (ability of computers to exchange and make use of information) between encoding methods as different computers use different encoding methods.
  • This layer basically deals with the presentation part of the data.
  • Presentation layer, carries out the data compression (number of bits reduction while transmission), which in return improves the data throughput.
  • This layer also deals with the issues of string representation.
  • The presentation layer is also responsible for integrating all the formats into a standardized format for efficient and effective communication.
  • This layer encodes the message from the user-dependent format to the common format and vice-versa for communication between dissimilar systems.
  • This layer deals with the syntax and semantics of the messages.
  • This layer also ensures that the messages which are to be presented to the upper as well as the lower layer should be standardized as well as in an accurate format too.
  • Presentation layer is also responsible for translation, formatting, and delivery of information for processing or display.
  • This layer also performs serialization (process of translating a data structure or an object into a format that can be stored or transmitted easily).

Features of Presentation Layer in the OSI model: Presentation layer, being the 6th layer in the OSI model, plays a vital role while communication is taking place between two devices in a network.

List of features which are provided by the presentation layer are:

  • Presentation layer could apply certain sophisticated compression techniques, so fewer bytes of data are required to represent the information when it is sent over the network.
  • If two or more devices are communicating over an encrypted connection, then this presentation layer is responsible for adding encryption on the sender’s end as well as the decoding the encryption on the receiver’s end so that it can represent the application layer with unencrypted, readable data.
  • This layer formats and encrypts data to be sent over a network, providing freedom from compatibility problems.
  • This presentation layer also negotiates the Transfer Syntax.
  • This presentation layer is also responsible for compressing data it receives from the application layer before delivering it to the session layer (which is the 5th layer in the OSI model) and thus improves the speed as well as the efficiency of communication by minimizing the amount of the data to be transferred.

Working of Presentation Layer in the OSI model : Presentation layer in the OSI model, as a translator, converts the data sent by the application layer of the transmitting node into an acceptable and compatible data format based on the applicable network protocol and architecture.  Upon arrival at the receiving computer, the presentation layer translates data into an acceptable format usable by the application layer. Basically, in other words, this layer takes care of any issues occurring when transmitted data must be viewed in a format different from the original format. Being the functional part of the OSI mode, the presentation layer performs a multitude (large number of) data conversion algorithms and character translation functions. Mainly, this layer is responsible for managing two network characteristics: protocol (set of rules) and architecture.

Presentation Layer Protocols : Presentation layer being the 6th layer, but the most important layer in the OSI model performs several types of functionalities, which 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. Presentation Layer, for performing translations or other specified functions, needs to use certain protocols which are defined below –

  • Apple Filing Protocol (AFP): Apple Filing Protocol is the proprietary network protocol (communications protocol) that offers services to macOS or the classic macOS. This is basically the network file control protocol specifically designed for Mac-based platforms.
  • Lightweight Presentation Protocol (LPP): Lightweight Presentation Protocol is that protocol which is used to provide ISO presentation services on the top of TCP/IP based protocol stacks.
  • NetWare Core Protocol (NCP): NetWare Core Protocol is the network protocol which is used to access file, print, directory, clock synchronization, messaging, remote command execution and other network service functions.
  • Network Data Representation (NDR): Network Data Representation is basically the implementation of the presentation layer in the OSI model, which provides or defines various primitive data types, constructed data types and also several types of data representations.
  • External Data Representation (XDR): External Data Representation (XDR) is the standard for the description and encoding of data. It is useful for transferring data between computer architectures and has been used to communicate data between very diverse machines. Converting from local representation to XDR is called encoding, whereas converting XDR into local representation is called decoding.
  • Secure Socket Layer (SSL): The Secure Socket Layer protocol provides security to the data that is being transferred between the web browser and the server. SSL encrypts the link between a web server and a browser, which ensures that all data passed between them remains private and free from attacks.

Please Login to comment...

Similar reads.


Improve your Coding Skills with Practice


What kind of Experience do you want to share?

Illustration with collage of pictograms of computer monitor, server, clouds, dots

Three-tier architecture is a well-established software application architecture that organizes applications into three logical and physical computing tiers: the presentation tier, or user interface; the application tier, where data is processed; and the data tier, where application data is stored and managed.

The chief benefit of three-tier architecture is that because each tier runs on its own infrastructure, each tier can be developed simultaneously by a separate development team. And can be updated or scaled as needed without impacting the other tiers.

For decades three-tier architecture was the prevailing architecture for client-server applications. Today, most three-tier applications are targets for modernization that uses cloud-native technologies such as containers and microservices and for migration to the cloud.

Connect and integrate your systems to prepare your infrastructure for AI.

Register for the guide on app modernization

Presentation tier

The presentation tier is the user interface and communication layer of the application, where the end user interacts with the application. Its main purpose is to display information to and collect information from the user. This top-level tier can run on a web browser, as desktop application, or a graphical user interface (GUI), for example. Web presentation tiers are developed by using HTML, CSS, and JavaScript. Desktop applications can be written in various languages depending on the platform.

Application tier

The application tier, also known as the logic tier or middle tier, is the heart of the application. In this tier, information that is collected in the presentation tier is processed - sometimes against other information in the data tier - using business logic, a specific set of business rules. The application tier can also add, delete, or modify data in the data tier. 

The application tier is typically developed by using Python, Java, Perl, PHP or Ruby, and communicates with the data tier by using  API  calls. 

The data tier, sometimes called database tier, data access tier or back-end, is where the information that is processed by the application is stored and managed. This can be a  relational database management system  such as  PostgreSQL , MySQL, MariaDB, Oracle, Db2, Informix or Microsoft SQL Server, or in a  NoSQL  Database server such as Cassandra,  CouchDB , or  MongoDB . 

In a three-tier application, all communication goes through the application tier. The presentation tier and the data tier cannot communicate directly with one another.

Tier versus layer

In discussions of three-tier architecture,  layer  is often used interchangeably – and mistakenly – for  tier , as in 'presentation layer' or 'business logic layer'. 

They aren't the same. A 'layer' refers to a functional division of the software, but a 'tier' refers to a functional division of the software that runs on infrastructure separate from the other divisions. The Contacts app on your phone, for example, is a  three - layer  application, but a  single-tier  application, because all three layers run on your phone.

The difference is important because layers can't offer the same benefits as tiers.

Again, the chief benefit of three-tier architecture is its logical and physical separation of functionality. Each tier can run on a separate operating system and server platform - for example, web server, application server, database server - that best fits its functional requirements. And each tier runs on at least one dedicated server hardware or virtual server, so the services of each tier can be customized and optimized without impacting the other tiers. 

Other benefits (compared to single- or two-tier architecture) include:

  • Faster development : Because each tier can be developed simultaneously by different teams, an organization can bring the application to market faster. And programmers can use the latest and best languages and tools for each tier.
  • Improved scalability : Any tier can be scaled independently of the others as needed.
  • Improved reliability : An outage in one tier is less likely to impact the availability or performance of the other tiers.
  • Improved security : Because the presentation tier and data tier can't communicate directly, a well-designed application tier can function as an internal firewall, preventing SQL injections and other malicious exploits.

In web development, the tiers have different names but perform similar functions:

  • The web server  is the presentation tier and provides the user interface. This is usually a web page or website, such as an ecommerce site where the user adds products to the shopping cart, adds payment details or creates an account. The content can be static or dynamic, and is developed using HTML, CSS, and JavaScript.
  • The application server  corresponds to the middle tier, housing the business logic that is used to process user inputs. To continue the ecommerce example, this is the tier that queries the inventory database to return product availability, or adds details to a customer's profile. This layer often developed using Python, Ruby, or PHP and runs a framework such as Django, Rails, Symphony, or ASP.NET.
  • The database server  is the data or backend tier of a web application. It runs on database management software, such as MySQL, Oracle, DB2, or PostgreSQL.

While three-tier architecture is easily the most widely adopted multitier application architecture, there are others that you might encounter in your work or your research.

Two-tier architecture 

Two-tier architecture is the original client-server architecture, consisting of a presentation tier and a data tier; the business logic lives in the presentation tier, the data tier or both. In two-tier architecture the presentation tier - and therefore the end user - has direct access to the data tier, and the business logic is often limited. A simple contact management application, where users can enter and retrieve contact data, is an example of a two-tier application. 

N-tier architecture

N-tier architecture - also called or multitier architecture - refers to  any  application architecture with more than one tier. But applications with more than three layers are rare because extra layers offer few benefits and can make the application slower, harder to manage and more expensive to run. As a result, n-tier architecture and multitier architecture are usually synonyms for three-tier architecture.

Move to cloud faster with IBM Cloud Pak solutions running on Red Hat OpenShift software—integrated, open, containerized solutions certified by IBM®.

Seamlessly modernize your VMware workloads and applications with IBM Cloud.

Modernize, build new apps, reduce costs, and maximize ROI.

IBM Consulting® application modernization services, which are powered by IBM Consulting Cloud Accelerator, offers skills, methods, tools, and initiatives that help determine the right strategy based on your portfolio. To modernize and containerize legacy system applications and accelerate the time-to-value of hybrid cloud environments. 

Discover what application modernization is, the common benefits and challenges, and how to get started.

Learn about how relational databases work and how they compare to other data storage options.

Explore cloud native applications and how they drive innovation and speed within your enterprise.

Modernize your legacy three-tier applications on your journey to cloud. Whether you need assistance with strategy, processes, or capabilities—or want full-service attention—IBM can help. Start using containerized middleware that can run in any cloud—all bundled in IBM Cloud Paks.

data use cases

Web Application Architecture: How the Web Works

  • Engineering
  • 25 Jul, 2019
  • No comments Share

What is Web Application Architecture?

  • addresses a particular problem, even if it’s simply finding some information
  • is as interactive as a desktop application
  • has a Content Management System

How does the web request work?

web request-response cycle

Web request-response cycle

Web application architecture components and Three-Tier Architecture

web application architecture

Web application architecture following the three-tier pattern

Presentation layer

Business layer, persistence layer, example #1. dynamic web pages, spas, and mpas, single page applications.

SPA architecture

Single Page Application architecture

Multi-Page Applications

multi-page applications

MPA architecture

Example #2. Enterprise applications

enterprise application architecture

Enterprise application architecture

To conclude

How to Create a Modern Web Application Architecture?


Creating a modern web application architecture is crucial for businesses to remain competitive and meet the growing demands of users. A well-designed architecture ensures flexibility, scalability, maintainability, security, and high performance.

As an experienced web development company, Integrio will provide an overview of the architecture components, layers, types, and best practices. We will also share success stories from clients like 123Signup, Volo Innovations, and CareOregon.

What Is Web Application Architecture?

Web application architecture refers to the structural design and organization of the client-side and server-side components. It typically comprises multiple layers that work together to provide a complete solution to the end users.

While constructing a modern web application architecture, consider scalability, reliability, security, and maintainability.

How Do Modern Web Applications Work?

We prepared a simplified description of how web solutions typically work:

The user opens a web browser and enters the URL for the web application.

The browser sends an HTTP request to the server hosting the web application.

The server receives the request and uses the appropriate server-side component to process the request.

The server-side component retrieves data from a database and generates an appropriate response.

The response is sent back to the browser as an HTTP response.

The browser receives the response and uses the appropriate client-side components (such as HTML, CSS, and JavaScript) to render the response as a user interface.

The user interacts with the user interface, triggering additional HTTP requests to the server.

The server receives each request and processes it using the appropriate server-side component.

The server generates an appropriate response and sends it back to the browser as an HTTP response.

The browser receives the response and updates the user interface accordingly.

The process continues until the user completes their web application task.

Components of Web Application Architecture

The web application has two sides — front-end and back-end.

The front-end is part of a web application that ' s visible and accessible to the user and includes user interface (UI) elements, such as buttons, forms, and menus.

The back-end is part of a web application that runs on the server. It typically consists of the server and the database.

Components of Web Application Architecture

Let ' s discuss the components of modern web application architecture and their functions.

User Interface (UI)

The UI is the web application component that interacts with the user, displays the content, and receives input. It can be implemented using various technologies, such as:

HTML — to structure the web page ' s content

CSS — to style the page and make it visually appealing

JavaScript — to add interactivity and functionality to the UI

Good UI design involves understanding the user ' s needs and preferences, organizing the UI elements logically and intuitively, and making the application easy to use and navigate.

The web server handles incoming client requests and sends back responses. It hosts the web application and serves HTML pages, images, and other static content. It also manages connections, sessions, and cookies and implements security mechanisms, such as SSL/TLS encryption, to protect against attacks.

Popular web servers: Apache, Nginx, Microsoft IIS, and Google Web Server.

Database Server

The database server stores and manages data for the web application. Its functions include creating, updating, deleting, and querying data, ensuring its integrity and security.

To improve the performance of web applications, database servers use caching and indexing techniques. They also implement backup and recovery mechanisms to protect against data loss and ensure its availability in the event of a failure.

Popular database servers: MySQL, Oracle, and MongoDB.

The Domain Name System (DNS) is a critical component of web application architecture. It translates human-readable domain names (such as www.example.com) into IP addresses (such as that computers can understand.

Its main function is to provide a way for users to access web resources using easy-to-remember domain names while facilitating communication between web servers and clients.

Messaging Middleware

Messaging middleware enables communication between different software components or systems, allowing them to exchange messages and data with each other. It can handle a variety of communication patterns, such as point-to-point, publish-subscribe, and request-response.

Popular messaging middleware solutions: Apache Kafka, RabbitMQ, and ActiveMQ.

Load Balancer

A load balancer distributes incoming traffic across multiple servers to optimize resource utilization, maximize throughput, and minimize response time. As a result, it improves the performance and reliability of the web application.

Popular load balancers: HAProxy, NGINX, and F5.

The cache is an infrastructure component that stores frequently accessed data or resources in a fast-access memory or storage location. Its primary purpose is to improve performance and scalability.

Popular caching solutions: Redis, Memcached, and Varnish.

The Content Delivery Network (CDN) is a network of globally distributed servers that delivers content to users from the server closest to them. It improves the performance and availability of the web application by reducing latency and network congestion.

Popular CDNs: Cloudflare, Akamai, and Amazon CloudFront.

There are several models of web application components, including the client-server, peer-to-peer, and the hybrid model.

Web Application Architecture Diagram

This diagram will help you visualize the application architecture by combining everything we discussed:

Web Application Architecture Diagram

Layers of Web App Architecture

Layers of Web App Architecture

Here is a description of the four layers of a modern web app architecture:

Presentation Layer

The presentation layer manages the app user interface, dealing with HTML, CSS, and JavaScript. It also receives user input and sends it to the business layer for processing, interacting through APIs or interfaces. The presentation layer typically includes web components such as controllers, views, and templates.

Business Layer

The business (or application) layer handles the web application ' s business logic. It contains controllers, services, and models responsible for performing the necessary actions to fulfill user requests. The business layer interacts with the data access layer to retrieve or manipulate data as needed.

Data Access Layer

The data access (or persistence) layer translates application data into a format that can be stored and retrieved from a data store. It contains the components that interact with the database, such as data access objects (DAOs), object-relational mappers (ORMs), and stored procedures.

Database Layer

The database layer includes the database management system (DBMS) and the data stored in the database. This layer stores data in a structured format that can be easily queried and manipulated by the data access layer.

Here is an algorithmic representation of how the layers work together:

The user interacts with the presentation layer by providing input through the user interface.

The presentation layer receives the user input and sends it to the business layer.

The business layer processes the user input, performs the necessary actions, and retrieves or updates data through the data access layer.

The data access layer retrieves or updates data from the database layer and sends it back to the business layer.

The business layer processes the retrieved data and generates a response to the presentation layer.

The presentation layer receives the response from the business layer and updates the user interface accordingly.

The process repeats as the user provides further input or navigates through the application.

Types of Web Application Architecture

When it comes to designing and developing web applications, there are different types of architectures to choose from.

Single-Page Applications (SPAs)

In SPAs, the web application loads only once and then dynamically updates the content as the user interacts. The data is loaded asynchronously through APIs, making it more responsive and reducing the server ' s load. This architecture is suitable for applications that require a lot of user interaction and real-time data updates.

Examples: Gmail, Trello, Spotify, and Twitter.

Single-Page Applications (SPAs)

Server-Side Rendered Application (SSR)

In SSR, the server generates HTML pages for each request, and the client only receives the final result. This architecture is suitable for applications that require fast loading times and good SEO, but it can be slower than SPAs.

Examples: WordPress, Airbnb, Shopify.

Server-Side Rendered Application (SSR)

Progressive web application (PWA)

A PWA behaves like a native mobile application, with features like offline access, push notifications, and full-screen mode. This architecture is suitable for solutions that need to be accessible on mobile devices and have the same user experience as native applications.

Examples: Starbucks, Pinterest, Forbes, Uber, and Twitter Lite.

Progressive web application (PWA)


In a microservices architecture, the backend is divided into small, independent services that communicate with each other through APIs. Each service is responsible for a specific function: authentication, payments, or messaging. This highly scalable architecture allows for more granular control over individual components but can be complex to manage.

Examples: Netflix, Amazon, Uber, and Airbnb.


Serverless Architecture

In this architecture, the backend is built using cloud-based solutions, such as AWS or Azure. Each function is responsible for tasks like registering users or sending email notifications. It is highly scalable and cost-effective but difficult to manage and debug.

Examples: Coca-Cola, Capital One, The New York Times, and Fender.

Serverless Architecture

Precise Web Application Architecture Best Practices

Working on web app architecture, developers need to consider a range of factors:

Scalability — to handle increasing loads and scale horizontally or vertically

Modularity — to provide easy testing, modifications, and bug fixes

Security — to protect sensitive data and prevent unauthorized access

Performance — to guarantee a responsive and fast user experience

Availability — to ensure the application is available even during failures

Extensibility — to allow for future changes and updates

Standardization — to ensure consistency and ease of maintenance

Flexibility — to adapt to changing requirements and improvements over time

Documentation — to improve collaboration, reduce errors, and simplify maintenance

Why Integrio Is the Trusted Modern Web App Architecture Service Vendor

Integrio is a reliable modern web application architecture vendor with:

20 years of experience in developing web apps for startups, small and mid-sized companies, and enterprises

Expertise in various industries, including aviation, transportation, manufacturing, real estate, telecommunications, digital marketing, health, and fitness

Cutting-edge technologies, such as Artificial Intelligence (AI) and Machine Learning (ML)

Flexible cooperation and pricing models: project outsourcing (fixed price, time & material) and dedicated team (monthly retainer)

See the specific cases our company worked on:

For Volo Innovations , we developed software for managing gyms and fitness centers. Its functionality includes scheduling, invoicing, marketing activities, reporting, and more. The company was later acquired by Member Solutions, a subsidiary of Jonas Software, and the source code has successfully passed an independent audit for scalability and security.

US health insurance provider CareOregon conducted a member satisfaction survey. Our task was to create a program that could structure a huge amount of data and display it in the form of diagrams and tables. Such a platform had to be safe and reliable. As a result, the company increased its revenues and improved overall customer satisfaction and even can track its level in real time.

Collaboration with 123Signup started with the source code recovery and modernization of the legacy components of their event and association management solution. We also added modules for membership, event planning, and donations, as well as reporting and analytics. It helped clients improve their experience and run events with fewer staff.

Modern web application architecture is essential for creating scalable, secure, and maintainable solutions. By following best practices and choosing the appropriate components, layers, and types of architecture, developers can create applications that meet clients ' business needs and provide a seamless user experience.

Contact Integrio to learn how we can help you create an advanced web app with modern architecture.

What is a modern web app architecture?

A modern web application architecture is a software design approach that leverages cloud computing and microservices to build scalable, flexible, and efficient web applications. It also includes infrastructure components like containerization, load balancing, and caching.

How to create a modern web app architecture?

First, you need to understand the requirements of your application and select the appropriate technologies and infrastructure components to meet those needs. This involves careful planning, collaboration between development and operations teams, and a focus on scalability, security, and efficiency.

What should I consider when choosing web application architecture for my project?

To evaluate modern web app architecture, you must consider scalability, security, performance, and complexity. It ' s important to analyze your specific requirements, such as the number of users, the complexity of your application, and your budget. Consulting with Integrio experts can also be helpful.

I reviewed and agree to Integrio Systems Privacy Statement

team photo

We use cookies and other tracking technologies to improve your browsing experience on our website. By browsing our website, you consent to our use of cookies and other tracking technologies.

  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

Sase specific application service element, 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.

We support startups to strategize, build and scale digital products that gain user validation and investors’ trust.

Let’s start by building mutual trust

We turn our 16 years of experience into useful resources for tech startups development

  • Startup Strategy
  • Startup Funding
  • Startup Marketing
  • CTO in Startup
  • Risk Management
  • Artificial Intelligence
  • Web Security

We create custom solutions for founders in different sectors. Count on us to use the best tech, ensuring your products are rock-solid and ready to scale.

A platform tailored to your vision

  • Mobile Apps
  • AI-based Solutions

Experience in many industries allows us to look wider and consult better

  • Real Estate
  • Case Studies
  • Startup Tools

agile vs waterfall

Web Application Architecture: Diagram and 8 Best Practices to Follow

Today, let’s take a deep dive into the best practices of web application architecture that can help achieve top-notch performance. We’ll explore the fundamental elements of web application architecture and equip you with practical strategies for crafting a resilient and scalable website.

Whether you’re a developer or a business owner embarking on a new project, this blog post will provide invaluable insights to help you decide on an architecture that caters to your needs.

In this article:

What is web application architecture?

What is the difference between network architecture and application architecture, the layers of modern web application architecture, types of web application architecture, application architecture diagram. components of web application architecture, web application architecture: best practices.

When we refer to web application architecture, we are essentially talking about an application’s underlying structure and design. This encompasses how various parts of the application are organized, how they work together, and how they are deployed.

The fundamental aim of web application architecture is to create a piece of software that can effortlessly scale, deliver optimal performance, and ensure data security.

The three critical components of web application architecture are front-end, back-end, and the database. Front-end is responsible for the application’s user interface, which includes various elements like forms, buttons, and other interactive features that users engage with directly. It is built to make the application user-friendly, often employing technologies like HTML, CSS, and JavaScript.

On the other hand, the back-end of a web application manages server-side processing, which involves tasks such as processing data and managing databases. It controls the application’s data and handles user requests. Server-side programming languages like Python, Ruby, and Java are commonly used for back-end development.

Databases are responsible for storing and retrieving information. They manage user data and process queries. To develop the database component, a database management system (DBMS) is used, with popular options including MySQL, PostgreSQL, and MongoDB. If necessary, you can effortlessly sync your MongoDB data to PostgreSQL using specialized migration tools.

To build a scalable, efficient, and secure web application, each element has to be properly organized and designed. The correct interplay of these components is indispensable for a web application’s success.

Choosing the right architecture is a complex decision. While scalability, maintainability, and extensibility are essential considerations, other factors such as budget, time-to-market, and technology stack also come into play. When we decide on a web application architecture for our clients, we make sure it aligns with the business objectives and goals of their organizations. Paul Jackowski CEO, ASPER BROTHERS Let's Talk

Network and application architectures are both essential to building a functional and reliable web application. However, they concern different parts of the overall infrastructure.

Network architecture is associated with physical infrastructure and the way that the components communicate with each other across the network. It includes aspects such as network topology, network protocols, and hardware components like routers and switches. Network architecture ensures that the application is able to effectively, securely, and reliably transmit data between components.

In contrast, application architecture focuses on the structure and organization of software components that make up the application. The application architecture focuses on designing an application that is scalable, efficient, and secure on a software level.

Understanding the differences between these two types of architectures is crucial for building a functional web application.

Modern web application architecture typically consists of several layers that work together to provide a robust, scalable, and maintainable system. Each layer serves a specific purpose, and together they form a cohesive and integrated solution that can handle a variety of tasks.

By dividing a web application into these layers, modern web application architecture ensures that each of them can be developed and handled independently of the others. This approach makes modifying and enhancing the application easier as requirements change over time.

It’s important to note that not all web applications will have a Data Service Layer, and that some web applications may include additional layers or sub-layers depending on the application’s specific requirements.

The Layers of Web Application Architecture

A diagram showing the client-side and server-side layers of web application architecture.

#1 Presentation Layer (PL)

This layer is responsible for the user interface of a web application. It deals with displaying information, collecting data, and determining user interactions.

The presentation layer is typically built with HTML, CSS, and JavaScript, which handle the layout, styling, and interactivity of the user interface. Modern frameworks like React, Angular, or Vue.js are often employed.

#2 Business Logic Layer (BLL)

The business logic layer contains the application’s business logic and functionality of the web applications. It handles user requests, processes data, and performs operations based on the defined rules and algorithms. The business logic layer ensures that the processed data is valid and accurate.

This layer often utilizes programming languages like Python, Java, or C#, along with frameworks and libraries that facilitate application development and provide tools for routing, validation, and data manipulation.

#3 Data Access Layer (DAL)

The data access layer is responsible for managing the storage and retrieval of data used by the application. It handles all communications with the database, as well as data persistence and its manipulation, ensuring the integrity and consistency of the information.

It typically involves a database or a combination of databases, such as relational databases (e.g., MySQL, PostgreSQL) or NoSQL databases (e.g., MongoDB, Cassandra).

#4 Data Service Layer (DSL)

The data service layer provides a service interface to the other application layers. It exposes the data access layer’s functionality and ensures that data is retrieved and stored consistently. It bridges the application layer and other components, allowing communication and data exchange with external systems or services. It enables integration with third-party APIs, databases, or microservices, enabling the web application to access and manipulate data from various sources.

In more complex architectures, an additional services layer may exist between the BLL and the DSL. This layer abstracts specific functionalities into modular services, providing a more decoupled and scalable system. Services can be designed to handle tasks such as authentication, authorization, file storage, email notifications, or payment processing, and they can be independently developed, tested, and deployed.

There are various types of web application architecture, each with its own set of strengths and weaknesses.

The most common types include monolithic architecture, microservices, progressive web apps, and serverless architecture. By understanding their differences, you can make a far more insightful decision about which approach suits your next web application project. Your choice will ultimately depend on your application’s specific requirements.

#1 Monolithic architecture

A monolith is a traditional approach to building web applications, where all the components (front-end, back-end, database) are tightly coupled and packaged into a single application. This methodology is easy to develop and deploy but can become increasingly challenging to handle and scale as the application grows.

#2 Microservices architecture

In contrast to monolithic architecture, microservices break the application into small, independent services that can be developed, deployed, and scaled independently of one another. While this approach offers more flexibility and scalability, it can also be far more complex to build and manage.

#3 Progressive web apps

Progressive web apps (PWAs) are web applications designed to function like native mobile apps, offering features like offline functionality, push notifications, and access to device hardware. PWAs are built using web technologies that can be deployed to any device with a web browser.

#4 Serverless architecture

Serverless architecture , also known as Function-as-a-Service (FaaS), is a newer approach to web application architecture that relies on cloud providers to manage the underlying infrastructure. Here developers write functions that are executed in response to events (such as user requests) without having to manage servers or infrastructure.

Web application architecture is a complex system comprised of various interdependent components. These components are crucial for building a web application that is scalable, efficient, and secure; therefore, understanding their interactions is essential.

Components of Web Application Architecture

A diagram showing the interactions between web application architecture’s components.

#1 DNS (Domain Name System)

A DNS translates domain names into IP addresses, enabling users to access websites using human-readable names. A DNS service ensures users can access your web application without issues.

#2 Web app servers

Web app servers are responsible for processing requests from clients and generating responses. These servers run application code and perform authentication, authorization, and session management tasks. Common web app servers include Apache, Nginx, and IIS.

#3 Load balancer

A load balancer distributes traffic across multiple servers to ensure the application can handle large requests. It also helps prevent server overloading by improving the application’s overall performance.

#4 Databases

Databases store and manage data used by the web application. The type of database used depends on the specific requirements of the application. Common databases include MySQL, PostgreSQL, and MongoDB.

#5 Caching service

Caching services improve the application’s performance by storing frequently accessed data in its memory. Using them helps reduce the number of requests to the database and improve response times.

#6 Full-text search service

A full-text search service allows users to search through large amounts of data using natural language queries. This service is optional but can be valuable to web applications requiring advanced search functionality.

#7 Services

Services are independent components that provide specific functionality to the web application. These can be internal or external services, including APIs, email services, and payment gateways.

#8 Data warehouse

The purpose of a data warehouse is to store and analyze large amounts of data. It provides a central location for storing data from multiple sources and allows for advanced data analytics.

#9 CDN (Content Delivery Network)

A Content Delivery Network , widely known as a CDN, is a distributed network of servers that stores cached copies of static content. It helps improve the application’s performance by reducing the latency associated with serving content from a single server.

Web application architecture is a critical aspect of creating high-performing and reliable applications. In addition to ensuring that the application is easy to use and understand, it’s essential to design an architecture that can handle high traffic, maintain optimal performance, and adapt to changing demands.

#1 Implementing a scalable web server

The web server is the backbone of any web application, responsible for processing user requests and delivering responses. Designing a scalable web server is essential to ensure optimal performance, meaning it can handle increasing traffic volumes without compromising performance. This can be achieved through load balancing, clustering, and caching techniques. Additionally, monitoring web server performance regularly and optimizing configurations for maximum efficiency is essential.

#2 Adapting to the Cloud with elastic infrastructure

Cloud computing has revolutionized the way web applications are developed and deployed. The cloud-based infrastructure allows for elastic scalability, meaning the application can expand or contract resources automatically in response to changes in demand. This approach ensures the web application can handle traffic spikes without downtime or performance issues. Additionally, cloud application development provides benefits such as high availability, reliability, and cost-effectiveness.

#3 Immutable infrastructure

Immutable infrastructure is a concept that involves designing infrastructure that cannot be modified after it is deployed. Instead of changing the infrastructure, new versions are created, and the old ones are replaced. This approach eliminates configuration drift, improves security, and ensures that the infrastructure is always in a known, reliable state. Additionally, immutable infrastructure provides the ability to roll back to previous versions quickly in case of issues.

#4 Microservices and a serverless approach

Microservices and serverless architecture are two approaches that have gained popularity in the past few years due to their ability to improve scalability, agility, and cost-effectiveness.

Microservices involve breaking down a web application into more compact, independent services that communicate with each other through APIs. This approach allows flexibility and agility, as each service can be developed, deployed, and scaled independently. Serverless architecture involves running code without the need for a dedicated server. This approach allows for cost savings and scalability benefits, as resources are allocated as needed.

#5 Multi-tenant architecture

When designing web applications, one critical decision is whether to use a multi-tenant or a single-tenant architecture. Multi-tenant architecture serves multiple clients (tenants) using a single application instance, while single-tenant architecture serves a single client per application instance.

  • Single-tenant . In single-tenant architecture, each client or tenant has a dedicated instance of the application, database, and infrastructure. This approach offers complete data isolation and control, but this can be more expensive and less scalable than multi-tenant architecture.
  • Multi-tenant . In multi-tenant architecture, multiple clients or tenants share a single instance of the application, database, and infrastructure. This approach reduces the cost of infrastructure, maintenance, and support and provides better scalability and flexibility. However, implementing it can be more complex, and concerns about data privacy and security may exist.

#6 Securing web application architecture

Security is a critical aspect of web application architecture. A well-designed security architecture can protect applications against attacks, data breaches, and other security threats that can impact the confidentiality, integrity, and availability of the application and its data.

Let’s discuss some of the most common standards and regulations that web applications must comply with, including HIPAA, PCI, and SOC2. These standards provide guidelines and best practices for securing sensitive data and ensuring the integrity of web applications.

  • HIPAA , which also stands for Health Insurance Portability and Accountability Act, is a regulation that applies to healthcare entities that manage electronically protected health information (ePHI). The standard outlines the requirements for securing ePHI, such as implementing access controls, encryption, and audit logging, to protect patient privacy and prevent data breaches.
  • PCI (Payment Card Industry) is a standard for organizations that handle credit card data. The standard outlines the requirements for securing credit card data, such as encrypting cardholder data, implementing access controls, and conducting regular vulnerability scans and penetration testing to prevent unauthorized access and data breaches.
  • SOC2 (System and Organization Controls 2) is a standard for service providers that process customer data. The standard outlines the requirements for securing customer data, such as implementing access controls, monitoring and alerting, and incident management, to ensure customer data’s confidentiality, integrity, and availability.

Implementing these standards can help web application architects and developers ensure that their applications are designed to meet industry best practices and regulations for security. By implementing these standards, organizations can improve the security posture of their web applications and protect against security threats that can cause significant damage to their business and reputation.

#7 Automating code deployments in a DevOps CI/CD environment.

Automating code deployment can be a great way to speed up the process of deploying software changes to production while minimizing the risk of errors and downtime. This involves setting up a pipeline that could be used to automate the process of building, testing, and deploying code changes to production, which can help make the whole process smoother and more efficient.

By automating the deployment process, organizations can ensure that code changes are consistently deployed in a scalable and reliable manner with minimal human intervention. This helps improve software quality and increases the deployment process’s speed and efficiency.

To automate code deployment, organizations use a set of tools and technologies that are used together to create a seamless, end-to-end deployment process. These tools include containerization, continuous integration, and deployment automation tools.

Automating code deployment is essential to the software delivery process in a DevOps CI/CD environment. It speeds up the deployment process while reducing the risk of errors and downtime, resulting in better software quality and faster delivery of new features and updates.

#8 Building your web architecture with IaC Tools

By leveraging Infrastructure as Code (IaC) tools, developers and operations teams can define and manage infrastructure via code, similar to any other software development project. Consequently, infrastructure can be versioned, tested, and deployed in a more automated and reliable manner, leading to a more efficient and streamlined approach to infrastructure management.

Incorporating IaC tools into web architecture development can automate and optimize the infrastructure management process, thereby creating infrastructure that is more consistent, scalable, and reliable. This approach can improve software quality, minimize the risk of errors and downtime, and accelerate the deployment process, leading to increased speed and efficiency of the application.

Some key IaC tools for building web architectures include Terraform, AWS CloudFormation, and Ansible. They allow developers and operations teams to define and manage infrastructure in a more automated and reliable way.

Understanding web application architecture is crucial for building efficient, scalable , and secure web applications. Developers can ensure optimal performance and reliability by implementing best practices such as scalable web servers, adapting to the cloud with elastic infrastructure, microservices, and automation through Infrastructure as Code tools.

Additionally, considering the types of web application architecture, including monolithic, microservices, progressive web apps, and serverless architecture, can help developers choose the best approach for their specific application needs. Finally, maintaining security and compliance with regulations such as HIPAA, PCI, and SOC2 is essential to protect user data and maintain trust in the application.

Ultimately, the importance of choosing the right web application architecture cannot be overstated, as it can have a significant impact on the success of the project. It requires a thorough understanding of the organization’s needs, the project’s requirements, and the strengths and limitations of various architectures. Therefore, it is crucial for the CTO to work closely with the development team and other stakeholders to make an informed decision that considers all relevant factors.

Call to action

Aleksander Furgal

Are you interested in news from the world of software development? Subscribe to our newsletter and receive a list of the most interesting information.

I accept the terms and conditions and join the newsletter.

ADD COMMENT Cancel reply

Save my name, email, and website in this browser for the next time I comment.

Unlock our Free ChatGPT Prompt

I accept the privacy policy

RELATED articles

software development

Microservices vs. Monolithic Architecture: Breaking Down the Pros and Cons

Microservices and monolithic architectures both have their place in the software development landscape. Knowing the key distinctions between them is crucial...

serverless architecture

What is Serverless Architecture - Explanation of benefits and use cases examples

We live in the age of the cloud. Year after year, the adoption of cloud-based solutions is growing. Databases, applications...

application scalling

Effective Application Scaling - Proven Techniques and Methods

Scaling applications is a requirement that arises with the popularity of a mobile or web app. Initially, developing an app per...

How-To Geek

The 7 osi networking layers explained.

The Open Systems Interconnection (OSI) networking model defines a conceptual framework for communications between computer systems.

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.

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.

  • Domain Names
  • Domain Name Search
  • Free Domain Transfer
  • .com Domain
  • 1 Dollar Domain
  • Cheap Domain
  • Free Domain
  • Buy SSL Certificate
  • Website Builder
  • Website Platforms
  • Website Templates
  • Web Design Services
  • eCommerce Website Builder
  • Local Business Listing
  • Web Hosting
  • WordPress Hosting
  • 1 Dollar Hosting
  • Windows Hosting
  • Free Website Hosting
  • Create Business Email
  • HiDrive Cloud Storage
  • Microsoft 365 Business
  • Cloud Server
  • VPS Hosting
  • Dedicated Servers
  • Rent a Server
  • IONOS Cloud
  • Business Name Generator
  • Logo Creator
  • Favicon Generator
  • Whois Lookup
  • Website Checker
  • SSL Checker
  • IP Address Check

What is the presentation layer in the OSI model?

The presentation layer is the sixth layer in the OSI model and is responsible for converting different file formats. This allows two systems to communicate. Other tasks carried out by the sixth layer include data compression and encryption.

What is the presentation layer?

What does the presentation layer do, which format does the presentation layer use, presentation layer protocols, skipping the presentation layer.

The presentation layer is the sixth layer of the OSI model. It is primarily used to convert different file formats between the sender and the receiver . The OSI model is a reference model that is used to define communication standards between two devices within a network . The development of this standard began in the 1970s and it was first published at the beginning of the following decade. This standard enables seamless interaction between different technical systems.

The model is made up of a total of seven different layers, all having their own clearly defined tasks. While there are clear boundaries between the layers, the layers interact with each other, with each layer building off the one below it. The different layers are as follows:

  • Physical layer
  • Data link layer
  • Network layer
  • Transport layer
  • Session layer
  • Presentation layer
  • Application 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 what sort of data and values are permissible.

Using these entries, a command set, or an abstract transfer syntax, is then automatically created. The presentation layer now has the task of transferring the data in such a way that it is readable without changing the information contained within it.

The presentation layer is often also responsible for the encryption and decryption of data . The information is first encrypted on the sender’s side and then sent to the receiver in an encrypted state. Keys and encryption methods are then exchanged in the presentation layer. The recipient is then able to decrypt the unreadable data and convert it into a format that can be understood and interpreted.

If data is shown during a transfer, we often use the term transfer syntax. These are separated into the abstract transfer syntax , in which the transferred values are written, and the concrete syntax, which contains a definition of the value coding.

The receiver can only process and understand the data they receive if they receive all of the information from the presentation layer. The most common definition language is Abstract Syntax Notation One (ASN.1) , which is also recommended by the ISO. The ISO is an organization that is responsible for developing international standards in technology, management and manufacturing.

The presentation layer has many different formats. The most common text formats are the ASCII (American Standard Code for Information Interchange) and EBCDIC (Extended Binary-Coded Decimal Interchange Code). The most common image formats are GIF, JPEG and TIFF. Widely used video formats include MIDI, MPEG and QuickTime.

There are many different presentation layer protocols as well as transfer and encryption technologies in the presentation layer. These include:

The tasks which are carried out by the presentation layer are not always necessary for communication between two systems. In instances where both systems use the same formats, data conversion is not necessary. Additionally, encryption and compression are not required for every interaction and can also be carried out in another layer of the OSI model. If this is the case, the presentation layer can be skipped and the application layer (7) can communicate directly with the session layer (5) instead .

  • Encyclopedia

Build or host a website, launch a server, or store your data and more with our most popular products for less.

web presentation layer

Web App Architecture: Components, Layers, and Types

Sveta Cherednichenko

Businesses and organizations of all kinds build apps of different levels of complexity, and it can be overwhelming to understand what technologies will be best suited for your individual case. Choosing the web app architecture design is the most important step in its development

Long gone are the times when web pages were static and their main goal was to provide information. Now apps are highly functional and user-oriented, which means they’re rather heavy and require robust architectures that can sustain constant data flows and execute complex business logic.

Choosing the right architecture is the most challenging step in web app development , as the architecture is the backbone that unites and organizes all web application components.

In this article, you’ll get familiar with basic terms of web app backend architecture like components, models, and types.You’ll also see how developers choose an architecture depending on the complexity and specific functionality of a web application.

First, let’s figure out what web applications and architectures are.

What is a web application architecture?

A web application is a piece of software that works on the internet through a browser. It isn’t much different from a traditional desktop application, but it relies on an internet connection and needs to constantly share and receive data from a server to work.

A web application architecture is essentially a framework that unites all components of the application into one system that exchanges data and allows a user to interact with the product through requests to and responses from a server.

Every good web app architecture should:

  • Solve business problems
  • Support the brand’s visual aesthetic
  • Be maintainable and reliable
  • Be secure and robust
  • Scale easily
  • Automate some business operations
  • Log errors for easier quality control
  • Enable A/B testing and support analytics

A web app architecture should meet the needs of three groups of people:

  • End-users — The app should be user-friendly, responsive, fast, and provide offline functionality.
  • Engineers — The architecture should be functional, fast to develop, scalable, maintainable, and allow for automated testing.
  • Business owners and stakeholders — The app should cover business needs and bring more profit than the resources it takes. Also, it should be highly secure and easy to support.

There are two main components of a web app architecture: the server side and the client side. Let’s find out the differences between these components and define their functions.

Web application architecture components

Beyond server-side and client-side, you can divide web app architecture components into two other categories:

  • UI/UX components
  • Structural components

UI/UX components represent all elements of a web app that are visible to a user. They include layouts, notifications, and dashboards.

Structural components include the server and the web application database architecture. They’re responsible for a website’s data structure and business logic.

Each web application has two components (the client and the server) that connect with each other through a framework.

web application architecture diagram

The client is essentially the interface a user interacts with. It’s a visual representation of all the functionality of a web application that users see when they enter or follow a URL. The client side of a web application is written with HTML, CSS, and JavaScript and is the frontend part of the web software.

The backend part of a web application, also called the server side, is often written in PHP, Java, Ruby on Rails, Python, or Node.js. The server side usually consists of two parts: a server that contains all the business logic of your software product and a database where you store all the information used by your app, including user data.

These components are parts of the web application layers we’ll discuss now.

Web application architecture layers

There are four common layers of a web application architecture:

  • Presentation layer (PL)
  • Business logic layer (BLL)
  • Data service layer (DSL)
  • Data access layer (DAL)

The presentation layer is what a user sees and interacts with. This is essentially the client side of an app. It contains interface components and user process components that facilitate the user’s interaction with the app.

The presentation layer provides all data to the client side. It processes the user’s requests and sends them to the server, and it shows the response in the browser and receives input data.

The business logic layer is responsible for data exchange and the app’s overall functionality. It contains all the logic for business operations, such as rules and conditions.

Architecture is a backbone that holds all the layers and components together and defines their communication patterns

The data service layer transfers data from the server to the presentation layer. It separates business logic from the client side and serves as an intermediary between the server and the presentation layer.

The data access layer provides access to your data, including binary and XML files. This is the layer that performs data management operations such as create, read, update, and delete (CRUD).

Every good architecture needs to be scalable, which means you need to be able to easily add more servers and databases.

The term “web application architecture” can refer to two different things:

  • The configuration and number of databases and servers
  • The business logic of interactions between the client and server sides of a web app

In this article, I’ll refer to the database and server configuration as the web component model and will refer to the business logic and interactions between components as the web application architecture.

Let’s start with the component models of web applications.

Web app component models

Every application has at least two components: a server and a database. However, to increase security and performance, software architects often choose to add more servers and databases to the ecosystem. Let’s review all possible component models and discuss their pros and cons.

One server and one database

This is the most common and basic web application architecture, but it’s also the riskiest. If your app doesn’t have a backup server, the whole system can go down if the server stops working. This model is suitable only for simple apps that are created to test the waters or that belong to an individual who wants a minimal digital presence.

Two servers and one database

This is a more risk-proof approach to building a web application. In this case, the server doesn’t store any data but rather transfers it to a separate database. Having a backup server reduces the risk of the system crashing, as the second server will automatically take over all tasks if the first crashes, and your app will stay live.

However, you still have only one database, and if it crashes, you risk losing all your data.

2+ servers and 2+ databases

This option is the most reliable. In this case, you’ll have a backup for all vital components of your system and will be able to work with large amounts of data and divide it into streams. You can also use several databases with different properties to achieve different goals.

For example, you can choose a fast database for processing regular requests. This will speed up your loading time and improve search visibility. You can also duplicate data across databases to make sure you always have a backup. Another option is to distribute data between databases.

At Mobindustry, we advise you to choose this web app database architecture to create a complex business application that’s reliable and secure.

Serverless and microservice models

These are two relatively new models that avoid the monolithic nature of the three models I’ve mentioned above. While the previous models have stable structures, serverless and microservice models are more flexible and easier to change.

A serverless model is a scalable web app architecture that allows developers to focus on their code, while the server provider handles all tasks concerning the server, such as provisioning, configuration, and maintenance.

Another option for architecting web applications is a microservice model , according to which a site consists of loosely coupled services that can be modified and replaced separately. This makes the microservice model flexible and maintainable.

However, both these approaches have their downsides, and only a professional will be able to determine which approach is best for your needs.

Now that I’ve discussed the components of a web application and the ways you can arrange them, let’s talk about the types of architectures.

Types of architectures for a web application

Generally, there are four main types of architectures:

  • Legacy HTML web app architecture
  • Widget web app architecture
  • Single-page web app architecture
  • Progressive web application architecture

The differences between these types of web application architecture patterns lie in how they process requests and load data.

A legacy HTML web app architecture is the most straightforward approach to loading data upon request, as it returns complete HTML code, meaning it fully reloads the whole page, loading both the business logic and page logic. This approach is suitable only for static pages — not for dynamic apps.

The widget web application architecture is a modern web app architecture that is suitable for dynamic web applications. Instead of pages, it’s constructed of services, where each page is essentially a widget. When services receive an AJAX query, they send chunks of data in HTML or JSON to widgets. This data can then be displayed without having to reload the page.

Widget web applications are popular for mobile web application architectures because of their dynamic properties. However, this type of architecture has security flaws, as the app is partly exposed on the client side. Also, this is the most time-consuming architecture to set up and develop.

A single-page application is based on HTML and JavaScript requests that the user sends to load a page once. Because these requests aren’t translated to JSON, they’re lightweight and responsive. The client side has a JavaScript layer that communicates freely with web services. This significantly reduces the amount of data that’s transferred from the server to the client.

Progressive web apps are aimed at mobile devices, as their main features are increased speed, offline functionality, home screen installation, and push notifications. The main advantage of a progressive web app architecture is fast loading. PWAs use caching and storage APIs to precache parts of an application and then load it instantly the second time a user opens the app. The PWA architecture is built specifically for minimizing data traffic and saving user-generated data for offline functionality.

Web server architecture

A server is the backbone of the whole web application, so it’s vital to choose the correct server technology stack for your app. The best server architecture depends on the programming language and framework you choose for your product. This choice should depend on your individual needs as well as your server’s performance, processing power, speed, storage type, and ability to connect to other apps, operating systems, and networks.

These are the most popular web server architectures:

  • Cloud-based

A PHP-based web server architecture is one of the most popular and simplest options for development. Because the PHP language is so widespread, it’s easy to find a team of developers who can rapidly build a secure and maintainable server for your web app.

Laravel is a PHP-based framework that implements an MVC architecture. Many developers choose Laravel because of its wide functionality that includes modular packaging, caching, sessions, and better routing and authentication. Laravel is an efficient framework that helps developers deliver projects fast.

A Python-based architecture is perfect for creating prototypes because of Python’s dynamic properties. There are several great Python frameworks you can use in your project simultaneously while also pairing them with other languages in the same app. Python is beginner-friendly, so you’ll have no problem finding a developer or training your current development team.

AngularJS is a platform and framework for TypeScript and HTML. This architecture is based on NgModule blocks. Lazy loading is one of the biggest benefits of AngularJS, as it improves the user experience and helps reduce code size.

The Azure architecture is a perfect solution if you want to combine the web application cloud architecture with traditional tools. Microsoft Azure allows you to create a web application using the best practices of web architecture development.

Java is the most widely used language for web development, and it’s only natural that it has the most options when it comes to architectures. With Java, you can create both highly complex and very simple pages and be sure they’ll be maintainable in the long-term perspective.

A Java-based server architecture is also extremely versatile, as Java offers a large number of tools that allow you to create highly functional solutions.

The .NET architecture is notorious for its cross-platform support and microservices. Its framework is called Data Access Layer, and it allows you to use data without a specific database code. The .NET architecture currently uses ASP.NET Core and .NET Core, making it easy to optimize and support your web app.

If you choose Node.js for your server, you can build your architecture according to one of the three most popular web development patterns:

  • MVC (Model–View–Controller)
  • MVVM (Model–View–ViewModel)
  • MVP (Model–View–Presenter)

Node.js allows you to identify code elements to configure and route them properly. This architecture is great for data systematization, as it breaks logic into modules, and analyzes logs to make sure your web app works properly. With Node.js, you can build highly scalable and maintainable apps.

Cloud-based web app architectures are a big trend, as cloud servers allow for instant scalability and flexibility and provide easy full-system backups. To make your app architecture more robust, you can store data on both your local server and a cloud server. Cloud-based architectures are also secure if you develop them right, using identity management technologies to protect access.

Wrapping up

Deciding on your app’s architecture is the first step in web application development. There’s no best option when it comes to an architecture, as each programming language and framework has its own pros and cons.

Whichever architectural pattern you choose, it should ensure your product:

  • Is stable and doesn’t crash frequently
  • Can scale up and down
  • Is easy to maintain and support
  • Logs errors
  • Has robust security
  • Supports automated testing
  • Responds fast

Your app architecture should also correspond to your business goals, which is why it’s best to choose the technology stack with your development team after you’ve explained the vision for your web application.

If you need to develop a secure and reliable web app that will help your business grow, contact us. We’re a business-oriented company, and we’ll make sure your web app’s architecture performs well in the years ahead.

Mobindustry creates web applications of any complexity and scale, from MVPs for startups to large enterprise solutions.

Rate the article!

Related articles, share your project with us, what happens next:.

Our website uses cookies to ensure you get the best experience. By browsing the website you consent to our Privacy and Cookies Policy

Privacy Overview

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

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!


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:


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 .

Read more posts .

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

+91 9909712616 Let’s Talk

Guide on Web Application Architecture

Web Application Architecture


Web application architecture always plays a crucial role in setting up the foundation of business apps. It becomes necessary to consider understanding the concept characteristics and the behavior of the architecture.

This understanding ensures meeting the business needs and the goals in a hassle-free manner. That said, in this article, you would be getting the answer to what is web application architecture? You will also get access to highlights on the web application architecture layers, components, models and its types alongside the best practices for giving you enhanced results.

Our guide on Web Application Architecture suggests that the quality induced web architecture turns out to be the de facto of the good products and is always instrumental for the information and the data flow to achieve the desired business rules. That being said, it can work in the blueprint for the data and information flow while solving the business issues effectively.

Definition of web application architecture

Web application architecture refers to the pattern of the interaction between the various Web Application Components. The type of the application architecture is completely dependent on how the application will be finding distribution among the client and the server-side.

How does web application architecture work?

The web applications will have the client-side these other two programs that are always running concurrently. The code of modern web application architecture lives in the browser and keeps responding to the user input, and again the code which lives on the server responds to the HTTP request whenever you’re writing.

It is always up to the Web app developers to decide what the code on the server should be doing about what the code on the browser should do.

There will be all languages like PHP, Java, Python, JavaScript, Ruby On Rails, and C# with the server-side code. All the courts can respond to the HTTP request and always have a capability for running on the server. Certain attributes make it favorable. The client-side most popular programming languages include CSS, JavaScript, and HTML.

Apart from these, additional components like the database server will be sending the requested data to the server-side. The server always works for catching the request and sending it to the data storage for the page’s location and requesting for the data to get displayed on the browser.

Layers of Web App Architecture

There are commonly four layers of the web applications- presentation layer abbreviated as PL, data service layer abbreviated as DSL, business logic layer abbreviated as BLL, and the data access layer added as DAL.

  • The presentation layer is the one that displays a user interface and always makes the user interaction more straightforward and also comes with the UI components helping in showing data for the users. They are also good enough for setting user interactions in a hassle-free manner. It can give all the required information to the client side. The primary goal is to always get the input data and the user’s request by sending them to the data service and showing the results.
  • The business logic layer is responsible for considering the practices for the proper data exchange. The layer always sets definitions for the logic for the business operations as well as the rules.
  • Again, the data service layer works for processing the business logic layer to the presentation layer and always guarantees data security. Besides, it can work for isolation of the business logic from the client-side. The data access layer is fit to simplify access to the data stored in the persistent storage like the binary and the XML files. The data access layer also works for managing, creating, reading updates and delete operations.

You want to develop an Web App For your business?

Take the first step towards your business growth

Web application components

The web application components are broadly classified into two parts.

  • The user interfaces components are the ones that work in the form of the part of the visual interface related to the web application and have no interaction with architecture.

That said, they are vulnerable to the restriction to the display of the web page and consist of the activity logs, dashboards configuration, settings, widgets, statistics, and notification. Overall it was for enhancing the user experience.

  • Structural web components always consist of the client and the server components. These are the components that exist in the user’s browser and will be helping in the interaction with the functionality of the web applications. JavaScript, HTML, CSS are the commonly used entities for building the components.

On the other side, the server components bifurcate into the web app server handling the business logic and database server for storing the data. PHP, Python, Java, node.js, .NET, and Ruby on Rails are some of the famous frameworks used to create the server components.

Models of Web Applications

For the right web architecture of the components, always should consider the future with applications performance.

One web server with the database is the simplest and the riskiest model where there is a single database in the form of the part of the web apps only server. In case the server goes down, the web will be going down as well.

The 2 + web browsers with one database are the idea where the web servers don’t need to store any data. Even when it is getting the information from the client, the web server will be processing and writing the data to the database and forgetting about it. When there are at least two webs there will be a reduced failure risk. If one of the webs is going down, then another is going to take over that immediately. However, one database will always be associated with the performance risk. The risk is in the form that if it crashes, then the entire system is going to crash.

Let’s now discuss the 2 + web service that serves with the two-plus databases. This model will be considered risk-proof because neither the webs nor the databases have their single points of failure. When the web application development project continues, and more than 5 services of the databases are there, the frameworks will be working to store the identical data on each of the database machines.

Again there is an alternative to evenly distribute the data between the databases. Get the advantage of the storage space-saving. The option turns out to be a risky one for becoming vulnerable to unavailability in the event of a database crash.

Microservices and serverless is another entity. The three models that we have mentioned above are always referred to as monolithic due to the stability and the rigid nature of web browsers. On the other hand, the microservices, AWS serverless architecture, have found the information for the simple reason of bringing simplicity to the web browsers.

By simplifying the upgrades and scaling in both the models will get the smaller components like the services and the functions. Each of these smaller components always considers the separate container and finds treatment independently that can be easier for modifying or scaling.

Types of Web Application Architecture

It is always a good practice to consider selecting the most appropriate architecture while considering certain aspects. Always pay attention to the app logic, functionalities, features, and business requirements. Here is a division of web application architecture.

Want to Know the Cost of App Development?

Web Application Architecture Best Practices & Tools

The designing of the architecture is always the first step, but you will always have to consider certain practices that can ensure good results for better success. For the avoidance of problematic circumstances, it’s always good to follow the practices.

  • Make sure about ensuring the system flexibility and efficiency
  • Pay attention to your component reusability
  • Always pay attention to high scalability stability as well as reliability.
  • Make sure the structure of the code is a refined one
  • Pay attention to easy bug detection and utilize the A/B testing. For that, also pay attention to the utilization of the security standards.
  • Ensure sectioning to collect the user feedback and the tools that will give you the best experience.

Some of the tools are as follows:

  • IDE tools: some of the most famous are Webstorm, NetBeans, AWS cloud9, ensuring working with productivity enhancement. Eighty percent of software developers are relying on these tools.
  • UX builder tools: Figma, Sketch are some of the commonly used tools that can improve the user experience. Standard UI toolkit reduced project development and testing time by 33 percent .
  • Frameworks and libraries: React, Angular, Express are some popular frameworks working to deliver quality and product. More than 5 million developers in around 200 countries use frameworks for the projects.
  • Integration tools: Multisoft, Jitterbit, automat.io are some of the famous tools that can ensure the delivery of a seamless, engaging and unified experience.

Key Takeaways

Web application architecture is always working in the form of the backbone of an application. There are chances of miscalculations and inaccuracy at every stage that turn out to be quite costly.

So always pay attention to the strategies and the tools you will have to use to eradicate the issues related to the web application architecture.

If you want to build a successful web application or have any feedback regarding the article then you contact us or comment below.

Recent Blogs

web presentation layer

Corporate Profile

What is the Presentation Layer in Programming?

Trevor Page

Get the Best Java Roadmap

Download the roadmap.

The presentation layer is one of the three main layers in object-oriented programming.

The three main layers include:

  • Presentation Layer
  • Business Layer

Now, these three layers are typically related to enterprise web applications. It's a design pattern used to help separate your code out in three distinct areas that (if need be) can easily be switched out with another programming language or technology.

So if you keep all of your presentation layer code in one area of your application, switching presentation layer technologies shouldn't be too difficult.

Same rules apply to the business and data layers. If you separated your code out properly, switching databases shouldn't be too big of an issue.

Having said that, we'll be focusing on the presentation layer.

The four big players (in terms of technology) in the presentation layer are as follows:

Let’s dive into the overviews of each of these big players, shall we?

HTML (HyperText Markup Language) is a technology used to communicate with web browsers. All browsers follow the rules laid out in HTML (currently in its 5th iteration).

HTML defines a bunch of different HTML elements known as tags that are put together to make up the basic layout of a web page. These tags are used to define things like the title of the webpage (which appears in the tab of your browser), the actual text that appears on the page, images, buttons and more.

Thankfully HTML isn’t too tough to learn as it’s more of a game of memorizing the most popular tags and using them to create your simple web pages. HTML is not a programming language, as it doesn’t define variables, data types, control structure or the like. This is also what makes it fairly easy to learn.

We’ll be diving into examples of HTML “code” later, so stay tuned.

CSS (cascading style sheets) is used to add some “pizazz” to your web pages. CSS is used to add a design look and feel to your web pages through the use of its cascading rules. We won’t get into the exact rules that CSS uses to apply its designs just yet, but again, stay tuned for a more in depth explanation.

All you need to know is that CSS is used to make a web page look nice. You can use it to choose which parts of the web page should be which color, how big or small elements should be, what fonts should be used and more.

If you’ve ever landed on a web page that wasn’t able to properly load its CSS, you’d likely think that the website was completely broken. It is often fixed by forcing the page to reload and then the CSS usually gets picked up the second time and everything loads properly and the website goes back to looking great. This situation is quite rare, but I thought I’d mention it because it’s a great example of just how powerful CSS is.

JavaScript is used to make your web pages interactive. It allows you to put some real programming functionality into web pages (as HTML is not a programming language and thus cannot add real programming elements to a page).

Examples of what JavaScript can do is when you’re logging into an application and you forget to provide information in one of the fields. JavaScript can detect that you’ve forgotten to type in your username or password and can provide you with a prompt explaining that you need to fill in your username and password before you can continue.

JavaScript shouldn’t be confused with Java, as they are two different technologies. Java is part of the business layer and has no place in the presentation layer. Java is known as a server side language, as it exists and runs on servers. JavaScript is known as a client side technology, and thus lives where the “clients” are, which is inside the actual web browsers.

A good way to think of the difference between the two languages is that when you land on a web page and it loads in your browser, it will also load any JavaScript code inside the page and you’ll actually be able to access that code and read it. Whereas, you’d never be able to read the Java code, as it’s not loaded in your browser because it’s a server side technology.

That simple distinction between the two languages makes for two very different languages in terms of their use and functionality.

The syntax for JavaScript, however, is fairly similar to Java. This is nice since you’ll be able to look at a piece of JavaScript code and more or less understand what’s going on. So you should be able to pick up the JavaScript language a lot quicker if you already have a good command of the Java language.

JQuery is a technology that’s used in tandem with JavaScript. JQuery makes your life as a web programmer so much easier for one reason, it allows you to write code once and have it work across all the browsers.

In today’s world we have so many browsers that can be downloaded for free and used to peruse the web. This actually makes building websites a bit challenging, as every browser has made up their own minds on how to “render” an HTML web page.

This means that a webpage loaded on Safari might not look the same as if it’s loaded on Internet Explorer, or Firefox, or Chrome.

These inconsistencies drive web programmers crazy, so that’s why jQuery was introduced. It allows you to write your JavaScript in a sort of “browser agnostic” way. You can write it once, and jQuery will execute the code appropriately depending on which browser it’s loaded it. VERY COOL!

The best part of all of these technologies is that they are all free to use.

And thankfully, they are also free to learn via these tutorials!

Do you want to get a job as a full-stack developer?  Consider joining our Online Web Developer Bootcamp.

Free Java Roadmap

Discover exactly what you need to learn and where to start in order to become a professional coder.

Coders Campus

Launch your coding career..

© 2021 • Crafty Codr Inc • Terms • Privacy

151 Lyndhurst Drive, Kitchener, Ontario N2B 1B7 Canada

  • Skip to main content
  • Skip to search
  • Skip to select language
  • Sign up for free
  • English (US)

Presentation API

Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers .

Experimental: This is an experimental technology Check the Browser compatibility table carefully before using this in production.

The Presentation API lets a user agent (such as a Web browser) effectively display web content through large presentation devices such as projectors and network-connected televisions. Supported types of multimedia devices include both displays which are wired using HDMI, DVI, or the like, or wireless, using DLNA , Chromecast , AirPlay , or Miracast .

1-UA mode loaded the Controlling and Presenting pages together before outputting to displays. 2-UA mode loaded them separately using the Presentation Control Protocol.

In general, a web page uses the Presentation Controller API to specify the web content to be rendered on presentation device and initiate the presentation session. With Presentation Receiver API, the presenting web content obtains the session status. With providing both the controller page and the receiver one with a messaged-based channel, a Web developer can implement the interaction between these two pages.

Depending on the connection mechanism provided by the presentation device, any controller- and receiver page can be rendered by the same user agent, or by separated user agents.

  • For 1-UA mode devices, both pages are loaded by the same user agent. However, rendering result of the receiver page will be sent to the presentation device via supported remote rendering protocol.
  • For 2-UAs mode device, the receiver page is loaded directly on the presentation device. Controlling user agent communicates with presentation device via supported presentation control protocol, to control the presentation session and to transmit the message between two pages.

In controlling browsing context, the Presentation interface provides a mechanism to override the browser default behavior of launching presentation to external screen. In receiving browsing context, Presentation interface provides the access to the available presentation connections.

Initiates or reconnects to a presentation made by a controlling browsing context.

A PresentationAvailability object is associated with available presentation displays and represents the presentation display availability for a presentation request.

The PresentationConnectionAvailableEvent is fired on a PresentationRequest when a connection associated with the object is created.

Each presentation connection is represented by a PresentationConnection object.

A PresentationConnectionCloseEvent is fired when a presentation connection enters a closed state.

The PresentationReceiver allows a receiving browsing context to access the controlling browsing contexts and communicate with them.

PresentationConnectionList represents the collection of non-terminated presentation connections. It is also a monitor for the event of new available presentation connection.

Example codes below highlight the usage of main features of the Presentation API: controller.html implements the controller and presentation.html implements the presentation. Both pages are served from the domain https://example.org ( https://example.org/controller.html and https://example.org/presentation.html ). These examples assume that the controlling page is managing one presentation at a time. Please refer to the comments in the code examples for further details.

Monitor availability of presentation displays

In controller.html :

Starting a new presentation

Reconnect to a presentation.

In the controller.html file:

Presentation initiation by the controlling UA

Setting presentation.defaultRequest allows the page to specify the PresentationRequest to use when the controlling UA initiates a presentation.

Monitor connection's state and exchange data

Monitor available connection(s) and say hello.

In presentation.html :

Passing locale information with a message

In the presentation.html file:


Browser compatibility.

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Presentation API polyfill contains a JavaScript polyfill of the Presentation API specification under standardization within the Second Screen Working Group at W3C. The polyfill is mostly intended for exploring how the Presentation API may be implemented on top of different presentation mechanisms.


  1. How Web Works

    web presentation layer

  2. Best Web App Architectures: Components, Layers, and Types

    web presentation layer

  3. Where to Use Tiers and Layers Graphics in a Presentation

    web presentation layer

  4. Multi Layered Architecture Of Web Application

    web presentation layer

  5. What is presentation layer?

    web presentation layer

  6. architecture

    web presentation layer


  1. Application layer Presentation layer

  2. Lec- 7 Application Layer

  3. presentation layer in computer network discuss

  4. Session, Presentation & Application Layer

  5. New Stream Webpart in SharePoint Pages

  6. Presentation Layer in Computer Network


  1. Presentation Layer in OSI model

    Introduction : Presentation Layer is the 6th layer in the Open System Interconnection (OSI) model. This layer is also known as Translation layer, as this layer serves as a data translator for the network. ... SSL encrypts the link between a web server and a browser, which ensures that all data passed between them remains private and free from ...

  2. What is presentation layer?

    The tool that manages Hypertext Transfer Protocol is an example of a program that loosely adheres to the presentation layer of OSI.Although it's technically considered an application-layer protocol per the TCP/IP model, 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 ...

  3. What Is Three-Tier Architecture?

    The presentation tier is the user interface and communication layer of the application, where the end user interacts with the application. Its main purpose is to display information to and collect information from the user. This top-level tier can run on a web browser, as desktop application, or a graphical user interface (GUI), for example.

  4. Presentation layer

    The presentation layer ensures the information that the application layer of one system sends out is readable by the application layer of another system. On the sending system it is responsible for conversion to standard, transmittable formats. [7] On the receiving system it is responsible for the translation, formatting, and delivery of ...

  5. Web Application Architecture: How the Web Works

    Web application architecture following the three-tier pattern. Presentation layer The presentation layer is accessible to users via a browser and consists of user interface components and UI process components that support interaction with the system. It's developed using three core technologies: HTML, CSS, and JavaScript.

  6. Web Application Architecture [Complete Guide & Diagrams]

    Modern web application architecture is typically implemented with a 3-tier structure: Presentation layer: This is the user interface of the web application.It is responsible for the visual aspects ...

  7. Modern Web Application Architecture: Types, Components, Layers

    The presentation layer manages the app user interface, dealing with HTML, CSS, and JavaScript. It also receives user input and sends it to the business layer for processing, interacting through APIs or interfaces. The presentation layer typically includes web components such as controllers, views, and templates.

  8. Presentation Layer

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

  9. Web Application Architecture: Diagram and 8 Best Practices to Follow

    #1 Presentation Layer (PL) This layer is responsible for the user interface of a web application. It deals with displaying information, collecting data, and determining user interactions. The presentation layer is typically built with HTML, CSS, and JavaScript, which handle the layout, styling, and interactivity of the user interface.

  10. Chapter 10

    The presentation layer contains the components that implement and display the user interface and manage user interaction. This layer includes controls for user input and display, in addition to components that organize user interaction. Figure 1 shows how the presentation layer fits into a common application architecture.

  11. From Data to Display: A Deep Dive into the Web Presentation Layer

    The Web Presentation Layer, also known as the user interface layer, is the web application layer responsible for presenting data and interacting with users. The Model-View-Controller (MVC) pattern ...

  12. The 7 OSI Networking Layers Explained

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

  13. How to Design a Web Application Architecture: Components ...

    Two-tier architecture splits the presentation layer, which is a client-side, and a web app database architecture. Thus, we can divide it into two parts - client app (client tier) and data app (data tier). The client tier includes the presentation and web application architecture layers, while the server-side includes the database layer.

  14. A Guide to the Presentation Layer

    The presentation layer is the sixth layer in the OSI model. Known as a translator, the presentation layer converts data into an accurate, well-defined, standard format after it receives it from the application layer. The converted format varies, however, based on the type of data received. Some formats include:

  15. Presentation Layer of the OSI Model

    The presentation layer is a very important layer because it handles encryption, decryption, and the conversion of complex data into flat-byte strings, a format that is easily transmittable. The ...

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

  17. Best Web App Architectures: Components, Layers, and Types

    Web application architecture layers. There are four common layers of a web application architecture: Presentation layer (PL) Business logic layer (BLL) Data service layer (DSL) Data access layer (DAL) The presentation layer is what a user sees and interacts with. This is essentially the client side of an app.

  18. The OSI Model

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

  19. Web Application Architecture: Types, Components, Layers, Modules

    There are commonly four layers of the web applications- presentation layer abbreviated as PL, data service layer abbreviated as DSL, business logic layer abbreviated as BLL, and the data access layer added as DAL. The presentation layer is the one that displays a user interface and always makes the user interaction more straightforward and also ...

  20. What is the Presentation Layer in Programming?

    The presentation layer is one of the three main layers in object-oriented programming. The three main layers include: Presentation Layer. Business Layer. Data Layer. Now, these three layers are typically related to enterprise web applications. It's a design pattern used to help separate your code out in three distinct areas that (if need be ...

  21. Presentation API

    The Presentation API lets a user agent (such as a Web browser) effectively display web content through large presentation devices such as projectors and network-connected televisions. Supported types of multimedia devices include both displays which are wired using HDMI, DVI, or the like, or wireless, using DLNA, Chromecast, AirPlay, or Miracast.. In general, a web page uses the Presentation ...

  22. New Presentation Layer for Webapplication

    But now we eventually want to exchange the existing web-presentation layer (maybe also rich client) to a server side presentation layer. What do you think I should look first (ASP.Net MVC, Silverlight, something in PHP). With which technology is the effort relativly small to exchange the presentation layer if you only have a model.

  23. Onion Architecture -Separate Web/Endpoint and presentation layer

    In onion architecture we may have the following projects: Presentation. Application. Domain. Infrastructure. Cross-cutting edge. You may ask why the Presentation layer and Web/Api are separated ...