Presentation layer
Encyclopedia
The presentation layer is layer 6 of the seven-layer OSI model
OSI model
The Open Systems Interconnection model is a product of the Open Systems Interconnection effort at the International Organization for Standardization. It is a prescription of characterizing and standardizing the functions of a communications system in terms of abstraction layers. Similar...

 of computer network
Computer network
A computer network, often simply referred to as a network, is a collection of hardware components and computers interconnected by communication channels that allow sharing of resources and information....

ing and serves as the data translator for the network
Computer network
A computer network, often simply referred to as a network, is a collection of hardware components and computers interconnected by communication channels that allow sharing of resources and information....

. It is sometimes called the syntax layer.

Description

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
Data
The term data refers to qualitative or quantitative attributes of a variable or set of variables. Data are typically the results of measurements and can be the basis of graphs, images, or observations of a set of variables. Data are often viewed as the lowest level of abstraction from which...

 representation within the end-user
User (computing)
A user is an agent, either a human agent or software agent, who uses a computer or network service. A user often has a user account and is identified by a username , screen name , nickname , or handle, which is derived from the identical Citizen's Band radio term.Users are...

 systems. An example of a presentation service would be the conversion of an EBCDIC
EBCDIC
Extended Binary Coded Decimal Interchange Code is an 8-bit character encoding used mainly on IBM mainframe and IBM midrange computer operating systems....

-coded text computer file
Computer file
A computer file is a block of arbitrary information, or resource for storing information, which is available to a computer program and is usually based on some kind of durable storage. A file is durable in the sense that it remains available for programs to use after the current program has finished...

 to an ASCII
ASCII
The American Standard Code for Information Interchange is a character-encoding scheme based on the ordering of the English alphabet. ASCII codes represent text in computers, communications equipment, and other devices that use text...

-coded file.

The presentation layer is the lowest layer at which application programmers consider data structure
Data structure
In computer science, a data structure is a particular way of storing and organizing data in a computer so that it can be used efficiently.Different kinds of data structures are suited to different kinds of applications, and some are highly specialized to specific tasks...

 and presentation, instead of simply sending data in form of datagrams or packets between hosts. This layer deals with issues of string representation - whether they use the Pascal
Pascal (programming language)
Pascal is an influential imperative and procedural programming language, designed in 1968/9 and published in 1970 by Niklaus Wirth as a small and efficient language intended to encourage good programming practices using structured programming and data structuring.A derivative known as Object Pascal...

 method (an integer length field followed by the specified amount of bytes) or the C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

/C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...

 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
Serialization
In computer science, in the context of data storage and transmission, serialization is the process of converting a data structure or object state into a format that can be stored and "resurrected" later in the same or another computer environment...

 of complex data structures into flat byte-strings (using mechanisms such as TLV
Type-length-value
Within data communication protocols, optional information may be encoded as a type-length-value or TLV element inside of the protocol. TLV is also known as tag-length value....

 or XML
XML
Extensible Markup Language is a set of rules for encoding documents in machine-readable form. It is defined in the XML 1.0 Specification produced by the W3C, and several other related specifications, all gratis open standards....

) can be thought of as the key functionality of the presentation layer.

Encryption
Encryption
In cryptography, encryption is the process of transforming information using an algorithm to make it unreadable to anyone except those possessing special knowledge, usually referred to as a key. The result of the process is encrypted information...

 is typically done at this level too, although it can be done on the application
Application layer
The Internet protocol suite and the Open Systems Interconnection model of computer networking each specify a group of protocols and methods identified by the name application layer....

, session
Session layer
The session layer is layer 5 of the seven-layer OSI model of computer networking.The session layer provides the mechanism for opening, closing and managing a session between end-user application processes, i.e., a semi-permanent dialogue. Communication sessions consist of requests and responses...

, transport, or network layer
Network layer
The network layer is layer 3 of the seven-layer OSI model of computer networking.The network layer is responsible for packet forwarding including routing through intermediate routers, whereas the data link layer is responsible for media access control, flow control and error checking.The network...

s, each having its own advantages and disadvantages. Decryption is also handled at the presentation layer. For example, when logging off bank account sites the presentation layer will decrypt the data as it is received. Another example is representing structure, which is normally standardized at this level, often by using XML
XML
Extensible Markup Language is a set of rules for encoding documents in machine-readable form. It is defined in the XML 1.0 Specification produced by the W3C, and several other related specifications, all gratis open standards....

. 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
Object-oriented programming
Object-oriented programming is a programming paradigm using "objects" – data structures consisting of data fields and methods together with their interactions – to design applications and computer programs. Programming techniques may include features such as data abstraction,...

