What Is an Application Layer?

The application layer is also called the application entity (AE), and it consists of several specific application service elements (SASE) and one or more common application service elements (CASE). Each SASE provides specific application services, such as file transport access and management (FTAM), electronic text processing (MHS), virtual terminal protocol (VAP), and so on. CASE provides a common set of application services, such as contact control service element (ACSE), reliable transport service element (RTSE), and remote operation service element (ROSE).

The application layer is also called the application entity (AE), and it consists of several specific application service elements (SASE) and one or more common application service elements (CASE). Each SASE provides specific application services, such as file transport access and management (FTAM), electronic text processing (MHS), virtual terminal protocol (VAP), and so on. CASE provides a common set of application services, such as contact control service element (ACSE), reliable transport service element (RTSE), and remote operation service element (ROSE).
Chinese name
Application layer
Foreign name
Application layer
Other titles
Application entity (AE)
Definition
Is the seventh layer of the seven-layer OSI model
Features
Standards are the most immature
Examples of protocols
DNS, HTTP, etc.

Basic introduction to the application layer

The Open Systems Interconnection reference (OSI) reference model is an abstract, layered model.
OSI seven-layer network reference model:
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
TCP / IP protocol model:
Application Layer;
Transport Layer;
Internet layer / network layer;
Network Access Layer
Application Layer: This layer provides an interface for applications used for communication and the underlying network used for message transmission. [1]
Network applications are the reason for the existence of computer networks, and the application layer is where the application layer protocols exist and the network applications are implemented.
The application layer is the seventh layer of the seven-layer OSI model. The application layer directly interfaces with application programs and provides common network application services. The application layer also makes requests to the presentation layer.
Application layer
The application layer is the highest layer of the open system and directly provides services for application processes. Its role is to achieve multiple system application processes communicate with each other while completing a series of services required for business processing. Its service elements are divided into two categories: the common application service element CASE and the specific application service element SASE.
CASE provides the most basic services. It becomes the user of any user and any service element in the application layer. It mainly provides basic control mechanisms for application process communication and distributed system implementation. Specific services SASE must meet some specific services, such as file transfer. , Access management, job transfer, banking, order entry, etc. These will involve virtual terminals, job transfer and operation, file transfer and access management, remote database access, graphics core systems, open system interconnection management, and more. [2]
Application layer software
1. Network-aware applications:
An application is a software program that people use to communicate on the network. Some end-user applications are network-aware programs, that is, they implement application-layer protocols and communicate directly with lower layers of the protocol stack. Email clients and Web browsers are examples of this type of application.
2. Application layer services [1]
How to implement a web application
1. Choose a suitable network application architecture;
2. Determine the client process and server process based on the selected network application architecture;
3. Determine the port numbers of the client and server processes;
4. Determine the IP addresses of the client process and the server process;
5. Select a suitable application layer protocol;
6. Consider the services needed for network applications. [3]

Application layer features

The concepts and protocols belonging to applications have developed rapidly and are widely used, which has brought complexity and difficulty to the standardization of application functions. Compared with other layers, the application layer requires the most standards, but it is also the least mature one. However, with the development of the application layer, various specific application services have increased, and a lot of research work has been carried out on the standardization of application services. ISO has formulated some International Standards (IS) and Draft International Standards (DIS). Therefore, by introducing some universal protocol standards, the main functions and characteristics of the application layer are described.
It mainly provides the interface between applications on any end of the network .

Application layer transport access and management

File transport and remote file access are the two most common applications of any computer network. The technology used for file transport and remote access is similar. It can be assumed that the files are located on the file server machine, and the user is on the customer machine and wants to read, write, and transport them in whole or in part. It supports most modern file servers The key technology is virtual file storage, which is an abstract file server. Virtual file storage provides customers with a standardized interface and a set of executable standardized operations. The different internal interfaces of the actual file server are hidden, so that customers only see the standard interface of virtual file storage, and applications that access and transport remote files may not need to know all the details of various incompatible file servers.

Application-level email

The realization of e-mail on computer networks started a revolution in the way people communicate. The attractiveness of e-mail is that it is as fast as a telephone, does not require both parties to be present at the same time, and leaves a written copy of the text for processing or multiple delivery.
Although email is considered to be a special case of file shipping, it has some special properties that are not common to all file shipping. Because the e-mail system needs to consider a complete human-machine interface, such as the interface for writing, editing, and reading e-mail, and secondly, it provides a postal management function required to transport mail, such as managing mailing lists and submitting notifications. In addition, another difference between e-mail and general document transportation is that e-mail messages are the most highly structured text. In many systems, in addition to its content, each text message also has a large number of additional information fields. These information fields include the sender's name and address, the recipient's name and address, the date and time of posting, and the list of people receiving the duplicate copy. , Expiration date, importance level, security permissions, and many other additional information.
ISO mark
In 1984, CCITT developed X. 400 proposed series of agreements. ISO tries to incorporate them into the application layer of OSI and is called MOTIS (Forwarding System for Telecommunications). Since X. Without the 400 structure, this absorption is not very simple. In 1988, X.400 was modified to try to meet with MOTIS. In this chapter we will introduce MHS.

Application layer virtual terminal

For various reasons, it can be said that the standardization of the terminal has completely failed. The OSI method to solve this problem is to define a virtual terminal, which is actually just an abstract data structure that represents the abstract state of the actual terminal. This abstract data structure can be operated by both the keyboard and the computer, and reflects the current state of the data structure on the display. The computer can query the abstract data structure and can change the abstract data structure so that output appears on the screen.

Other functions at the application layer

Other applications have been or are being standardized. Here, we will introduce directory services, remote job entry, graphics and information communication.
(1) Directory service: It is similar to an electronic phone book and provides a method for finding people or finding available service addresses on the network.
(2) Remote job entry: Allow users who work on one computer to submit jobs to another computer for execution.
(3) Graphics: It has the function of sending and displaying engineering drawings in remote places.
(4) Information communication: Public information service for home or office. For example, smart user telegrams, TV graphics and so on.
Contact control service element] ACSE and up] [2] sup] Commit, concurrent and resume CCR b]
With the development of the application layer, various specific application services have increased. At the beginning, most of the application layer services defined in ISO7498 had been
Division into the common application service element (CASE), and many applications have a common part of the data, almost
All of these applications need to manage connections. To avoid having to start over from scratch for every new application, ISO decided to
Some public parts are standardized. The two most important ones are described below.
(1) Contact control service element ACSE
The contact control service element provides the functions of application connection establishment and normal or abnormal release.
The so-called connection refers to the connection between two application entities; the connection control service element is a basic core subset of the application layer
. The following ACSE primitives are proposed:
1) A-ASSOCIATE establishes a connection
2) A-RELEASE releases a connection
3) A-ABORT user-initiated death
4) A-P-ABORT provider-initiated death
Each ACSE primitive has a mapping relationship with the corresponding presentation layer service primitive, that is, application connection and presentation connection
It is established and released at the same time.
(2) Commitment, Concurrency and Recovery (CCR)
The main purpose of CCR is to coordinate several (interrelated) application links, and to provide information for basic multi-application links.
Management tasks provide a safe and efficient environment. Almost all applications that require reliable operation use CCR.
In the CCR model, data is divided into two categories: security data and conventional data. The so-called security data are those that can withstand the application.
Data that failed, and can be re-referenced after the application contact returned to normal. Security data is usually stored outside
External storage media. In order to ensure the integrity and reliability of security data, it is modified using some specific rules.
For example, specific blocking mechanisms. The so-called conventional data are those that have not been stored in reliable storage during the application contact work
Area data. For example in a buffer or work stack. This data will no longer be available when the app connection is broken.

Examples of application layer protocols

DNS Application-level DNS

DNS was first invented by Paul Mockapetris in 1983; the original technical specifications were published in the Draft Internet Standard No. 882 (RFC 882). Drafts 1034 and 1035, issued in 1987, amended DNS technical specifications and repealed previous drafts 882 and 883. Subsequent changes to the draft Internet standard did not involve changes to the DNS technical specifications.
Early domain names must end with a period "." So that DNS can resolve domain names. Now DNS servers can automatically complete the ending period.
Currently, the limit on domain name length is 63 characters, including www. And .com or other extensions. Domain names are also limited to a subset of ASCII characters, which prevents many other languages from correctly representing their names and words. The IDNA system based on Punycode can map Unicode strings to a valid DNS character set, which has been verified and adopted by some registration agencies as a workaround.

HTTP Application layer HTTP

The development of HTTP is the result of the cooperation between the World Wide Web Consortium and the Internet Engineering Task Force, and (they) finally released a series of RFCs, the most famous of which is RFC 2616. RFC 2616 defines a widely used version of the HTTP protocol-HTTP 1.1.
HTTP is a standard for client and server requests and responses (TCP). The client is the end user and the server is the website. By using a web browser, web crawler, or other tool, the client initiates an HTTP request to a specified port on the server (the default port is 80). (We call this client) tune the user agent. The responding server stores (some) resources, such as HTML files and images. (We call it) this answer server is the origin server. There may be multiple middle tiers between the user agent and the source server, such as a proxy, gateway, or tunnel. Although the TCP / IP protocol is the most popular application on the Internet, the HTTP protocol does not stipulate that it must be used and (based on) the layers it supports. In fact, HTTP can be implemented on any other Internet protocol, or on other networks. HTTP only assumes (provided by its underlying protocols) reliable transmission, and any protocol that can provide this guarantee can be used by it.
e-mail
Usually, a request is initiated by an HTTP client to establish a TCP connection to a specified port of the server (the default is port 80). The HTTP server listens for requests from clients on that port. Once the request is received, the server sends back a status line (to the client), such as "HTTP / 1.1 200 OK", and (response) messages. The body of the message may be the requested file, an error message, or some other information. .
The reason HTTP uses TCP instead of UDP is because (opening a web page) has to transmit a lot of data, and the TCP protocol provides transmission control, organizes data in order, and error correction. For details, please refer to 'Differences between TCP and UDP'.
Resources requested through the HTTP or HTTPS protocol are identified by Uniform Resource Identifiers (or, more accurately, URIs).

FTP Application layer FTP

The FTP service generally runs on two ports, 20 and 21. Port 20 is used to transmit the data stream between the client and server, while port 21 is used to transmit the control flow, and is the entrance of the command to the ftp server. When data is transmitted through the data stream, the control stream is idle. When the control flow is idle for a long time, the client's firewall will set its session to timeout. This will cause some problems when a large amount of data passes through the firewall. At this time, although the file can be successfully transmitted, it will be disconnected by the firewall because of the control session; the transmission will generate some errors.
Goals achieved by FTP:
Promote file sharing (computer programs or data) Encourage indirect or implicit use of remote computers to shield users from the details of various file systems in different hosts Reliable and efficient transfer of data
Passwords and file contents are transmitted in clear text, which can lead to unwanted eavesdropping. Because a random port must be opened to establish a connection, it is difficult for a client to filter FTP traffic in active mode when a firewall is present. This problem is largely solved by using passive mode FTP. The server may be told to connect to a reserved port on a third-party computer. This method is not effective when small files with a large number of files need to be transferred. Although FTP can be used directly by end users, it is designed to be controlled by an FTP client program.
Many sites running the FTP service are open to anonymous services. Under this setting, users do not need an account to log in to the server. By default, the anonymous user's username is: "anonymous". This account does not require a password. Although the user's email address is usually required as the authentication password, this is just some details or this email address is not determined at all, but depends on the configuration of the FTP server.
Application layer protocols provide rules for communication between applications. To ensure smooth communication, the application layer protocols implemented on the source and destination hosts must be consistent.
Application layer protocol functions:
l define the process for both communicating parties;
l define the message type;
l define the syntax of the message;
define the meaning of any informational field;
l Define how messages are sent and expected responses;
Define the interaction with the next layer. [1]

IN OTHER LANGUAGES

Was this article helpful? Thanks for the feedback Thanks for the feedback

How can we help? How can we help?