Presentation LayerPresentation Layer
The presentation layer is the sixth level of
the seven layer OSI model.
It responds to service requests from the
application layer and issues service
requests to the session layer.
Concerned with syntax and semantics of
the information exchanged between two
systems.
Presentation LayerPresentation Layer
Data Data
From application layer To application layer
From session layer
To session layer
Presentation layer Presentation layer
Presentation FormatPresentation Format
In the case of the sender and receiver
seeing the same data, the issue is one of
agreeing to a message format, called a
presentation format.
The presentation layer may represent
(encode) the data in various ways (e.g.,
data compression, or encryption), but the
receiving peer will convert the encoding
back into its original meaning (decode).
Encoding/DecodingEncoding/Decoding
The sending program translates the data
it wants to transmit from the
representation it uses internally into a
message that can be transmitted over the
network
the data is
→
encoded in a message.
On the receiving side, the application
translates this arriving message into a
representation it can process
the message is
→
decoded.
Presentation formattingPresentation formatting
Application
data
Presentation
encoding
Application
data
Presentation
decoding
Message Message Message
■ ■ ■
Presentation formatting involves encoding and decoding application data.
Presentation LayerPresentation Layer
Specific responsibilities of presentation
layer:
Data Representation
Data Compression
Encryption
DATA DATA
REPRESENTATIONREPRESENTATION
Data RepresentationData Representation
Different computers have different
representations for characters.
If two dissimilar computers are to exchange
text, say e-mail, they must agree on the
representation to be used in the exchange.
Then one must translate from, or into, the
agreed upon representation.
Data RepresentationData Representation
Converting the complex data structures
used by an application (strings, integers,
structures, etc. ) into a byte stream
transmitted across the network.
Representing information in such a way
that communicating peers agree to the
format of the data being exchanged.
E.g., How many bits does an integer
contain?, ASCII or EBCDIC character set?
Data RepresentationData Representation
Popular network data representations
include:
◦ASN.1 - an ISO standard
◦XDR - used with SunRPC
ASN.1ASN.1
Abstract Syntax Notation (ASN.1) is an ISO
standard that addresses the issue of
representing, encoding, transmitting, and
decoding data structures. It consists of two
parts:
◦An abstract syntax that describes data structures
in an unambiguous way. Use “ integers”,
“character strings”, and “structures” rather than
bits and bytes.
◦A transfer syntax that describes the bit stream
encoding of ASN.1 data objects.
ASN.1ASN.1
The main reasons for the success of ASN.1 is that it is
associated with several standardized encoding rules
such as:
◦Basic Encoding Rules (BER) - X.209
◦Canonical Encoding Rules (CER)
◦Distinguished Encoding Rules (DER)
◦Packed Encoding Rules (PER) and
◦ XER Encoding Rules (XER).
These encoding rules describe how the values defined
in ASN.1 should be encoded for transmission,
regardless of machine, programming language, or how
it is represented in an application program.
ASN.1ASN.1
Example of ASN.1’S abstract syntax:
Student ::= SEQUENCE {
name [0] IMPLICIT OCTET STRING OPTIONAL,
grad [1] IMPLICIT BOOLEAN OPTIONAL DEFAULT
FALSE,
gpa [2] IMPLICIT REAL OPTIONAL,
id [3] IMPLICIT INTEGER,
bday [4] IMPLICIT OCTET STRING OPTIONAL
}
ASN.1ASN.1
ASN.1 is currently used in ISO protocol
suite such as X.400 for electronic mail,
X.500 for directory services, H.323 (VoIP)
and SNMP
XDRXDR
Sun Microsystem's External Data
Representation (XDR) is much simpler than
ASN.1, but less powerful. For instance:
◦XDR uses implicit typing. Communicating
peers must know the type of any exchanged
data. In contrast, ASN.1 uses explicit typing; it
includes type information as part of the
transfer syntax.
◦In XDR, all data is transferred in units of 4
bytes. Numbers are transferred in network
order, most significant byte first.
XDRXDR
4 bytes of XDR message:
XDR (cont.)XDR (cont.)
1.Strings consist of a 4 byte length, followed
by the data (and perhaps padding in the last
byte).
2.Defined types include: integer, enumeration,
boolean, floating point, fixed length array,
structures, plus others.
One advantage that XDR has over ASN.1
is that current implementations of ASN.1
execute significantly slower than XDR.
DATA DATA
COMPRESSIONCOMPRESSION
Data CompressionData Compression
Reduces the number of bits contained in the
information.
Lossless Compression -- data is
compressed and can be uncompressed
without loss of information. These are
referred to as bit-preserving or reversible
compression systems.
Lossy Compression – aim to obtain the
best possible fidelity for a given bit-rate or
minimizing the bit-rate to achieve a given
fidelity measure. Most suited to video and
audio compression techniques
Why Compression?Why Compression?
Sometimes programs need to send more
data in a timely fashion than the bandwidth
of the network supports. (For example, a
video stream that needs 10Mbps to transmit
on a 1 Mbps network).
It’s hard to move data on the Internet at
>1Mbps.
The Internet does not allow applications to
use more than their “fair share” of the
bandwidth on a congested link.
Need to compress the data at the sender
and decompress it at the receiver.
Why Compression?Why Compression?
In terms of storage, the capacity of a
storage device can be effectively
increased with methods that compresses
a body of data on its way to a storage
device and decompresses it when it is
retrieved.
In terms of communications, the
bandwidth of a digital communication link
can be effectively increased by
compressing data at the sending end and
decompressing data at the receiving end.
Steps of Data CompressionSteps of Data Compression
Performed in the compression of still images,
audio and video data streams:
dPicture preparation – generates an appropriate
digital representation if the information in the
medium being compressed.
pPicture processing –make use of the various
compression algorithms
rQuantization – values determined in previous step
are quantized according to a specific resolution
and characteristic curve.
iEntropy encoding – with a sequential of individual
bits and bytes, different techniques are used to
perform a final, lossless compression
Steps of Data CompressionSteps of Data Compression
Uncompressed
Picture
Picture
Preparation
Picture
Processing
Quantization
Entropy
Encoding
Compressed
Picture
Major steps of image compression, can also be applied to audio and video data
IMAGE COMPRESSIONIMAGE COMPRESSION
DATA COMPRESSION
Image CompressionImage Compression
to represent images with less data in
order to save storage costs or
transmission time.
possible to reduce file size to 10% from
the original without noticeable loss in
quality.
Image compression can be lossless or
lossy.
Image CompressionImage Compression
Lossless
- Image quality is not reduced.
Use in: artificial images that contain sharp-
edged lines such as technical drawings, textual
graphics, comics, maps or logos.
Methods: run-length encoding (RLE), entropy
coding (Huffman coding) and dictionary coders
(LZW).
Image CompressionImage Compression
Lossy
- reduces image quality. Cannot get the
original image back & lose some
information.
Use in: natural images such as photos of
landscapes
Methods: discrete cosine transform (DCT,
used in JPEG) or wavelet transform (used
in JPEG 2000), color quantization
FORMAT FILE
EXTENTI
ON
TYPE OF
COMPRESSIO
N
METHODS USAGE
BMP (bitmap) .bmp Cosiderably
compressed with
lossless
ZIP used to store bitmap
digital images
JPEG
(Joint Photographic
Experts Group)
.jpg ,
.jpeg , .jpe
Lossy
Lossless
- Discrete Cosine
Transform (DCT) &
Chroma Subsampling
- Run-Length Encoding
(RLE)
For natural images
GIF (Graphics
Interchange Format
.gif , .giff ,
.gfa
Lossless LZW (Lempel-Ziv-
Welch)
For artificial images
(sharp-edge lines and
few colors) & support
animation
PNG (Portable
Network Graphics)
.png Lossless DEFLATE Better compression &
features than GIF, but
don’t support animation
TIFF (Tagged Image
File Format)
.tiff , .tifLossless RLE / LZW / DEFLATE /
ZIP
Flexible file format, can
store multiple images in
a single file
JPEG2000 jp2, .j2c,
jpc, j2k, jpx
Lossy & LosslessDiscrete Wavelet
Transform (DWT)
Better image quality
than JPEG (up to 20%),
not widely used because
of some patent issues.
Comparison of graphics file formats
Block Diagram of JPEG Block Diagram of JPEG
CompressionCompression
Source
image
JPEG compression
DCT Quantization Encoding
Compressed
image
Transformation
coding performed
using the Discrete
Cosine Transform
(DCT)
Quantization of all
DCT coefficients
( a lossy process)
Huffman coding and
arithmetic coding as
entropy encoding
methods
AUDIO COMPRESSIONAUDIO COMPRESSION
DATA COMPRESSION
Audio CompressionAudio Compression
A form of data compression designed to
reduce the size of audio files
Audio compression can be lossless or
lossy
Audio compression algorithms are
typically referred to as audio codecs.
Audio CompressionAudio Compression
Lossless - allows one to preserve an exact copy
of one's audio files
Usage: For archival purposes, editing, audio quality.
Codecs:
Free Lossless Audio Codec (FLAC)
Apple Lossless
MPEG-4 ALS
Monkey's Audio
Lossless Predictive Audio Compression (LPAC)
Lossless Transform Audio Compression (LTAC)
Audio CompressionAudio Compression
Lossy - irreversible changes , achieves far greater
compression, use psychoacoustics to recognize that
not all data in an audio stream can be perceived by
the human auditory system.
Usage: distribution of streaming audio, or
interactive applications
Codecs:
MP2- MPEG-1Layer 2 audio codec
MP3 – MPEG-1 Layer 3 audio codec
MPC Musepack
Vorbis Ogg Vorbis
AAC Advanced Audio Coding (MPEG-2 and MPEG-4)
WMA Windows Media Audio
AC3 AC-3 or Dolby Digital A/52
MPEGMPEG
Stands for Moving Picture Experts Group. MPEG is an
ISO/IEC working group, established in 1988 to develop
standards for digital audio and video formats.
MPEG-1
Designed for up to 1.5 Mbit/sec
Standard for the compression of moving pictures and
audio. Most popular is level 3 of MPEG-1 (MP3). MPEG-1
is the standard of compression for VideoCD.
MPEG-2
Designed for between 1.5 and 15 Mbit/sec
Standard on which Digital Television set top boxes and
DVD compression is based. Designed for the compression
and transmission of digital broadcast television
MPEG (cont.)MPEG (cont.)
MPEG-4
Standard for multimedia and Web compression.
MPEG-4 is based on object-based compression,
similar in nature to the Virtual Reality Modeling
Language. It also allows developers to control
objects independently in a scene, and therefore
introduce interactivity.
MPEG-7 (under development) - also called the
Multimedia Content Description Interface.
Contrary to the previous MPEG standards, which
described actual content, MPEG-7 will represent
information about the content.
MPEG Audio EncodingMPEG Audio Encoding
Uncompressed
Audio Signal
Division in 32
Frequency
Bands
Psychoacoustic
Model
Quantization
(if applicable)
Entropy
Encoding
Compressed
Audi o Data
controls
Audio Compression Formats – MP3Audio Compression Formats – MP3
Creation Process Stages:
Separation into Frames
Spectral Analysis
“Masking” ( Psychoacoustic Models )
Processing ~ Bit Rate & Joint Stereo
Compressing ( Hoffman ZIP )
CBR & VBR (Constant Bit Rate and Variable Bit
Rate)
Most Popular
Many codec's and players
Audio Compression Formats Audio Compression Formats
– Ogg Vorbis– Ogg Vorbis
Creation Process Stages:
Same as those in MP3
Improvements over MP3
Designed for Streaming Connection
Real Stereo ~ No Multiplexing
Multi-Channel Support (more than Mono & Stereo)
Bit Rate Scaling
Preferred VBR
New Codec
Free Source Code
One codec and few players
Audio Compression Formats – Audio Compression Formats –
WMAWMA
Advanced System Format (ASF) including:
Support for Meta Data
Scripting
Security Features
CBR & VBR (only after version 9)
Industrial Support
Free Codec
Few Players
VIDEO COMPRESSIONVIDEO COMPRESSION
DATA COMPRESSION
Video CompressionVideo Compression
Storing and transmitting uncompressed raw
video is not an efficient technique because it
needs large amounts of storage and
bandwidth.
DVD, DSS, and internet video, all use digital
data → take a lot of space to store and large
bandwidth to transmit.
Video compression technique is used to
compress the data for these applications
→ less storage space and less bandwidth to
transmit data.
Video CompressionVideo Compression
Videos are sequences of images displayed at a
high rate. Each of these images is called a frame.
Human eye can not notice small changes in the
frames such as a slight difference in color.
Therefore, video compression standards do not
require the encoding of all the details and some
of the less important video details are lost. This is
because lossy compression is used due to its
ability to get very high compression ratios.
Typically 30 frames are displayed on the screen
every second.
Video Compression ProcessVideo Compression Process
nStart by encoding the first frame using a still
image compression method.
nIt should then encode each successive frame by
identifying the differences between the frame
and its predecessor, and encoding these
differences. If the frame is very different from its
predecessor it should be coded independently of
any other frame.
In the video compression literature, a frame that
is coded using its predecessor is called inter
frame (or just inter), while a frame that is
coded independently is called intra frame (or
just intra).
Video Compression TechniquesVideo Compression Techniques
Flow Control and Buffering
Temporal Compression
Spatial Compression
Discrete Cosine Transform (DCT)
Vector Quantization (VQ)
Fractal Compression
Discrete Wavelet Transform (DWT).
Video Compression FormatsVideo Compression Formats
The ISO/IEC, or International Organization for
Standardization and the International
Electrotechnical Commission, have a group called
the Moving Pictures Experts Group or MPEG.
MPEG is responsible, for the familiar compression
formats MPEG-1, MPEG-2 and MPEG-4.
The ITU-T standardizes formats for the
International Telecommunications Union, a United
Nations Organization. Some popular ITU-T
compression formats include the H.261 and H.264
formats.
There are other compression formats, such as Intel
Indeo and RealVideo (based on the ITU-T H.263
codec), AVI, DivX, Quicktime, Windows Media
Video (WMV).
ENCRYPTIONENCRYPTION
EncryptionEncryption
•To carry sensitive information, a system must
be able to assure privacy.
•As the number of attacks increase and as the
public Internet is used to transmit private
data, it is increasingly difficult to protect
information.
•One way to safeguard data from attacks is
encrypting the data.
•Practically, encryption is suitably done in
presentation layer besides transport and
physical layer.
EncryptionEncryption
Encryption – sender transform original
information (plaintext) to another form
(ciphertext) by a function that is
parameterised by a key.
Decryption – reverses the original process to
transform the message (ciphertext) back to
its original form (plaintext).
EncryptionEncryption
Example of Encryption / Decryption Process
Plaintext Plaintext
Ciphertext
Basic Terms and ConceptsBasic Terms and Concepts
Cryptography – the science of transforming
information so that it is secure while it is being
transmitted or stored. Data is scrambled so that
it cannot viewed by unauthorized users.
Cryptosystem – a disguises message that allows
only selected people to see through the disguise.
Cryptanalysis – the science of breaking a
crptosystem
Key – a value that is used by an algorithm to
encrypt and decrypt a message.
Cipher – an encryption/decryption algorithm tool
that is used to create encrypted/decrypted text
Encrytption/Decryption KeysEncrytption/Decryption Keys
Symmetric Keys – use same key to
encrypt and decrypt a message.
Eg.: Data Encryption Standard (DES),
Triple DES (3DES), Advanced
Encryption Standard (AES)
Asymmetric Keys -2 keys are needed
(public key and private key); 1 key to
encrypt, another key to decrypt and
vice versa.
Eg.: RSA and Diffie-Hellman
How Encryption ProtectsHow Encryption Protects
Because cryptography is concerned with
the storage or transmission of information,
five key security functions need to be
fulfilled:
Protection Description
ConfidentialityAllow only authorized users to access
information.
AuthenticationVerify who the sender was and trust the
sender is who they claim to be.
Integrity Trust the information has not been altered
NonrepudiationEnsure that the sender or receiver cannot
deny that a message was sent or received.
Access ControlRestrict availability to information.