, and the exact way that streaming video
Video
Video is the technology of electronically capturing, recording, processing, storing, transmitting, and reconstructing a sequence of still images representing scenes in motion.- History :...

 is transmitted.

In many widely used applications and protocols, no distinction is made between the presentation and application layers. For example, HyperText Transfer Protocol
Hypertext Transfer Protocol
The Hypertext Transfer Protocol is a networking protocol for distributed, collaborative, hypermedia information systems. HTTP is the foundation of data communication for the World Wide Web....

 (HTTP), generally regarded as an application-layer protocol, has presentation-layer aspects such as the ability to identify character encoding
Character encoding
A character encoding system consists of a code that pairs each character from a given repertoire with something else, such as a sequence of natural numbers, octets or electrical pulses, in order to facilitate the transmission of data through telecommunication networks or storage of text in...

 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.

Services

  • Data conversion
    Data conversion
    Data conversion is the conversion of computer data from one format to another. Throughout a computer environment, data is encoded in a variety of ways. For example, computer hardware is built on the basis of certain standards, which requires that data contains, for example, parity bit checks....

  • Character code translation
  • Compression
    Data compression
    In computer science and information theory, data compression, source coding or bit-rate reduction is the process of encoding information using fewer bits than the original representation would use....

  • Encryption and Decryption
    Encryption
    In cryptography, encryption is the process of transforming information using an algorithm to make it unreadable to anyone except those possessing special knowledge, usually referred to as a key. The result of the process is encrypted information...


Sublayers

The presentation layer can be composed of two sublayers: common application service element (CASE) and specific application service element (SASE).

CASE

The common application service element sublayer provides services for the application layer and request services from the session layer.
It provides support for common application services, such as:
  • ACSE
    ACSE
    Association Control Service Element is the OSI method for establishing a call between two application programs. ACSE checks the identities and contexts of the application entities, and could apply an authentication security check....

     (Association Control Service Element)
  • ROSE (Remote Operation Service Element)
  • CCR (Commitment Concurrency and Recovery)
  • RTSE (Reliable Transfer Service Element)

SASE

The specific application service element sublayer provides application specific services (protocols), such as
  • FTAM (File Transfer, Access and Manager)
  • VT (Virtual Terminal)
  • MOTIS (Message Oriented Text Interchange Standard)
  • CMIP (Common Management Information Protocol)
  • JTM (Job Transfer and Manipulation) a former OSI standard
  • MMS (Manufacturing Messaging Service)
  • RDA (Remote Database Access)
  • DTP (Distributed Transaction Processing)

Protocols

Other protocols sometimes considered at this level (though perhaps not strictly adhering to the ISO model) include:
  • Apple Filing Protocol
    Apple Filing Protocol
    The Apple Filing Protocol is a network protocol that offers file services for Mac OS X and original Mac OS. In Mac OS X, AFP is one of several file services supported including Server Message Block , Network File System , File Transfer Protocol , and WebDAV...

     (AFP)
  • Independent Computing Architecture
    Independent Computing Architecture
    Independent Computing Architecture is a proprietary protocol for an application server system, designed by Citrix Systems. The protocol lays down a specification for passing data between server and clients, but is not bound to any one platform....

     (ICA), the Citrix system core protocol
  • Lightweight Presentation Protocol
    Lightweight Presentation Protocol
    Provides ISO presentation services on top of TCP/IP based protocol stacks. It is defined in RFC 1085.Source: IETF RFC 1085....

     (LPP)
  • NetWare Core Protocol
    NetWare Core Protocol
    The NetWare Core Protocol is a network protocol used in some products from Novell, Inc. It is usually associated with the NetWare operating system, but parts of it have been implemented on other platforms such as Linux, Windows NT and various flavors of Unix.It is used to access file, print,...

     (NCP)
  • Network Data Representation
    Network Data Representation
    Network Data Representation is an implementation of the presentation layer in the OSI model....

     (NDR)
  • Telnet
    TELNET
    Telnet is a network protocol used on the Internet or local area networks to provide a bidirectional interactive text-oriented communications facility using a virtual terminal connection...

     (a remote terminal access protocol)
  • eXternal Data Representation
    External Data Representation
    External Data Representation is a standard data serialization format, for uses such as computer network protocols. It allows data to be transferred between different kinds of computer systems. Converting from the local representation to XDR is called encoding. Converting from XDR to the local...

     (XDR)
  • X.25 Packet Assembler/Disassembler Protocol
    X.25
    X.25 is an ITU-T standard protocol suite for packet switched wide area network communication. An X.25 WAN consists of packet-switching exchange nodes as the networking hardware, and leased lines, Plain old telephone service connections or ISDN connections as physical links...

    (PAD)
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK