SAP Application Server Flow
1. The User Submits the Request using SAP GUI
• The user submits the request using Application Server Host Name and Instance
Number (Port).
• The Port Number is derived from a two-digit Instance Number where the SAP
Application Server is installed.
• These two digits are appended (suffixed) to SAP Standard Port Numbers.
• Instance (Application Server) Number ranges from 00-99:
o 97 - Diagnostic Agent
o 98 - Solution Manager Diagnostic (SMD)
o 99 – SAP Router (Reserved by SAP)
• Host Names and Ports are resolved from /etc/hosts and /etc/services.
• Most companies use DNS Servers for hostname and service resolution.
DIAG (TCP/IP) - Dynamic Information Action Gateway
• SAP-specific protocol for communication with Application Servers using SAP GUI.
• Port Numbers are displayed in /etc/services.
• Ensure Port Numbers are not blocked at Firewalls, Routers, etc. (3200-3299, 3300-
3399, 3600-3699).
2. The User Submits the Request using a Supported Browser
• Supported Browsers: IE, Mozilla, Chrome, Firefox, Safari
• System access via:
o SAP GUI for HTML
o NetWeaver Business Client (NWBC)
o Business Client 6.0/7.0
o Fiori Launchpad (FLP)
• Hostname should be Fully Qualified, derived from icm/host_name_full.
• Port Number defined by:
o icm/server_port_0=PROT=HTTP,PORT=8000
o icm/server_port_1=PROT=HTTPS,PORT=44300
• Parameters maintained using Transaction RZ10.
• Hostname derived from:
o SAPHOSTNAME, SAPFQDN, SAPHOSTNAMEFULL
• From SAP Kernel 7.81, maintain the table HTTPURLLOC for external hostname
resolution.
• Instance restart required for one-time configuration changes.
• Details obtained from SMICM → Menu Go to → Services.
3. Classic GUI (Windows, Java) Requests
• Received by the ABAP Dispatcher and placed in the wait queue.
4. Web Requests (Sent by Browsers)
• Received by Web Dispatcher (if configured) or Internet Communication Manager
(ICM).
• Status checked using Transaction SMICM.
• Users displayed using Transaction SM04:
o PLUG - in HTTP (HTTP or HTTPS)
o GUI (Classic WIN/JAVA)
o RFC (Users from other instances)
o BATCH (Background Mode users)
5. SAP ABAP Dispatcher
• Maintains Work Processes and monitors Load Balancing.
• Allocates free processes using FIFO (First-In-First-Out).
6. Work Process Rolls-in the User Request into WP Task Handler
• During First-Time Login, Roll-in is not required.
7. Work Process Contains Inbuilt Task Handlers
• Interprets user requests.
8. Screen Handler
• Interprets screen-related requests.
9. ABAP Handler
• Interprets ABAP programming language requests.
10. SQL Handler
• Interprets SQL commands in user requests.
11. R3 Buffer Usage
• Stores frequently used content based on:
o Technical Settings in SE13
o Parameters in RZ10
• If data is found in the R3 Buffer, it is sent directly to the user.
• SAP uses Open SQL, independent of all databases.
• Monitored using Transaction ST02.
12. If the Response is Not Available in R3 Buffer
• The request goes to the Database using DB-Specific Client and SAP Kernel.
• Open SQL is converted into Native SQL while connecting to the database.
Database Connection Requires:
Database Port Range Protocol Query Language
Oracle 1521-1529 Net8 PL/SQL
SQL Server 1433 Named Pipes T-SQL
IBM DB2 5912 TCP/IP SQL/PL
Sybase (ASE) 4901 TCP/IP T-SQL
MAXDB 7210 TCP/IP SQLDBC
HANADB 3nn15 TCP/IP SQLSCRIPT
• SAP Work Processes communicate using DB Client & OS/DB Specific Kernel.
13. Database Provides the Response to SAP Work Process
• Response undergoes necessary interpretations.
14. SAP Work Process Checks for Buffering Eligibility
• If eligible, a copy is stored in R3 Buffer for future requests.
• R3 Buffers are shared by all users logged into the Application Server.
15. Work Process Rolls Out User-Related Information into User Context
User Context:
• Small memory area storing user-specific data.
• Includes authorizations, parameters, attributes.
• Lost when the user logs out.
• Unique for each user.
R3 Buffer:
• Built during Application Server startup.
• Lost when the Application Server stops.
16. The Response is Sent to the User
Roll-in Process:
• User context copied into WP Task Handler.
• Not applicable during first-time login.
Roll-out Process:
• User-specific data copied into User Context before sending the response.