University

of

California

Santa

Cruz

Transport

over

ATM

Networks

A

thesis

submitted

in

partial

satisfaction

of

the

requirements

for

the

degree

of

Master

of

Science

in

Computer

Engineering

by

Christos

Tryfonas

September

The

thesis

of

Christos

Tryfonas

is

approved

Anujan

Varma

J.J.

Garcia-Luna-Aceves

Subir

Varma

Dean

of

Graduate

Studies

and

Research

iii

Contents

Abstract

xii

Acknowledgments

xiii

Introduction

MPEG

Overview

History

Color

Representation

MPEG

Coding

Coding

Principles

Picture

types

in

MPEG

Intraframe

DCT

coding

Quantization

Entropy

Coding

Motion-Compensated

Interframe

Prediction

Video

Features

Profiles

and

Levels

Systems

Layer

Transport

Stream

Audiovisual

Formats

and

Requirements

Video

Standards

Clock

Requirements

Networking

Requirements

Perceptual

Requirements

iv

ATM

Networks

Classification

of

Services

in

ATM

networks

QoS

support

and

Scheduling

Disciplines

over

ATM

Choice

of

Adaptation

Layer

-LRB-

AAL

-RRB-

Transport

over

Transport

over

Transport

Packet

Encapsulation

Service

Class

Selection

Clock

Synchronization

Experimental

Results

Simulation

Model

Description

of

Traces

Low-Pass

Filter

Design

Simulation

Results

Experiment

Experiment

Experiment

Experiment

Experiment

Experiment

Conclusions

Conclusions

and

Future

Work

References

v

List

of

Figures

Example

of

inter-dependence

among

various

picture

types

in

a

MPEG

video

sequence

DCT

and

zig-zag

scan

-LRB-

regular

and

alternate

-RRB-

Motion

Compensation

MPEG

encoder

-LRB-

from

-LSB-

-RSB-

-RRB-

Creation

of

elementary

stream

from

uncompressed

data

-LRB-

from

-LSB-

-RSB-

-RRB-

Simplified

overview

of

Systems

layer

-LRB-

Transport

Stream

case

-RRB-

Generation

of

a

packetized

elementary

stream

from

an

elementary

stream

Transport

Stream

generation

from

PES

packets

-LRB-

from

-LSB-

-RSB-

-RRB-

Structure

of

a

transport

packet

Piecewise

linearity

in

Transport

Rate

Clock

recovery

using

a

Phase-Locked

Loop

-LRB-

PLL

-RRB-

-LRB-

from

-LSB-

-RSB-

-RRB-

PAL/NTSC

demodulator

system

block

-LRB-

from

-LSB-

-RSB-

-RRB-

Token

bucket

shaper

Abstract

view

of

a

scheduler

in

the

SRPS

class

-LRB-

from

-LSB-

-RSB-

-RRB-

Structure

of

layer

-LRB-

from

-LSB-

-RSB-

-RRB-

Protocol

stack

for

over

ATM

-LRB-

from

-LSB-

-RSB-

-RRB-

PCR

packing

schemes

for

N

Network

topology

used

in

the

simulations

Protocol

stack

of

the

simulation

model

ON-OFF

traffic

model

Transport

Rate

of

trace

A.

Transport

Rate

of

trace

B.

vi

Block

diagram

of

the

PLL

used

in

the

decoder

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR

unaware

scheme

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR

aware

scheme

Decoder

frequency

using

PCR-unaware

and

several

first-order

LPFs

with

different

cutoff

frequencies

Decoder

frequency

using

PCR-unaware

and

several

second-order

LPFs

with

different

cutoff

frequencies

Decoder

frequency

using

PCR-unaware

and

several

third-order

LPFs

with

different

cutoff

frequencies

PCR-STC

difference

under

the

PCR-unaware

scheme

order

LPF

with

Hz

cutoff

PCR-STC

difference

under

the

PCR-aware

scheme

order

LPF

with

Hz

cutoff

PCR-STC

difference

under

the

PCR-aware

scheme

order

LPF

with

Hz

cutoff

Buffer

occupancy

for

trace

A

under

PCR-unaware

scheme

using

order

LPF

with

cutoff

frequency

of

Hz

PAL

color

sub-carrier

generation

frequency

under

PCR-unaware

scheme

us

ing

order

LPFs

PAL

color

sub-carrier

generation

frequency

under

PCR-aware

scheme

using

order

LPFs

Rate

of

change

of

PAL

color

sub-carrier

generation

frequency

under

PCR

unaware

scheme

using

order

LPFs

and

averaging

over

seconds

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR

unaware

scheme

and

FIFO

scheduling

discipline

for

experiment

vii

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR

aware

scheme

and

FIFO

scheduling

discipline

for

experiment

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR

unaware

scheme

and

FFQ

scheduling

discipline

for

experiment

PAL

color

sub-carrier

generation

frequency

under

PCR-unaware

scheme

for

experiment

PAL

color

sub-carrier

generation

frequency

under

PCR-aware

scheme

for

experiment

Rate

of

change

of

PAL

color

sub-carrier

generation

frequency

under

FIFO

scheduling

discipline

for

experiment

-LRB-

averaged

over

secs

-RRB-

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR

unaware

scheme

and

FIFO

scheduling

discipline

for

experiment

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR

aware

scheme

and

FIFO

scheduling

discipline

for

experiment

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR

unaware

scheme

and

Shaped

VirtualClock

scheduling

discipline

for

experi

ment

PAL

color

sub-carrier

generation

frequency

under

PCR-unaware

scheme

for

experiment

PAL

color

sub-carrier

generation

frequency

under

PCR-aware

scheme

for

experiment

Rate

of

change

of

PAL

color

sub-carrier

generation

frequency

under

FIFO

scheduling

discipline

for

experiment

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR

unaware

scheme

and

FIFO

scheduling

discipline

for

experiment

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR

aware

scheme

and

FIFO

scheduling

discipline

for

experiment

viii

PAL

color

sub-carrier

generation

frequency

under

PCR-unaware

scheme

for

experiment

PAL

color

sub-carrier

generation

frequency

under

PCR-aware

scheme

for

experiment

Rate

of

change

of

PAL

color

sub-carrier

generation

frequency

under

PCR

unaware

for

experiment

-LRB-

averaged

over

secs

-RRB-

Rate

of

change

of

PAL

color

sub-carrier

generation

frequency

under

PCR

aware

for

experiment

-LRB-

averaged

over

secs

-RRB-

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR

unaware

scheme

and

SCFQ

scheduling

discipline

for

experiment

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR

aware

scheme

and

SCFQ

scheduling

discipline

for

experiment

CDF

for

PCR

delays

under

SCFQ

for

experiment

CDF

for

PCR

delays

under

FFQ

for

experiment

PAL

color

sub-carrier

generation

frequency

under

PCR-unaware

scheme

and

using

sources

for

experiment

PAL

color

sub-carrier

generation

frequency

under

PCR-aware

scheme

and

using

sources

for

experiment

PAL

color

sub-carrier

generation

frequency

under

PCR-unaware

scheme

and

using

sources

for

experiment

PAL

color

sub-carrier

generation

frequency

under

PCR-aware

scheme

and

using

sources

for

experiment

Rate

of

change

of

PAL

color

sub-carrier

generation

frequency

under

PCR

unaware

scheme

and

using

sources

for

experiment

-LRB-

averaged

over

secs

-RRB-

Rate

of

change

of

PAL

color

sub-carrier

generation

frequency

under

PCR

aware

scheme

and

using

sources

for

experiment

-LRB-

averaged

over

secs

-RRB-

Rate

of

change

of

PAL

color

sub-carrier

generation

frequency

under

PCR

unaware

scheme

and

using

sources

for

experiment

-LRB-

averaged

over

secs

-RRB-

ix

Rate

of

change

of

PAL

color

sub-carrier

generation

frequency

under

PCR

aware

scheme

and

using

sources

for

experiment

-LRB-

averaged

over

secs

-RRB-

PCR

delays

autocorrelation

for

SCFQ

under

PCR-unaware

scheme

for

ex

periment

Delays

experienced

by

transport

packets

containing

PCRs

under

FIFO

scheduling

discipline

and

without

any

dejittering

for

experiment

Delays

experienced

by

transport

packets

containing

PCRs

under

FIFO

scheduling

discipline

and

with

ms

dejittering

buffer

for

experiment

Delays

experienced

by

transport

packets

containing

PCRs

under

FIFO

scheduling

discipline

and

with

ms

dejittering

buffer

for

experiment

PCR-STC

difference

without

any

dejittering

buffer

for

experiment

PCR-STC

difference

with

ms

dejittering

buffer

for

experiment

PCR-STC

difference

with

ms

dejittering

buffer

for

experiment

PAL

color

sub-carrier

generation

frequency

under

PCR-unaware

scheme

for

experiment

Rate

of

change

of

PAL

color

sub-carrier

generation

frequency

under

FIFO

scheduling

discipline

for

experiment

-LRB-

averaged

over

secs

-RRB-

Buffer

occupancy

without

any

dejittering

buffer

for

experiment

Buffer

occupancy

with

ms

dejittering

buffer

for

experiment

Buffer

occupancy

with

ms

dejittering

buffer

for

experiment

NTSC

color

sub-carrier

generation

frequency

for

trace

B

without

cross-traffic

Buffer

occupancy

for

trace

B

without

cross-traffic

CDF

for

transport

packets

delays

for

experiment

CDF

for

PCR

delays

for

experiment

NTSC

color

sub-carrier

generation

frequency

for

experiment

Rate

of

change

of

NTSC

color

sub-carrier

generation

frequency

for

experiment

-LRB-

averaged

over

secs

-RRB-

x

Buffer

occupancy

under

FIFO

for

experiment

PCR-STC

difference

under

FIFO

for

experiment

xi

List

of

Tables

Profiles

and

levels

supported

in

-LRB-

from

-LSB-

-RSB-

-RRB-

Main

Profile

Comparison

of

the

three

basic

video

standards

Specifications

for

the

color

sub-carrier

of

different

video

formats

-LRB-

from

-LSB-

-RSB-

-RRB-

Delay

requirements

for

various

audio-visual

services

Error

rate

requirements

for

various

audio-visual

services

Cell

rate

requirements

for

various

audio-visual

services

Bandwidth

demands

of

broadband

services

Traffic

parameters

QoS

parameters

Latency

Fairness

and

Complexity

for

several

scheduling

algorithms

Li

is

the

maximum

packet

size

of

connection

i

and

Lmax

the

maximum

packet

size

among

all

connections

V

is

the

number

of

all

the

connections

F

is

the

frame

size

and

OEi

is

the

amount

of

traffic

in

the

frame

allocated

to

connection

i.

Lc

is

the

size

of

the

fixed

packet

-LRB-

cell

-RRB-

in

Weighted

Round-Robin

Maximum

packing

jitter

for

different

transport

rates

and

N

Coefficients

of

the

various

LPFs

used

in

the

experiments

Transport

over

ATM

Networks

Christos

Tryfonas

abstract

In

this

thesis

we

evaluate

a

number

of

schemes

for

transporting

video

streams

over

ATM

networks

The

schemes

studied

include

packing

schemes

at

the

adaptation

layer

scheduling

disciplines

within

the

ATM

switches

and

playback

schemes

at

the

decoder

We

performed

extensive

simulation

experiments

in

a

multi-hop

ATM

network

using

constant

bit-rate

Transport

Streams

produced

by

hardware

encoders

with

varying

levels

of

cross

traffic

Our

results

show

that

the

use

of

a

good

fair-queueing

scheduler

in

the

ATM

switches

is

essential

for

providing

acceptable

quality

to

the

end

viewer

Besides

we

found

that

not

only

the

probability

distribution

function

of

the

jitter

but

also

its

autocorrelation

plays

a

significant

role

in

the

perceived

quality

High

autocorrelation

of

the

jitter

for

the

same

probability

distribution

function

may

degrade

the

quality

to

unacceptable

levels

We

also

observed

that

although

the

quality

of

the

reconstructed

clock

may

be

poor

in

the

case

of

excessive

jitter

the

system

decoder

buffer

may

not

be

affected

significantly

i.e.

may

not

underflow

or

overflow

xiii

Acknowledgments

This

is

the

right

place

to

acknowledge

all

the

people

that

directly

or

indirectly

contributed

in

the

successful

completion

of

this

work

First

I

would

like

to

thank

my

adviser

Prof.

Anujan

Varma

for

proposing

the

research

topic

providing

a

continuous

support

and

directing

this

work

I

would

like

to

thank

also

Dr.

Subir

Varma

for

strongly

supporting

this

work

and

for

his

invaluable

directions

I

would

like

to

thank

Prof.

J.J.

Garcia

Luna-Aceves

for

reading

the

thesis

and

providing

helpful

comments

Without

Paul

Pitcl

and

Ari

Jahanian

from

LSI

Logic

Corporation

Fre

Jorritsma

from

Philips

Research

Laboratories

and

Bill

Helms

and

Ji

Zhang

from

Divicom

Corporation

the

search

for

Transport

Stream

traces

would

have

been

endless

I

would

also

like

to

thank

Dimitrios

Stiliadis

for

the

endless

discussions

on

the

subject

and

Lampros

Kalampoukas

for

the

constant

support

and

help

with

the

OPNET

network

simulation

tools

Finally

I

would

like

to

thank

Diamantis

Kourkouzelis

for

his

support

and

encouragement

all

these

years

Last

but

not

least

I

would

like

to

thank

my

family

Their

love

trust

and

support

throughout

all

these

years

made

the

impossible

possible

I

am

grateful

to

you

September

Introduction

Asynchronous

Transfer

Mode

-LRB-

ATM

-RRB-

is

an

emerging

standard

for

broadband

networks

that

allows

a

wide

range

of

traffic

types

ranging

from

real-time

video

to

best-effort

data

to

be

multiplexed

in

a

single

physical

network

A

key

benefit

of

ATM

technology

is

its

ability

to

provide

quality-of-service

-LRB-

QoS

-RRB-

guarantees

to

applications

These

QoS

guarantees

are

in

the

form

of

bounds

on

end-to-end

delay

delay

jitter

and

packet

loss

rate

Several

classes

of

service

have

been

defined

in

the

context

of

ATM

networks

to

satisfy

the

QoS

needs

of

various

applications

The

Constant

Bit-Rate

-LRB-

CBR

-RRB-

and

Real-Time

Variable

Bit-Rate

-LRB-

RT

VBR

-RRB-

service

classes

provide

upper

bounds

on

delay

jitter

and

loss

rate

These

classes

are

intended

for

real-time

applications

that

require

low

delay

and

jitter

The

Non

Real-Time

Variable

Bit-Rate

-LRB-

NRT-VBR

-RRB-

service

class

is

intended

for

applications

where

no

jitter

control

is

needed

but

a

delay

guarantee

is

still

required

The

Available

Bit-Rate

-LRB-

ABR

-RRB-

service

class

is

intended

for

delay-tolerant

best-effort

applications

and

uses

a

rate-based

feedback

approach

to

control

potential

congestion

Finally

the

Unspecified

Bit-Rate

service

-LRB-

UBR

-RRB-

does

not

offer

any

service

guarantees

and

thus

has

the

lowest

priority

among

all

the

classes

The

feasibility

of

supporting

a

specified

set

of

QoS

requirements

is

determined

by

admission-control

algorithms

The

use

of

a

traffic

scheduling

algorithm

is

essential

in

order

to

provide

QoS

guarantees

in

an

ATM

network

The

function

of

a

scheduling

algorithm

is

to

select

the

packet

to

be

transmitted

in

the

next

cycle

from

all

the

available

packets

going

through

the

same

output

link

of

a

switch

A

good

scheduling

discipline

should

be

able

to

ensure

isolation

among

the

flows

so

that

the

desired

level

of

service

can

be

guaranteed

to

real-time

flows

even

in

the

presence

of

other

possibly

mis-behaving

flows

In

addition

the

scheduler

must

also

allow

best-effort

applications

to

share

the

available

bandwidth

Several

scheduling

disciplines

have

been

proposed

in

the

literature

to

achieve

this

objective

FIFO

scheduling

discipline

although

the

simplest

to

implement

does

not

provide

any

isolation

among

the

various

flows

and

therefore

can

not

offer

deterministic

bandwidth

guarantees

Many

algorithms

that

provide

bandwidth

guarantees

to

individual

sessions

are

known

in

the

literature

-LSB-

-RSB-

Many

of

these

algorithms

are

also

capable

of

providing

deterministic

delay

guarantees

when

the

burstiness

of

the

session

traffic

is

bounded

-LRB-

as

in

the

case

of

the

output

of

a

leaky-bucket

shaper

-RRB-

This

thesis

deals

with

the

transport

of

real-time

traffic

generated

by

applications

in

an

ATM

network

is

the

emerging

standard

for

audio

and

video

compression

Being

capable

of

exploiting

both

spatial

and

temporal

redundancies

it

achieves

compression

ratios

up

to

and

can

encode

a

video

or

audio

source

to

almost

any

level

of

quality

standard

offers

two

ways

to

multiplex

elementary

audio

video

or

private

streams

to

form

a

program

the

Program

Stream

and

the

Transport

Stream

formats

The

Transport

Stream

is

the

approach

suggested

for

transporting

over

noisy

environments

such

as

in

an

ATM

network

Using

explicit

timestamps

-LRB-

called

Program

Clock

References

or

PCRs

in

terminology

-RRB-

Transport

Streams

ensure

synchronization

and

continuity

and

provide

ways

to

facilitate

the

clock

recovery

at

the

decoder

end

The

transport

of

over

ATM

introduces

several

issues

that

must

be

addressed

in

order

to

attack

the

problem

on

an

end-to-end

basis

These

include

the

choice

of

the

adaptation

layer

method

of

encapsulation

of

packets

in

AAL

packets

choice

of

scheduling

algorithms

in

the

ATM

network

for

control

of

delay

and

jitter

and

the

design

of

the

decoder

The

choice

of

adaptation

layer

involves

a

number

of

tradeoffs

-LSB-

-RSB-

Use

of

a

circuit-emulation

type

of

adaptation

layer

-LRB-

-RRB-

would

eliminate

the

various

synchronization

problems

associated

with

but

can

be

used

only

with

constant

bitrate

Transport

Streams

In

the

more

general

variable

bit-rate

-LRB-

VBR

-RRB-

case

such

an

adaptation

layer

can

not

be

used

An

alternative

is

Adaptation

Layer

-LRB-

-RRB-

which

was

initially

proposed

to

carry

data

traffic

over

ATM

networks

Two

distinct

approaches

have

been

proposed

for

encapsulation

of

streams

in

packets

-LSB-

-RSB-

In

the

first

approach

-LRB-

PCR-aware

-RRB-

the

packetization

is

done

ensuring

that

when

a

packet

contains

a

PCR

value

it

will

be

the

last

packet

encapsulated

This

reduces

the

jitter

experienced

by

PCR

values

during

packetization

In

the

second

approach

-LRB-

PCR-unaware

-RRB-

the

sender

does

not

check

whether

PCR

values

are

contained

within

a

transport

packet

and

may

therefore

introduce

significant

jitter

to

PCR

values

during

the

encapsulation

Finally

a

new

adaptation

layer

-LRB-

-RRB-

which

is

not

standardized

yet

may

offer

an

alternative

in

the

future

for

transport

of

VBR

traffic

will

provide

support

for

clock

synchronization

and

superior

error

control

Different

proposals

have

been

made

for

selecting

the

type

of

service

under

which

MPEG

is

to

be

transported

over

ATM

-LSB-

-RSB-

For

constant

bit-rate

streams

the

CBR

class

of

service

is

the

natural

choice

Even

in

this

case

the

scheduling

algorithm

employed

by

the

switches

may

influence

the

overall

quality

significantly

For

the

variable

bit-rate

case

three

main

approaches

have

been

proposed

The

statistical

service

with

rate

renegotiation

tries

to

maximize

the

multiplexing

gain

by

capturing

the

VBR

nature

of

-LSB-

-RSB-

According

to

this

approach

the

effective

bandwidth

of

the

source

during

a

specific

interval

is

used

in

order

to

allocate

resources

in

the

network

If

enough

resources

are

not

available

the

quality

gets

degraded

and

in

that

sense

the

service

is

statistical

The

rate

is

renegotiated

in

the

long

time

scale

and

the

way

the

renegotiation

points

are

selected

depends

on

the

exact

algorithm

The

second

approach

based

on

a

feedback-based

available

bit-rate

service

uses

feedback

information

in

order

to

change

the

coding

rate

at

the

output

of

the

encoder

to

suit

the

available

bandwidth

-LSB-

-RSB-

In

this

approach

the

service

is

considered

best

effort

with

some

minimum

guarantees

In

the

last

approach

which

provides

statistical

service

without

any

guarantees

-LRB-

like

the

one

used

in

the

Internet

today

-RRB-

the

overall

quality

relies

totally

on

the

load

of

the

network

Thus

no

QoS

can

be

guaranteed

at

all

Synchronization

issues

may

arise

while

transporting

over

ATM

due

to

cell

delay

variation

-LRB-

jitter

-RRB-

The

presence

of

jitter

introduced

by

the

underlying

ATM

network

may

distort

the

reconstructed

clock

at

the

audio/video

decoder

which

in

turn

may

degrade

the

quality

since

the

synchronization

signals

for

display

of

the

video

frames

are

obtained

from

the

recovered

clock

The

common

solution

is

to

use

a

dejittering

mechanism

at

the

receiver

that

absorbs

any

jitter

introduced

by

the

network

In

order

to

ensure

acceptable

quality

at

the

receiver

each

component

of

the

end-to-end

path

must

be

designed

to

provide

the

desired

level

of

service

Therefore

optimizing

only

specific

components

in

the

path

may

not

be

adequate

for

ensuring

the

desired

quality

for

the

viewer

For

example

selecting

a

low-latency

scheduler

for

the

switches

while

using

an

adaptation

layer

that

introduces

significant

jitter

and

a

poor

phase-locked

loop

-LRB-

PLL

-RRB-

design

within

the

decoder

may

not

be

sufficient

to

maintain

at

the

receiver

Therefore

the

adaptation

layer

encapsulation

scheme

scheduling

discipline

in

the

ATM

switches

dejittering

mechanisms

at

the

receiver

and

the

PLL

in

the

system

decoder

must

all

be

designed

to

provide

the

desired

level

of

quality

at

the

receiver

In

this

thesis

we

evaluate

different

schemes

for

transporting

Transport

Streams

over

an

ATM

network

The

schemes

studied

include

packing

schemes

at

the

adaptation

layer

scheduling

disciplines

in

the

ATM

switches

and

playback

schemes

at

the

decoder

We

performed

several

experiments

in

a

multi-hop

ATM

network

with

varying

levels

of

background

traffic

We

observed

that

a

good

fair-queueing

scheduler

is

essential

for

providing

acceptable

quality

for

the

viewer

We

also

found

that

the

perceived

quality

of

the

video

signal

is

affected

not

only

by

the

probability

distribution

function

of

the

packet

delay

variation

-LRB-

jitter

-RRB-

but

also

by

its

autocorrelation

Finally

we

found

that

although

in

specific

cases

the

quality

of

the

reconstructed

clock

is

degraded

significantly

the

system

decoder

buffer

may

not

experience

underflows

or

overflows

The

rest

of

this

thesis

is

organized

as

follows

first

a

general

overview

of

the

MPEG

standard

both

at

the

elementary

and

at

the

Systems

layer

will

be

given

in

Chapter

Then

the

clock

networking

and

perceptual

requirements

for

several

types

of

audiovisual

applications

will

be

presented

in

Chapter

Aspects

dealing

with

the

current

types

of

services

in

ATM

networks

and

various

QoS

issues

arising

from

the

use

of

different

scheduling

disciplines

in

the

ATM

switches

are

addressed

in

Chapter

The

problem

of

transporting

over

ATM

with

the

approaches

that

have

been

proposed

in

the

literature

for

both

the

CBR

and

the

VBR

cases

are

discussed

in

Chapter

The

various

experiments

that

were

performed

along

with

the

evaluation

of

the

efficiency

of

different

schemes

for

transporting

constant

bit-rate

Transport

Streams

over

ATM

networks

are

presented

in

Chapter

Finally

Chapter

discusses

our

results

states

our

conclusions

and

proposes

areas

for

future

research

MPEG

Overview

In

this

chapter

we

provide

an

overview

of

the

standard

We

begin

with

a

short

history

of

MPEG

standards

and

proceed

to

discuss

the

basic

principles

of

MPEG

coding

such

as

quantization

and

interframe

prediction

We

conclude

with

a

detailed

description

of

the

Systems

Layer

History

Two

important

standardization

efforts

were

started

in

the

late

One

is

the

ITU-T

standard

for

video-conferencing

and

video-telephony

known

as

H.

The

other

one

came

under

the

name

of

MPEG

-LRB-

Moving

Pictures

Experts

Group

-RRB-

from

ISO/IEC

in

order

to

define

a

video

coding

algorithm

for

application

on

digital

storage

media

like

CD-ROM

In

addition

audio

coding

was

added

and

the

scope

of

the

targeted

applications

was

extended

to

cover

almost

all

applications

from

multimedia

systems

to

Video-on-Demand

The

activities

of

JPEG

-LRB-

Joint

Photographic

Experts

Group

-RRB-

-LSB-

-RSB-

played

an

important

role

in

the

definition

of

MPEG

Although

JPEG

was

intended

for

still-image

compression

it

can

be

also

applied

for

moving

pictures

considering

the

fact

that

a

video

sequence

is

nothing

more

than

a

sequence

of

still

images

These

still

images

could

be

coded

individually

and

displayed

sequentially

using

JPEG

but

the

coded

sequence

would

not

take

into

consideration

frameto-frame

redundancies

that

give

an

additional

compression

factor

MPEG

exploits

this

temporal

redundancy

present

in

any

video

sequence

in

order

to

maximize

the

compression

ratio

MPEG

's

first

effort

led

to

the

standard

that

was

published

in

as

ISO/IEC

It

is

divided

in

three

parts

audio

compression

video

compression

and

system

level

multiplexing

for

applications

that

need

video

and

audio

to

be

played

back

in

close

synchronization

is

being

used

in

a

variety

of

applications

CD-I

and

Video-CD

technology

use

as

the

compression

algorithm

for

video

and

audio

It

was

designed

to

support

video

coding

up

to

Mbps

with

VHS

quality

audio

coding

at

kbps/channel

-LRB-

stereo

CD-quality

-RRB-

and

is

optimized

for

non-interlaced

video

signals

MPEG

's

second

effort

started

in

The

main

objective

was

to

design

a

compression

standard

capable

of

different

qualities

depending

on

the

bit-rate

from

TV

broadcast

to

studio

quality

That

work

led

to

the

standard

which

is

based

on

but

is

more

sophisticated

and

optimized

for

interlaced

pictures

The

standard

is

capable

of

coding

standard

TV

at

about

-LCB-

Mbps

to

HDTV

at

-LCB-

Mbps

In

the

audio

part

of

the

standard

it

supports

multi-channel

surround

sound

coding

while

being

backwards

compatible

with

the

Audio

definition

Before

presenting

an

overview

of

the

MPEG

video

compression

techniques

a

quick

overview

of

the

color

space

will

be

given

Color

Representation

Color

is

the

perceptual

result

of

light

in

the

visible

region

of

the

spectrum

having

wavelengths

in

the

region

of

to

incident

upon

the

retina

Physical

power

-LRB-

or

radiance

-RRB-

is

expressed

in

a

spectral

power

distribution

-LRB-

SPD

-RRB-

often

in

components

spaced

in

separate

bands

The

human

retina

has

three

types

of

color

photo-receptor

cone

cells

which

respond

to

incident

radiation

with

somewhat

different

spectral

response

curves

A

fourth

type

of

photoreceptor

cell

the

rod

is

also

present

in

the

retina

Rods

are

effective

only

at

extremely

low

light

levels

-LRB-

colloquially

night

vision

-RRB-

and

although

important

for

vision

play

no

role

in

image

reproduction

Because

there

are

exactly

three

types

of

color

photo-receptors

in

the

eyes

three

numerical

components

are

necessary

and

sufficient

to

describe

a

color

providing

that

appropriate

spectral

weighting

functions

are

used

This

is

the

concern

of

the

science

of

colorimetry

In

the

Commission

Internationale

de

L'Eclairage

-LRB-

CIE

-RRB-

adopted

standard

curves

for

a

hypothetical

Standard

Observer

These

curves

specify

how

an

SPD

can

be

transformed

into

a

set

of

three

numbers

that

specifies

a

color

-LSB-

-RSB-

The

CIE

system

is

immediately

and

almost

universally

applicable

to

self-luminous

sources

and

displays

However

the

colors

produced

by

reflective

systems

such

as

photography

printing

or

paint

are

a

function

not

only

of

the

colorants

but

also

of

the

SPD

of

the

ambient

illumination

If

the

application

has

a

strong

dependence

upon

the

spectrum

of

the

illuminant

spectral

matching

must

be

employed

to

resolve

it

One

of

the

key

concepts

introduced

by

the

CIE

chart

was

the

isolation

of

the

luminance

-LRB-

or

brightness

-RRB-

from

the

chrominance

-LRB-

or

hue

-RRB-

Using

the

CIE

chart

as

a

guideline

the

National

Television

System

Committee

-LRB-

NTSC

-RRB-

defined

the

transmission

of

signals

in

a

luminance

and

chrominance

format

rather

than

a

format

involving

the

three

color

components

of

the

television

phosphors

The

new

color

space

was

labeled

YIQ

where

the

letters

represent

the

luminance

in-phase

chrominance

and

quadrature

chrominance

coordinates

respectively

The

PAL

and

SECAM

European

television

standards

are

based

on

an

identical

color

space

the

YUV

The

only

difference

between

PAL/SECAM

's

YUV

and

NTSC

's

YIQ

color

space

is

a

degree

rotation

in

UV

The

digital

equivalent

of

YUV

is

YCbCr

where

the

Cb

chrominance

component

corresponds

to

the

analog

U

component

and

the

Cr

chrominance

component

corresponds

to

the

analog

V

component

with

different

scaling

factors

The

YCbCr

format

concentrates

most

of

the

image

information

into

the

luminance

and

less

in

the

chrominance

components

The

result

is

that

the

YCbCr

elements

are

less

correlated

and

can

be

coded

separately

Another

advantage

comes

from

reducing

the

transmission

rates

of

the

Cb

and

Cr

chrominance

components

The

MPEG

algorithm

strictly

specifies

the

YCbCr

color

space

not

YUV

or

YIQ

or

any

other

many

fine

varieties

of

color

difference

spaces

Regardless

of

any

bit-stream

parameters

and

MPEG

Video

Main

Profile

-LRB-

discussed

later

-RRB-

specify

the

chroma

format

where

the

color

difference

components

-LRB-

Cb

Cr

-RRB-

have

half

the

resolution

or

sample

grid

density

in

both

the

horizontal

and

vertical

direction

with

respect

to

luminance

MPEG

Coding

Coding

Principles

A

video

sequence

has

three

types

of

redundancies

that

a

coding

scheme

needs

to

exploit

in

order

to

achieve

very

good

compression

Spatial

Temporal

Phychovisual

Spatial

and

temporal

redundancies

come

from

the

fact

that

pixel

values

are

not

completely

independent

but

are

correlated

with

the

values

of

their

neighboring

pixels

both

in

space

and

time

-LRB-

i.e.

in

this

frame

and

in

subsequent

or

previous

frames

-RRB-

This

means

that

their

values

can

be

predicted

to

some

extent

On

the

other

hand

phychovisual

redundancy

has

to

do

with

physical

limitations

of

the

human

eye

which

has

a

limited

response

to

find

spatial

detail

and

is

less

sensitive

to

detail

near

edges

or

shot-changes

Thus

the

encoding

process

may

be

able

to

minimize

the

bit-rate

while

maintaining

constant

quality

to

the

human

eye

at

the

decoded

picture

MPEG

uses

Discrete

Cosine

Transform

-LRB-

DCT

-RRB-

and

entropy

encoding

to

deal

with

spatial

redundancies

-LRB-

intraframe

coding

-RRB-

and

motion-compensation

and

motion-estimation

for

the

temporal

redundancies

-LRB-

interframe

coding

-RRB-

The

specific

quantization

matrices

that

are

used

take

into

account

the

phychovisual

redundancies

The

basic

units

that

the

MPEG

algorithm

uses

are

Block

A

block

is

the

smallest

coding

unit

in

the

MPEG

algorithm

It

is

made

up

of

pixels

and

can

be

one

of

three

types

luminance

-LRB-

Y

-RRB-

red

chrominance

-LRB-

Cr

-RRB-

and

blue

chrominance

-LRB-

Cb

-RRB-

The

block

is

the

basic

unit

in

intraframe

DCT

coded

frames

Macroblock

A

macroblock

is

the

basic

coding

unit

in

the

MPEG

algorithm

It

consists

of

a

pixel

segment

Since

MPEG

's

video

main

profile

uses

the

chroma

format

a

macroblock

consists

of

four

Y

one

Cr

and

one

Cb

blocks

It

is

the

motioncompensation

unit

Slice

A

slice

is

horizontal

strip

within

a

frame

and

it

is

the

main

processing

unit

in

MPEG

Coding

of

blocks

and

macroblocks

is

feasible

only

when

all

the

pixels

of

a

slice

are

available

Besides

coding

of

a

slice

is

being

done

independently

from

its

adjacent

slices

making

it

an

autonomous

unit

Thus

slices

serve

as

resyncronization

units

Picture

A

picture

in

MPEG

is

a

single

frame

in

a

video

sequence

Group-of-Pictures

The

Group-of-Pictures

-LRB-

GOP

-RRB-

is

simply

a

small

sequence

of

pictures

in

which

random

access

is

provided

Typical

values

are

and

pictures/group

The

GOP

concept

was

mandatory

in

the

standard

whereas

it

is

optional

in

the

standard

Sequence

The

sequence

consists

of

a

series

of

pictures

-LRB-

or

a

series

of

GOPs

if

there

are

-RRB-

The

basic

MPEG

algorithm

consists

of

the

following

stages

a

motion

compensation

stage

a

transformation

stage

a

lossy

quantization

stage

and

a

last

lossless

coding

stage

The

motion

compensation

stage

takes

the

difference

between

the

current

image

and

a

shifted

view

of

the

previous

one

The

transformation

stage

then

tries

to

concentrate

the

information

energy

into

the

first

transform

coefficients

The

quantization

step

that

follows

causes

a

loss

of

information

that

takes

into

account

psychovisual

limitations

of

the

human

eye

and

the

last

coding

stage

is

nothing

more

than

an

entropy

coding

process

that

further

compresses

the

data

MPEG

is

a

lossy

compression

scheme

since

the

reconstructed

picture

is

not

identical

to

the

original

If

it

were

lossless

then

the

compression

ratio

would

have

been

very

low

-LRB-

compared

to

that

it

is

typical

in

MPEG

-RRB-

since

the

least

significant

bits

of

each

color

component

become

progressively

more

random

thus

harder

to

code

Picture

types

in

MPEG

In

MPEG

-LRB-

both

and

-RRB-

there

are

three

types

of

pictures

that

are

defined

-LSB-

-RSB-

Intraframes

or

I-frames

These

are

pictures

that

are

coded

autonomously

without

the

need

of

a

reference

to

another

picture

Temporal

redundancy

is

not

taken

into

account

Backward

prediction

Forward

Prediction

Time

I-frame

B-frame

P-frame

Figure

Example

of

inter-dependence

among

various

picture

types

in

a

MPEG

video

sequence

Moderate

compression

is

achieved

by

exploiting

spatial

redundancy

An

I-frame

is

always

an

access

point

in

the

video

bit-stream

Predictive

or

P-frames

These

frames

are

coded

with

respect

to

a

previous

I

or

P-frame

using

a

motion-compensated

prediction

mechanism

The

coding

process

here

exploits

both

spatial

and

temporal

redundancies

Bidirectionally-predicted

or

B-frames

The

B-frames

use

both

previous

and

future

I

or

P-frames

as

a

reference

for

motion-estimation

and

compensation

They

achieve

the

highest

compression

ratios

Because

they

reference

both

past

and

future

frames

the

coder

has

to

reorder

the

pictures

that

are

involved

in

this

process

so

that

each

B-frame

is

produced

after

all

the

frames

it

references

This

introduces

a

reordering

delay

which

depends

on

the

interval

between

consecutive

B-frames

A

typical

MPEG

video

sequence

is

shown

in

Figure

The

I-frame

is

coded

first

then

the

next

P-frame

and

then

the

interpolated

-LRB-

B-frames

-RRB-

between

the

two

The

process

repeats

with

the

next

P-frame

and

B-frames

Intraframe

DCT

coding

The

video

energy

of

the

image

has

low

spatial

frequency

that

varies

very

slowly

with

time

and

so

a

transformation

can

concentrate

the

energy

in

very

few

coefficients

For

this

transformation

the

actual

image

is

divided

into

blocks

to

decrease

the

complexity

Every

block

-LRB-

-RRB-

is

transformed

according

to

a

two-dimensional

Discrete

Cosine

Transform

-LRB-

DCT

-RRB-

which

can

be

thought

as

a

one

dimensional

DCT

on

the

columns

and

a

one

dimensional

DCT

on

the

rows

Each

coefficient

is

associated

with

a

specific

function

of

horizontal

and

vertical

frequencies

and

its

value

-LRB-

after

the

transformation

-RRB-

indicates

the

contribution

of

these

frequencies

in

the

image

block

However

the

DCT

does

not

reduce

the

number

of

bits

required

from

the

block

representation

The

reduction

is

being

done

after

the

observation

that

the

distribution

of

coefficients

is

non-uniform

The

transformation

concentrates

as

much

of

the

video

energy

as

possible

into

the

low

frequencies

leading

to

many

coefficients

being

zero

or

almost

zero

The

compression

is

achieved

by

skipping

all

those

near

zero

coefficients

and

by

quantizing

and

variable-length

coding

the

remaining

ones

Quantization

The

quantization

stage

comes

after

the

DCT

transformation

stage

The

idea

here

is

to

transmit

the

DCT

coefficients

in

such

a

way

to

minimize

the

bit-rate

Quantization

reduces

the

number

of

possible

values

for

the

DCT

coefficients

reducing

the

required

number

of

bits

This

comes

from

observations

showing

that

numerical

precision

of

the

DCT

coefficients

may

be

reduced

without

affecting

image

quality

significantly

The

quantization

stage

takes

into

consideration

the

impact

of

this

transform

to

the

human

vision

Thus

each

coefficient

is

weighted

according

to

its

impact

on

the

human

eye

Practically

high-frequency

coefficients

are

more

coarsely

quantized

than

low-frequency

ones

Entropy

Coding

The

final

compression

stage

starts

with

the

serialization

of

the

quantized

DCT

coefficients

and

attempts

to

exploit

any

redundancy

left

The

way

the

serialization

is

done

affects

the

final

compression

The

DCT

coefficients

are

rearranged

in

a

zig-zag

manner

as

it

is

shown

in

Figure

The

scanning

starts

from

the

coefficient

with

the

lowest

frequency

-LRB-

DC

coefficient

-RRB-

and

follows

the

zig-zag

pattern

until

it

reaches

the

last

coefficient

In

there

is

an

alternate

scan

pattern

that

is

more

efficient

with

interlaced

video

signals

The

sequence

of

coefficients

is

then

entropy-coded

using

a

variable

length

code

-LRB-

VLC

-RRB-

DCT

Image

Samples

Block

-LRB-

-RRB-

Transform

Coefficients

DC

coef

Regular

Zig-Zag

Scan

Alternate

Scan

Figure

DCT

and

zig-zag

scan

-LRB-

regular

and

alternate

-RRB-

The

way

the

VLC

allocates

code

lengths

depends

on

the

probability

that

they

are

expected

to

occur

Motion-Compensated

Interframe

Prediction

Colocated

Macroblocks

Search

Area

I-frame

P-frame

Mv

Mh

Mv

Mh

Motion

Vectors

Best

match

Figure

Motion

Compensation

The

interframe

prediction

is

being

used

in

order

to

exploit

temporal

redundancies

found

in

the

video

sequence

It

is

used

in

both

B

and

P-frames

The

idea

is

to

check

the

displacement

of

the

various

macroblocks

and

to

encode

the

best

resulting

difference

-LRB-

see

figure

-RRB-

The

MPEG

syntax

specifies

how

to

represent

the

motion

information

one

or

two

motion

vectors

per

sub-block

of

the

picture

depending

on

the

type

of

motion

compensation

-LRB-

forward

or

backward-predicted

-RRB-

However

the

method

used

in

computing

the

motion

vectors

is

not

specified

This

can

be

done

either

exhaustively

or

using

different

techniques

depending

on

many

parameters

For

example

in

stationary

scenes

the

predictor

may

use

the

same

block

from

the

reference

frame

If

the

scene

is

not

stationary

then

one

way

to

compute

motion

vectors

is

to

find

the

difference

between

the

current

block

and

a

DCT

Q

VLC

IQ

IDCT

MCP

Video

in

coded

bitstream

DCT

Discrete

Cosine

Transform

Q

Quantization

IQ

Inverse

Quantization

IDCT

Inverse

DCT

MCP

Motion-Compensated

Prediction

VLC

Variable

Length

Coder

I-frame

P

or

B-frame

Figure

MPEG

encoder

-LRB-

from

-LSB-

-RSB-

-RRB-

block

that

is

shifted

appropriately

in

the

reference

frame

Block-matching

techniques

are

likely

to

be

used

for

this

purpose

The

actual

ways

of

computing

the

motion

vectors

is

left

to

the

implementor

The

prediction

is

based

on

the

encoded

pictures

and

not

on

the

original

ones

since

the

whole

encoding

process

is

lossy

The

whole

encoding

process

is

shown

figure

in

the

block-diagram

of

a

hypothetical

MPEG

encoder

Video

Features

The

standard

is

similar

to

but

has

extensions

to

cover

a

wider

range

of

applications

The

primary

application

targeted

during

the

definition

process

was

the

all-digital

transmission

of

broadcast

quality

video

at

coded

bit-rates

between

and

Mbits/sec

However

the

standard

proved

to

be

efficient

for

other

applications

also

that

need

higher

rates

such

as

HDTV

The

most

significant

enhancement

over

is

the

optimization

for

dealing

with

interlaced

pictures

Some

of

the

important

differences

between

and

standards

are

summarized

below

Simple

Main

SNR

scalable

Spatially

scalable

High

profile

profile

profile

profile

profile

High

Level

no

yes

no

no

yes

Level

no

yes

no

yes

yes

Main

Level

yes

yes

yes

no

yes

Low

Level

no

yes

yes

no

no

Table

Profiles

and

levels

supported

in

-LRB-

from

-LSB-

-RSB-

-RRB-

is

optimized

for

interlaced

pictures

and

can

represent

progressive

video

sequences

also

whereas

's

syntax

is

strictly

meant

for

progressive

sequences

and

was

optimized

for

CD-ROM

or

applications

at

about

Mbit/sec

has

more

profiles

and

layers

-LRB-

see

below

-RRB-

supports

scalable

and

non-scalable

profiles

Quality

varies

from

broadcast

to

studio

Additional

Prediction

codes

for

motion-compensation

were

introduced

as

well

as

more

chroma

formats

Several

other

more

subtle

enhancements

-LRB-

adaptive

quantization

DCT

DC

precision

non-linear

quantization

VLC

tables

improved

mismatch

control

etc.

-RRB-

were

introduced

that

improved

the

coding

efficiency

even

for

progressive

pictures

Profiles

and

Levels

has

different

profiles

and

levels

depending

on

the

targeted

application

The

profiles

define

different

subsets

in

the

syntax

based

on

the

encoding

scheme

while

the

levels

refer

primarily

to

the

resolution

of

the

video

signal

produced

Initially

the

standard

had

three

profiles

-LRB-

simple

main

and

next

-RRB-

and

four

levels

-LRB-

High

type

High

type

Main

and

Low

-RRB-

As

an

example

the

low

level

refers

to

a

standard

image

format

video

with

resolution

of

-LRB-

SIF

format

-RRB-

The

main

level

is

targeted

for

quality

whereas

the

high

level

is

intended

for

HDTV

More

profiles

were

added

later

The

complete

set

of

profiles

now

consists

of

the

simple

main

SNR

scalable

spatially

scalable

and

high

Level

Max

sampling

frames

Max

Application

dimensions

second

bit-rate

Low

Mb/s

CIF

consumer

tape

equiv

Main

Mb/s

CCIR

studio

TV

Mb/s

consumer

HDTV

High

Mb/s

production

SMPTE

std

Table

Main

Profile

profiles

whereas

the

levels

consist

of

the

high

main

and

low

levels

The

new

scalable

profiles

can

work

very

efficiently

in

a

network

environment

since

whenever

there

is

congestion

the

enhancement

layer

can

be

dropped

without

affecting

the

basic

quality

The

most

important

profile

that

was

first

standardized

is

the

main

profile

The

importance

of

this

profile

as

noted

in

Table

has

to

do

with

its

ability

to

handle

images

from

the

lowest

level

-LRB-

quality

-RRB-

to

the

highest

making

it

suitable

for

HDTV

application

Typical

bit-rates

and

targeted

applications

for

the

main

profile

are

shown

in

Table

Systems

Layer

The

MPEG

standard

defines

a

way

of

multiplexing

more

than

one

stream

-LRB-

video

or

audio

-RRB-

in

order

to

produce

a

program

A

program

is

considered

a

single

broadcast

entity

service

For

example

The

O'clock

news

is

considered

a

program

that

has

individual

streams

of

video

audio

and

maybe

other

data

such

as

caption

text

The

standard

defines

the

way

the

different

streams

are

multiplexed

A

program

consists

of

one

or

more

elementary

streams

Elementary

streams

are

the

basic

entities

of

a

program

Typical

examples

are

video

or

audio

They

may

or

may

not

be

MPEG

encoded

-LRB-

or

-RRB-

since

the

standard

gives

the

flexibility

of

having

streams

with

private

data

i.e.

streams

whose

content

is

not

specified

by

MPEG

Such

streams

may

carry

teletext

or

other

service

information

that

is

offered

by

a

specific

service

provider

Two

schemes

are

used

in

the

standard

for

the

multiplexing

process

Program

Stream

This

is

analogous

and

similar

to

Systems

layer

It

is

a

grouping

of

video

audio

and

data

elementary

streams

that

have

a

common

time

base

and

are

grouped

together

for

delivery

in

a

specific

environment

Each

Program

Stream

consists

of

only

one

program

The

Program

Stream

is

often

called

Program

Stream

multiplex

Transport

Stream

The

Transport

Stream

combines

one

or

more

programs

into

a

single

stream

The

programs

may

or

may

not

have

a

common

time

base

This

type

of

multiplexing

is

used

in

environments

where

errors

are

likely

and

is

the

default

choice

for

transport

over

a

computer

network

The

Transport

Stream

is

often

called

Transport

Stream

multiplex

Each

of

the

above

schemes

is

optimized

for

specific

environments

The

Program

Stream

is

intended

for

the

storage

and

retrieval

of

program

material

from

digital

storage

media

It

is

intended

for

use

in

error-free

environments

for

two

reasons

First

it

consists

of

packets

that

are

relatively

long

-LRB-

several

kilobytes

is

typical

-RRB-

so

the

corruption

of

a

packet

may

lead

to

the

loss

of

an

entire

video

frame

Second

the

packets

within

the

Program

Stream

context

may

be

of

variable

length

making

it

difficult

for

the

decoder

to

predict

the

start

and

finish

points

of

the

various

packets

The

decoder

has

to

rely

on

the

packet-length

field

found

in

the

packet

header

If

this

length

value

is

corrupted

loss

of

synchronization

may

occur

at

the

decoder

end

The

DVD

standard

will

make

use

of

the

Program

Stream

multiplex

The

Transport

Stream

is

intended

for

multi-program

applications

such

as

broadcasting

and

for

non

error-free

environments

A

Transport

Stream

may

have

one

or

more

programs

The

synchronization

problem

that

is

obvious

in

the

Program

Stream

-LRB-

difficulty

in

detecting

the

starting

and

ending

bits

of

a

packet

in

the

case

of

an

error

-RRB-

does

not

exist

here

since

the

packets

have

fixed

length

Besides

all

the

packets

are

given

extra

error

protection

using

methods

such

as

Reed-Solomon

encoding

It

is

clear

that

this

multiplex

is

the

choice

in

the

case

of

transporting

over

computer

networks

However

the

Transport

Stream

is

more

complex

and

so

more

difficult

to

produce

and

demultiplex

than

the

Program

Stream

Frame

-LRB-

-RRB-

Frame

-LRB-

-RRB-

Frame

-LRB-

-RRB-

Frame

-LRB-

-RRB-

Frame

-LRB-

-RRB-

Uncompressed

Video

Stream

-LRB-

-RRB-

I-frame

B-frame

B-frame

P-frame

B-frame

Compression

Video

Elementary

Stream

Presentation

Unit

Access

Unit

Figure

Creation

of

elementary

stream

from

uncompressed

data

-LRB-

from

-LSB-

-RSB-

-RRB-

and

does

not

follow

the

format

of

the

well-established

Systems

layer

as

is

case

for

the

latter

We

must

note

here

that

Program

and

Transport

Streams

are

designed

for

different

applications

and

their

definitions

do

not

follow

a

layered

model

It

is

possible

sometimes

to

convert

from

one

to

the

other

but

one

is

not

a

subset

or

a

superset

of

the

other

More

specifically

we

can

extract

the

contents

of

a

program

in

the

Transport

Stream

format

and

form

a

valid

Program

Stream

Both

Program

Stream

and

Transport

Stream

layers

deal

with

special

entities

The

whole

process

starts

from

the

uncompressed

data

which

comes

directly

from

the

actual

video

sequence

Each

frame

is

uncompressed

and

is

called

a

presentation

unit

The

encoder

compresses

each

frame

according

to

the

standard

and

each

frame

is

now

called

an

access

unit

The

stream

produced

by

the

access

units

is

called

elementary

stream

in

MPEG

terminology

This

process

is

shown

in

Figure

Basically

the

MPEG

encoding

transforms

the

presentation

units

to

access

units

which

now

form

the

video

sequence

The

same

procedure

applies

to

audio

also

After

the

creation

of

the

elementary

stream

the

next

step

is

its

packetization

The

Video

Source

Audio

Source

Elementary

Encoder

Packetizer

Packetizer

Elementary

Encoder

Systems

Layer

MUX

Uncompressed

Stream

MPEG

Encoded

Stream

-LRB-

elementary

stream

-RRB-

Packetized

Elementary

Stream

Transport

Stream

Figure

Simplified

overview

of

Systems

layer

-LRB-

Transport

Stream

case

-RRB-

resulting

stream

is

now

called

packetized

elementary

stream

and

the

packets

are

called

PES

packets

The

way

the

PES

packets

are

formed

is

independent

from

the

actual

multiplexing

procedure

-LRB-

Program

or

Transport

Stream

-RRB-

A

simplified

overview

of

this

process

for

the

Transport

Stream

case

is

shown

in

Figure

A

PES

packet

consists

of

a

header

and

a

payload

The

payload

is

nothing

more

than

data

bytes

taken

sequentially

from

the

original

elementary

stream

There

is

no

specific

format

for

encapsulating

data

bytes

in

a

PES

packet

i.e.

there

is

no

requirement

to

align

the

start

of

the

access

units

and

the

start

of

the

PES

packets

This

means

that

an

access

unit

may

start

at

any

point

within

a

PES

packet

as

shown

in

Figure

In

addition

more

than

one

access

unit

may

be

present

in

one

PES

packet

The

way

this

packetization

is

done

however

can

significantly

affect

the

nature

of

the

actual

packetized

stream

For

example

if

each

PES

packet

contains

exactly

one

video

frame

-LRB-

in

the

case

of

a

video

elementary

stream

-RRB-

the

decoder

can

determine

the

start

and

end

of

a

frame

easily

This

however

requires

use

of

variable

size

packets

On

the

other

hand

if

the

PES

packets

are

of

fixed

length

then

the

packetization

process

at

the

encoder

is

simpler

The

maximum

length

of

a

PES

packet

is

fixed

at

Kbytes

with

the

only

exception

in

the

case

of

a

video

packetized

elementary

stream

when

carried

over

a

Transport

Stream

where

it

can

be

arbitrary

PES

packets

have

special

identifiers

to

distinguish

themselves

from

PES

packets

be

Access

unit

Elementary

Stream

Packetized

Elementary

Stream

-LRB-

PES

-RRB-

PES

packet

Packetization

using

fixed

size

PES

packets

Elementary

Stream

Packetized

Elementary

Stream

-LRB-

PES

-RRB-

Packetization

using

variable

size

PES

packets

Figure

Generation

of

a

packetized

elementary

stream

from

an

elementary

stream

longing

to

other

elementary

streams

They

may

also

carry

two

different

timestamps

that

are

used

at

the

decoder

end

for

the

correct

synchronization

of

related

elementary

streams

the

Presentation

Timestamp

-LRB-

PTS

-RRB-

and

the

Decoding

Timestamp

-LRB-

DTS

-RRB-

The

way

these

timestamps

are

used

is

described

later

Transport

Stream

The

Transport

Stream

multiplex

is

intended

for

noisy

environments

A

Transport

Stream

may

be

constructed

by

any

method

that

results

in

a

valid

stream

For

example

it

may

contain

one

or

more

programs

from

elementary

streams

or

programs

that

come

directly

from

Program

Streams

or

even

programs

that

come

from

other

Transport

Streams

which

may

contain

programs

etc.

The

Transport

Stream

multiplex

is

designed

so

that

some

operations

are

possible

with

minimum

effort

Some

of

these

are

Retrieve

the

coded

data

from

one

program

within

the

Transport

Stream

decode

it

and

present

it

to

the

viewer

Extract

the

Transport

Stream

packets

from

one

program

within

the

Transport

Stream

and

produce

a

new

Transport

Stream

with

only

this

program

in

it

Extract

the

transport

packets

of

one

or

more

programs

from

one

or

more

Transport

Streams

and

produce

a

new

Transport

Stream

Extract

the

contents

of

a

program

in

a

Transport

Stream

and

produce

a

Program

Stream

Convert

a

Program

Stream

to

a

Transport

Stream

for

transport

over

a

lossy

environment

and

then

convert

the

Transport

Stream

into

a

new

Program

Stream

that

will

be

valid

but

may

not

be

identical

to

the

original

one

The

Transport

Stream

coding

allows

combining

one

or

more

groups

of

one

or

more

elementary

streams

into

a

single

stream

The

different

elementary

streams

are

then

multiplexed

along

with

information

that

allows

them

to

be

played

in

synchronism

The

Transport

Stream

consists

of

short

fixed-length

packets

A

transport

packet

has

a

length

of

bytes

It

comprises

a

header

followed

by

an

adaptation

field

or

a

payload

or

both

The

PES

packets

from

the

various

elementary

streams

are

each

divided

among

the

payload

parts

of

a

number

of

transport

packets

However

there

are

two

constraints

The

first

byte

of

a

PES

packet

must

be

the

first

byte

of

a

transport

packet

payload

Each

transport

packet

must

contain

data

from

only

one

PES-packet

i.e.

a

single

transport

packet

refers

to

a

specific

PES

stream

and

thus

to

a

specific

elementary

stream

Because

of

the

two

constraints

stated

above

a

transport

packet

may

not

be

completely

full

since

it

is

unlikely

that

a

PES-packet

will

fit

exactly

into

an

integer

number

of

transport

packets

The

stuffing

bytes

needed

to

fill

the

packet

are

placed

in

the

adaptation

field

-LRB-

see

Figure

-RRB-

except

for

the

case

of

a

transport

packet

carrying

Program

Specific

Information

-LRB-

PSI

-RRB-

which

may

be

placed

at

the

end

of

the

packet

The

amount

of

this

stuffing

can

be

PES

packet

payload

transport

packets

PES

packets

Header

Payload

Adaptation

field

-LRB-

used

for

stuffing

here

-RRB-

PES

packet

header

Figure

Transport

Stream

generation

from

PES

packets

-LRB-

from

-LSB-

-RSB-

-RRB-

minimized

by

careful

selection

of

the

PES

packet

length

Usually

long

PES

packets

are

better

in

terms

of

bandwidth

efficiency

but

are

more

prone

to

synchronization

problems

This

trade-off

is

usually

left

to

the

designer

There

is

no

restriction

in

the

order

in

which

transport

packets

filled

from

different

elementary

streams

appear

in

the

multiplex

except

that

the

chronological

order

of

packets

belonging

to

the

same

elementary

stream

must

be

preserved

Transport

packets

may

also

contain

Program

Specific

Information

-LRB-

PSI

-RRB-

tables

used

for

the

mapping

of

programs

and

the

association

with

elementary

streams

and

for

many

more

functions

such

as

scrambling

There

are

also

special

transport

packets

that

may

be

placed

in

the

stream

in

order

to

fill

in

holes

in

the

capacity

for

Constant

Bit-Rate

-LRB-

CBR

-RRB-

Transport

Streams

Before

continuing

a

description

of

the

various

fields

in

the

transport

packet

header

is

needed

Description

of

transport

packet

header

The

transport

packet

header

contains

bytes

as

shown

in

Figure

The

most

important

fields

are

described

below

sync

byte

The

sync

byte

is

actually

the

first

byte

of

a

transport

packet

and

is

used

to

synchronize

the

decoder

The

value

chosen

is

-LRB-

hex

-RRB-

Although

this

value

may

Adaptation

field

-LRB-

may

not

be

present

-RRB-

Payload

-LRB-

may

not

be

present

-RRB-

Header

bytes

transport

priority

PID

various

flags

-LRB-

-RRB-

PCR

-LRB-

if

is

set

-RRB-

other

fields

depending

on

whether

various

flags

are

set

Figure

Structure

of

a

transport

packet

appear

within

the

payload

the

fact

that

this

byte

occurs

every

bytes

facilitates

the

identification

of

the

start

of

a

new

transport

packet

payload

unit

start

indicator

This

indicator

has

normative

meaning

when

the

transport

packet

carries

PES

packets

or

PSI

data

For

example

it

is

set

when

the

start

of

a

PES-packet

occurs

in

this

transport

packet

PID

This

is

the

packet

identifier

that

has

a

unique

value

for

each

stream

This

field

is

used

for

demultiplexing

the

Transport

Stream

into

packetized

elementary

streams

transport

priority

This

indicator

is

used

in

order

to

prioritize

transport

packets

having

the

same

PID

values

i.e.

prioritize

the

data

within

an

elementary

stream

However

depending

on

the

application

this

field

may

be

coded

regardless

of

the

PID

or

within

one

PID

only

For

example

prioritization

of

the

base

layer

over

the

enhancement

layer

in

a

scalable

encoder

can

be

done

very

easily

using

this

field

continuity

counter

This

counter

gets

incremented

each

time

a

new

transport

packet

of

the

same

elementary

stream

is

generated

This

gives

the

decoder

a

way

of

checking

for

the

loss

of

transport

packets

so

that

error-concealment

techniques

may

be

invoked

for

error

recovery

Program

Specific

Information

In

the

Transport

Stream

multiplex

each

elementary

stream

is

assigned

a

unique

PID

value

However

the

decoder

must

be

able

to

determine

the

number

of

programs

being

carried

by

the

stream

and

the

elementary

streams

each

program

contains

This

information

is

being

carried

in

special

Program

Specific

Information

-LRB-

PSI

-RRB-

transport

packets

and

must

be

present

in

every

Transport

Stream

Systems

layer

specifies

four

types

of

PSI

tables

The

Program

Association

Table

-LRB-

PAT

-RRB-

The

Program

Map

Table

-LRB-

PMT

-RRB-

The

Network

Information

Table

-LRB-

NIT

-RRB-

The

Conditional

Access

Table

-LRB-

CAT

-RRB-

The

first

table

that

the

decoder

must

process

is

the

Program

Association

Table

-LRB-

PAT

-RRB-

This

table

is

transmitted

in

transport

packets

with

PID

equal

to

-LRB-

hex

-RRB-

and

contains

a

complete

list

of

all

the

programs

available

in

the

Transport

Stream

along

with

the

PID

value

of

the

corresponding

Program

Map

Table

-LRB-

PMT

-RRB-

for

each

program

The

program

number

zero

has

a

special

meaning

within

the

PAT

context

It

is

used

to

point

to

the

Network

Information

Table

-LRB-

NIT

-RRB-

This

table

is

optional

and

its

contents

are

private

-LRB-

not

defined

by

the

MPEG

standard

-RRB-

However

it

can

provide

useful

information

about

the

physical

network

such

as

channel

frequencies

service

originator

and

service

name

The

last

table

defined

in

the

Systems

layer

is

the

Conditional

Access

Table

-LRB-

CAT

-RRB-

This

table

must

be

sent

in

the

case

when

an

elementary

stream

is

scrambled

The

table

provides

details

of

the

scrambling

system

in

use

and

provides

the

PID

values

of

the

transport

packets

that

contain

the

conditional

access

management

information

However

the

Systems

layer

format

does

not

specify

the

actual

format

of

this

information

Timing

Model

The

standard

assumes

a

timing

model

in

which

the

end-to-end

delay

from

the

signal

input

of

the

encoder

to

the

signal

output

from

the

decoder

is

a

constant

This

delay

is

the

sum

of

encoding

encoder

buffering

multiplexing

communication

or

storage

demultiplexing

decoder

buffering

decoding

and

presentation

delays

The

system

stream

coding

contains

timing

information

which

can

be

used

to

implement

systems

which

embody

constant

end-to-end

delay

It

is

possible

to

implement

decoders

that

do

not

follow

this

model

exactly

but

then

it

is

their

responsibility

to

perform

in

an

acceptable

manner

All

timing

is

defined

in

terms

of

a

common

system

clock

referred

to

as

the

System

Time

Clock

-LRB-

STC

-RRB-

The

demultiplexed

access

units

at

the

decoder

side

are

forwarded

using

an

explicit

timestamp

carried

by

the

access

unit

that

instructs

the

decoder

to

decode

it

or

present

it

at

the

specified

time

A

decoder

that

makes

correct

use

of

these

timestamps

is

guaranteed

to

keep

the

streams

in

synchronism

without

overflow

or

underflow

of

its

buffer

The

allocation

of

these

timestamps

is

done

at

the

encoder

side

The

encoder

keeps

track

of

the

current

time

via

its

System

Time

Clock

-LRB-

STC

-RRB-

The

time

is

not

measured

in

hours

and

minutes

but

in

units

of

MHz

The

specification

for

the

oscillator

at

the

encoder

end

is

MHz

Hz

system

clock

frequency

MHz

Hz

Rate

of

change

of

system

clock

frequency

Hz/sec

-LRB-

-RRB-

The

access

units

that

form

a

program

are

assigned

timestamps

based

on

this

STC

However

two

programs

within

the

same

Transport

Stream

may

use

independent

references

clocks

The

timestamps

assigned

are

of

two

types

the

first

and

most

fundamental

type

is

the

Presentation

Timestamp

-LRB-

PTS

-RRB-

which

specifies

the

time

at

which

an

access

unit

should

be

removed

from

the

decoder

buffer

decoded

and

presented

The

other

type

of

timestamp

that

may

or

may

not

exist

in

the

stream

is

the

Decoding

Timestamp

-LRB-

DTS

-RRB-

and

represents

the

time

at

which

the

access

unit

has

to

be

sent

to

the

decoder

from

its

buffer

in

order

to

be

decoded

but

not

presented

Thus

whenever

there

is

a

DTS

timestamp

a

PTS

timestamp

must

also

exist

and

must

be

greater

The

DTS

timestamp

is

usually

found

in

the

I

or

P-frames

of

a

video

elementary

stream

Both

timestamps

are

found

in

corresponding

fields

time

Transport

Rate

Figure

Piecewise

linearity

in

Transport

Rate

within

the

PES

packet

structure

and

are

given

in

terms

of

kHz

units

Note

that

these

timestamps

are

not

equal

to

the

current

STC

The

reason

is

obvious

The

PTS

timestamp

for

example

represents

the

time

at

which

the

access

unit

will

be

decoded

at

the

decoder

This

must

occur

some

time

in

the

future

Thus

when

a

timestamp

is

allocated

to

an

access

unit

by

the

multiplexer

it

will

always

be

offset

into

the

future

with

respect

to

the

current

time

How

far

into

the

future

a

timestamp

should

be

offset

depends

on

a

number

of

factors

such

as

the

decoder

's

buffer

size

bit-rate

etc.

The

offset

must

be

large

enough

to

allow

sufficient

time

for

the

access

unit

to

pass

through

the

encoder

buffer

arrive

at

the

decoder

and

be

written

into

the

decoder

buffer

In

addition

the

System

Time

Clock

is

sampled

regularly

and

the

samples

are

inserted

in

the

Transport

Stream

Its

value

is

stored

in

the

Program

Clock

Reference

-LRB-

PCR

-RRB-

field

found

in

the

adaptation

field

within

the

transport

packet

syntax

The

standard

defines

the

minimum

frequency

of

sampling

of

the

STC

A

PCR

value

must

appear

in

the

Transport

Stream

at

least

every

seconds

-LRB-

Hz

-RRB-

The

fact

that

it

is

not

necessary

to

allocate

PTS

or

DTS

values

per

access

unit

since

the

decoder

will

usually

know

the

rate

of

the

elementary

stream

may

introduce

synchronization

problems

while

decoding

the

corresponding

elementary

stream

To

ensure

long-term

synchronization

the

standard

demands

that

a

PTS

should

occur

at

least

every

seconds

in

the

case

of

a

video

or

audio

PES

The

transport

rate

of

a

Transport

Stream

may

be

either

fixed

or

variable

However

it

has

a

very

important

property

it

is

piecewise

constant

-LRB-

see

Figure

-RRB-

The

rate

might

change

only

at

the

instants

when

a

new

PCR

value

is

received

at

the

decoder

and

is

computed

by

the

formula

transport

rate

-LRB-

i

-RRB-

-LRB-

no

of

bytes

between

PCRs

-RRB-

system

clock

frequency

PCRnew

PCRold

-LRB-

-RRB-

Thus

during

the

time

interval

between

reception

of

two

PCRs

the

rate

remains

constant

Transport

Streams

may

contain

multiple

programs

which

have

independent

time

bases

Separate

sets

of

PCRs

are

required

for

each

independent

program

and

therefore

the

PCRs

can

not

be

co-located

Since

the

transport

rate

is

piecewise

linear

for

each

program

if

the

transport

stream

rate

is

variable

it

can

only

vary

at

the

PCRs

of

the

program

under

consideration

Since

the

PCRs

and

therefore

the

points

in

the

stream

where

the

rate

varies

are

not

co-located

the

rate

of

the

Transport

Stream

would

have

to

differ

depending

on

which

program

is

being

decoded

Therefore

it

is

not

possible

to

construct

a

consistent

decoding

delivery

schedule

for

an

entire

Transport

Stream

when

the

stream

contains

multiple

programs

with

independent

time

bases

and

the

rate

of

the

Transport

Stream

is

variable

The

right

alternative

in

this

case

is

to

construct

a

CBR

Transport

Stream

with

multiple

variable

rate

programs

System

Time

Clock

-LRB-

STC

-RRB-

recovery

in

the

decoder

The

PCR

values

found

regularly

in

the

Transport

Stream

can

be

utilized

to

implement

clock

reconstruction

control

loops

in

decoders

with

sufficient

accuracy

for

many

applications

The

clock

references

that

the

decoder

receives

in

a

Transport

Stream

are

the

Program

Clock

References

-LRB-

PCRs

-RRB-

The

PCR

in

the

Transport

Stream

gives

the

clock

reference

for

one

program

As

observed

earlier

a

Transport

Stream

may

contain

multiple

programs

and

each

may

have

an

independent

time

base

and

a

separate

set

of

PCRs

In

an

ideally

constructed

and

delivered

Transport

Stream

each

PCR

arrives

at

the

decoder

at

precisely

the

time

indicated

by

the

value

of

that

PCR

If

the

decoder

's

clock

matches

exactly

that

of

the

encoder

then

the

decoding

and

presentation

of

video

and

audio

will

automatically

have

the

same

rate

as

those

at

the

encoder

With

matched

Subtractor

LPF

gain

VCO

STC

Counter

System

Time

Clock

System

Clock

Frequency

PCR

e

f

Figure

Clock

recovery

using

a

Phase-Locked

Loop

-LRB-

PLL

-RRB-

-LRB-

from

-LSB-

-RSB-

-RRB-

encoder

and

decoder

clock

frequencies

any

correct

PCR

can

be

used

in

order

to

set

the

value

of

the

decoder

's

System

Time

Clock

-LRB-

STC

-RRB-

and

from

that

time

on

the

decoder

's

STC

will

follow

that

of

the

encoder

's

without

the

need

for

further

adjustments

-LRB-

with

a

constant

phase

difference

corresponding

to

the

delay

between

the

encoder

and

decoder

-RRB-

However

this

is

not

the

case

in

real

systems

where

the

delays

are

not

constant

In

practice

the

decoder

's

free-running

system

clock

frequency

will

not

match

that

of

the

encoder

This

can

result

in

either

buffer

overflow

or

underflow

at

the

decoder

The

common

way

of

dealing

with

this

problem

is

by

synchronizing

the

decoder

's

clock

to

the

reference

clocks

-LRB-

PCRs

-RRB-

found

in

the

data

stream

This

can

be

done

using

a

phase-locked

loop

-LRB-

PLL

-RRB-

A

simple

PLL

is

shown

in

Figure

This

PLL

works

as

follows

Initially

the

PLL

waits

for

the

reception

of

the

new

time

base

This

value

-LRB-

it

is

the

first

PCR

received

by

the

program

being

decoded

-RRB-

is

loaded

in

the

local

STC

counter

and

the

PLL

starts

operating

in

a

closed-loop

fashion

When

a

new

PCR

is

received

at

the

decoder

its

value

is

compared

with

the

value

of

the

local

STC

The

difference

gives

an

error

term

e

This

error

term

is

then

sent

to

a

low-pass

filter

-LRB-

LPF

-RRB-

which

is

designed

according

to

the

specific

application

The

output

of

the

LPF

controls

its

instantaneous

frequency

of

a

voltage-controlled

oscillator

-LRB-

VCO

-RRB-

whose

output

provide

the

decoder

's

system

clock

frequency

The

VCO

's

central

frequency

is

fixed

at

MHz

The

STC

counter

has

two

parts

The

first

part

of

the

counter

counts

kHz

ticks

of

the

decoder

system

clock

and

the

second

part

counts

offset

in

MHz

ticks

within

a

kHz

tick

The

first

part

is

used

for

comparison

with

the

PTS

and

DTS

values

of

the

various

access

units

whereas

both

parts

are

used

by

the

PLL

The

same

procedure

repeats

until

the

PLL

becomes

locked

and

then

the

error

term

e

converges

to

a

constant

value

With

the

values

of

e

converging

to

a

constant

variations

in

the

instantaneous

VCO

frequency

become

essentially

zero

The

rate

of

change

of

the

VCO

frequency

i.e.

the

frequency

slew

rate

can

be

controlled

strictly

by

the

design

of

the

low-pass

filter

In

general

the

VCO

slew

rate

must

be

designed

to

meet

application

requirements

In

the

case

that

the

initial

frequency

of

the

VCO

is

close

enough

to

the

correct

one

the

decoder

may

operate

satisfactorily

as

soon

as

the

STC

is

initialized

correctly

and

the

buffer

occupancy

remains

constant

If

the

frequencies

differ

there

is

an

amount

of

time

before

the

decoder

's

STC

frequency

is

locked

which

determines

the

additional

amount

of

buffer

size

-LRB-

and

therefore

the

latency

-RRB-

needed

In

environments

where

a

significant

amount

of

jitter

is

present

in

the

received

clock

reference

time

stamps

-LRB-

PCRs

-RRB-

there

are

several

choices

for

decoder

designers

depending

on

the

requirements

for

the

decoder

's

output

signal

characteristics

Different

applications

may

have

different

requirements

for

the

accuracy

and

stability

of

the

recovered

system

clock

One

large

category

of

applications

may

be

considered

where

the

reconstructed

system

clock

is

used

directly

to

synthesize

a

chroma

sub-carrier

for

use

in

composite

video

In

this

case

the

chroma

sub-carrier

the

pixel

clock

and

the

picture

rate

all

have

exactly

specified

ratio

and

all

of

these

have

a

defined

relationship

to

the

system

clock

The

composite

video

sub-carrier

must

have

at

least

sufficient

accuracy

and

stability

that

any

normal

television

receiver

's

chroma

sub-carrier

PLL

can

lock

to

the

sub-carrier

and

the

chroma

signals

which

are

demodulated

using

the

recovered

sub-carrier

do

not

show

any

visible

chrominance

phase

artifacts

In

the

case

the

application

has

to

meet

NTSC

PAL

or

SECAM

specifications

the

requirements

are

even

more

stringent

For

example

NTSC

requires

a

sub-carrier

accuracy

of

ppm

with

a

maximum

long

term

drift

of

Hz/sec

However

there

might

be

applications

in

which

the

requirements

can

be

relaxed

significantly

For

example

when

picture

and

audio

sample

slipping

is

allowed

i.e.

each

picture

and

each

audio

sample

may

not

be

presented

exactly

once

the

system

clock

may

have

loose

accuracy

and

stability

requirements

In

this

case

the

decoder

need

not

use

a

PLL

but

may

operate

from

a

free-running

clock

There

is

another

large

category

of

applications

in

which

the

data

stream

must

be

transported

over

a

communication

network

The

problem

that

arises

in

this

case

is

related

to

the

jitter

imposed

by

the

network

However

methods

of

dealing

with

this

problem

have

been

presented

in

terms

of

smoothing

this

jitter

via

additional

buffering

-LRB-

dejittering

buffer

-LSB-

-RSB-

-RRB-

In

the

case

of

Transport

Streams

and

if

we

assume

that

the

stream

is

CBR

this

can

be

done

by

buffering

the

incoming

bit-stream

and

by

emptying

this

buffer

at

constant

rate

-LRB-

the

Transport

Stream

rate

-RRB-

in

such

a

way

that

the

buffer

does

not

overflow

or

underflow

However

in

the

case

of

a

variable

rate

Transport

Stream

this

is

very

difficult

since

for

constant

average

delay

through

the

network

the

dejittering

buffer

occupancy

varies

with

the

data

rate

The

rate

information

can

be

determined

from

the

PCR

values

in

the

stream

using

Eq

-LRB-

-RRB-

However

the

change

in

the

transport

rate

may

not

be

determined

exactly

Alternative

approaches

for

that

include

the

use

of

a

PLL

to

provide

constant

average

delay

through

the

buffer

or

the

use

of

more

than

one

cascaded

clock

recovery

PLLs

Although

this

problem

is

not

addressed

in

this

thesis

we

deal

with

the

clock

recovery

problem

at

the

decoder

end

using

a

single

PLL

Audiovisual

Formats

and

Requirements

In

this

chapter

the

various

video

standards

will

be

presented

first

along

with

their

clock

requirements

The

requirements

from

the

networking

point

of

view

will

be

examined

next

and

the

chapter

will

close

with

a

presentation

of

the

perceptual

requirements

from

a

viewer

's

standpoint

Video

Standards

During

the

evolution

of

television

three

major

analog

video

standards

were

developed

-LSB-

-RSB-

These

standards

are

being

used

today

for

TV

broadcasting

and

they

are

NTSC

PAL

SECAM

The

NTSC

standard

is

being

used

in

North

America

and

Japan

and

was

proposed

by

the

National

Television

Systems

Committee

-LRB-

NTSC

-RRB-

NTSC

's

video

signal

is

composite

transmitted

as

intensity

and

two

color

difference

signals

-LRB-

Y

I

and

Q

-RRB-

Each

frame

consists

of

lines

and

has

an

aspect

of

The

field

is

Hz

and

the

frame

rate

is

Hz

The

effective

resolution

is

since

a

small

portion

of

the

total

bandwidth

is

used

for

synchronization

purposes

The

PAL

standard

-LRB-

Phase

Alternate

Line

-RRB-

which

is

used

primarily

in

Europe

Asia

Australia

Brazil

and

Argentina

uses

a

composite

color

system

similar

to

NTSC

The

difference

here

is

that

the

color

difference

signals

alternate

phase

at

the

horizontal

line

rate

Thus

PAL

achieves

better

synchronization

than

NTSC

The

video

frame

in

this

format

consists

of

lines

whereas

the

field

rate

is

Hz

-LRB-

or

frame

rate

of

Hz

-RRB-

The

aspect

ratio

is

again

and

the

effective

resolution

is

-LRB-

after

extracting

the

overhead

because

of

synchronization

-RRB-

PAL

has

a

number

of

different

versions

-LRB-

PAL

M

B

D

etc.

-RRB-

ratio

of

width

to

height

in

a

frame

an

interlaced

frame

environment

a

frame

usually

consists

of

fields

Advantages

Disadvantages

NTSC

High

frame

rate

Lower

number

of

scan

lines

reduces

visible

flicker

Atomic

color

edits

Smaller

luminance

signal

bandwidth

Less

inherent

picture

noise

Susceptibility

to

hue

fluctuation

PAL

Greater

number

of

scan

lines

More

flicker

Wider

luminance

signal

bandwidth

Lower

signal

to

noise

ratio

Stable

hues

Loss

of

color

editing

accuracy

SECAM

Stable

hues

and

constant

saturation

Greater

flicker

Higher

number

of

scan

lines

Patterning

effects

Table

Comparison

of

the

three

basic

video

standards

SECAM

-LRB-

SEquential

Couleur

Avec

Memoire

-RRB-

is

the

third

standard

adopted

by

France

to

protect

their

domestic

industry

SECAM

has

the

same

frame

and

field

rates

as

the

PAL

and

essentially

the

same

resolution

and

aspect

ratio

However

the

difference

is

in

the

transmission

frequencies

and

the

coding

of

the

color

components

A

comparison

between

these

standards

is

given

in

Table

Clock

Requirements

The

input

signal

to

a

TV

set

is

a

composite

signal

The

demodulator

in

the

TV

set

-LRB-

Figure

-RRB-

has

to

extract

clock

information

from

this

signal

for

the

color

sub-carrier

regeneration

process

The

frequency

requirements

for

NTSC

specify

a

tolerance

of

Hz

-LRB-

which

corresponds

to

ppm

-RRB-

-LSB-

-RSB-

The

central

sub-carrier

frequency

is

MHz

-LRB-

or

exactly

-LRB-

-RRB-

MHz

-RRB-

The

corresponding

values

for

NTSC

and

other

composite

signals

are

given

in

Table

The

requirements

above

define

the

precision

of

the

oscillators

for

the

modulator

and

thus

the

minimum

lock

range

for

the

PLL

at

the

receiver

end

There

are

also

requirements

for

the

short

and

long-term

frequency

variations

The

maximum

short-term

frequency

variation

for

a

NTSC

signal

is

Hz

within

a

line

-LRB-

or

usdelay

chroma

suppresion

chroma

selection

burst

blanking

burst

selection

subcarrier

regeneration

U-Vdemod

conversion

matrix

Y

U

V

R

G

B

composite

video

Figure

PAL/NTSC

demodulator

system

block

-LRB-

from

-LSB-

-RSB-

-RRB-

s

-RRB-

whereas

the

corresponding

value

for

a

PAL

signal

is

Hz

This

corresponds

to

a

variation

of

the

color

frequency

of

ppm/line

in

both

cases

-LSB-

-RSB-

If

this

requirement

is

satisfied

we

can

get

a

correct

color

representation

for

each

line

The

maximum

long-term

frequency

variation

-LRB-

clock

drift

-RRB-

that

the

composite

NTSC

or

PAL

signal

must

meet

is

Hz/sec

The

drift

may

be

because

of

temperature

changes

at

the

signal

generator

and

can

be

determined

in

an

averaging

manner

over

different

timewindow

sizes

In

fact

the

actual

requirement

for

the

color

sub-carrier

frequency

-LRB-

MHz

Hz

for

NTSC

-RRB-

is

an

average

value

which

can

be

measured

over

any

reasonable

time

period

Times

in

the

range

from

sec

to

several

seconds

are

common

-LSB-

-RSB-

All

the

requirements

stated

above

have

been

defined

for

broadcasting

applications

If

the

composite

signal

is

to

be

displayed

immediately

the

requirements

can

be

relaxed

Standard

NTSC

PAL

-LRB-

M

-RRB-

PAL

-LRB-

B

D

G

H

N

-RRB-

Frequency

-LRB-

Hz

-RRB-

Tolerance

-LRB-

Hz

-RRB-

Tolerance

-LRB-

ppm

-RRB-

Table

Specifications

for

the

color

sub-carrier

of

different

video

formats

-LRB-

from

-LSB-

-RSB-

-RRB-

Service

Nominal

Delay

Bit-Rate

Two-way

Communication

Videophone

kbps

-LCB-

Mbps

CBR

-LRB-

H.

-RRB-

-LCB-

ms

Videophone

Mbps

VBR

-LRB-

H.

-RRB-

ms

-LRB-

one

way

-RRB-

Videoconference

Mbps

VBR

-LRB-

H.

-RRB-

ms

-LRB-

one

way

-RRB-

VIDEO-Distribution

HDTV

Distribution

-LCB-

Mbps

VBR

sec

core

Mbps

CBR

sec

-LRB-

Audio

included

-RRB-

Main

profile

Mbps

sec

Main

level

CBR

VCR-quality

Main

profile

Mbps

sec

Main

level

TV-quality

Main

profile

Mbps

sec

Main

level

CBR

post

production

Table

Delay

requirements

for

various

audio-visual

services

significantly

In

fact

home

receivers

can

handle

a

much

wider

range

of

frequencies

and

drift

while

ensuring

good

quality

-LRB-

broadcasting

-RRB-

However

the

requirements

are

maintained

in

studio

environments

as

good

engineering

practice

Networking

Requirements

There

have

been

proposed

specifications

for

the

delay

delay

variation

error

rate

and

the

cell

rate

for

various

audiovisual

services

The

specifications

for

the

delay

as

stated

in

-LSB-

-RSB-

are

shown

in

Table

The

delay

given

above

includes

all

the

delays

from

camera

to

display

-LRB-

encoder/decoder

processing

delays

propagation

delay

etc.

-RRB-

However

for

some

applications

HDTV

or

post

production

that

can

have

real-time

multi-location

news

programs

a

delay

of

less

than

ms

is

required

There

is

a

misconception

that

all

the

video

services

must

be

given

quality

guarantees

from

the

network

in

terms

of

strictly

small

delay

bounds

-LSB-

-RSB-

However

if

the

service

is

one-way

then

there

is

flexibility

on

the

limit

for

the

end-to-end

delay

If

the

service

is

bidirectional

then

there

is

little

impact

if

the

delay

is

less

than

ms

but

serious

degradation

in

quality

can

occur

if

the

delay

is

more

than

ms

-LSB-

-RSB-

There

is

also

a

synchronization

problem

-LRB-

stated

as

skew

in

-LSB-

-RSB-

or

lip-sync

in

others

-RRB-

between

the

video

and

the

associated

audio

stream

If

video

and

audio

denote

the

displacement

from

the

start

of

the

corresponding

stream

-LRB-

video

or

audio

-RRB-

so

that

the

two

streams

are

perfectly

synchronized

i.e.

the

video

unit

at

video

is

synchronized

with

the

audio

at

audio

then

the

following

must

hold

-LSB-

-RSB-

p

-LRB-

audio

-RRB-

p

-LRB-

video

-RRB-

ms

p

-LRB-

video

-RRB-

p

-LRB-

audio

-RRB-

ms

-LRB-

-RRB-

where

p

-LRB-

audio

-RRB-

and

p

-LRB-

video

-RRB-

denote

the

presentation

times

of

the

audio

and

video

units

respectively

The

limits

usually

depend

on

the

type

and

content

of

the

application

-LSB-

-RSB-

The

requirements

in

error

rate

for

audiovisual

services

are

not

well

understood

Since

the

acceptable

error

rate

depends

on

the

perceived

degradation

in

audio/video

quality

it

is

difficult

to

define

universally

acceptable

bounds

However

the

error

rate

requirements

proposed

within

the

ATM

Forum

can

be

found

in

-LSB-

-RSB-

and

they

are

shown

in

Table

The

values

in

the

table

are

calculated

under

the

assumption

that

cell

losses

are

isolated

It

was

also

assumed

that

one

cell

loss

always

causes

picture

degradation

Of

course

in

many

cases

these

requirements

can

be

relaxed

significantly

Bit-rate

requirements

for

the

various

services

are

shown

in

Table

It

must

be

noted

that

the

bit-rate

may

change

significantly

according

to

the

actual

content

although

there

are

upper

bounds

in

many

cases

-LRB-

for

example

Mbps

is

the

upper

bound

for

high

profile

high

level

-RRB-

Nominal

Q-o-S

Required

Required

BER/CLR

Required

BER/CLR

Bit-Rate

Requireda

BER/CLR

single

bit-rate

after

single

bit

EC

Service

without

error

correction

on

cell

on

cell

basis

handling

in

basis

on

AAL

additional

call

AAL

loss

correction

in

AALb

Two-way

Communication

Videophone

min

BER

kbps

-LCB-

Mbps

error

CLR

In

user

layer

CLR

CBR

-LRB-

H.

-RRB-

free

FEC

in

user

layer

Videophone

Mbps

VBR

min

BER

BER

BER

-LRB-

H.

-RRB-

error

CLR

CLR

CLR

free

Videoconference

Mbps

VBR

min

BER

BER

BER

-LRB-

H.

-RRB-

error

CLR

CLR

CLR

free

VIDEO-Distribution

HDTV

Distrib

-LCB-

Mbps

hrs

BER

BER

BER

-LRB-

conventional

-RRB-

VBR

error

CLR

CLR

CLR

free

core

Mbps

min

BER

BER

BER

-LRB-

Audio

included

-RRB-

CBR

error

CLR

CLR

CLR

free

min

Main

profile

Mbps

error

BER

Main

level

CBR

free

VCR-quality

min

Main

profile

Mbps

error

BER

BER

BER

Main

level

VBR

free

CLR

CLR

CLR

TV-quality

hr

Main

profile

Mbps

error

BER

Main

level

CBR

free

post

production

aQOS

requirements

as

visualized

by

viewers

bBased

on

parity

cell

built

from

consecutive

data

cells

Table

Error

rate

requirements

for

various

audio-visual

services

Perceptual

Requirements

Perception

could

be

defined

as

human

's

awareness

and

understanding

of

the

elements

of

his/her

environment

through

physical

sensation

of

the

various

senses

Perception

is

influenced

by

experience

expectations

context

environment

and

surroundings

Some

Service

Nominal

Peak

Sustainable

Bit-Rate

Bit-rate

Bit-rate

Two-way

Communication

Videophone

kbps

-LCB-

Mbps

CBR

-LRB-

H.

-RRB-

kbps

-LCB-

Mbps

kbps

-LCB-

Mbps

Videophone

Mbps

VBR

-LRB-

H.

-RRB-

Videoconference

Mbps

VBR

-LRB-

H.

-RRB-

VIDEO-Distribution

HDTV

Distribution

-LCB-

Mbps

VBR

Mbps

core

Mbps

CBR

Mbps

Mbps

-LRB-

Audio

included

-RRB-

Main

profile

Mbps

CBR

Mbps

Mbps

Main

level

VCR-quality

Main

profile

Mbps

VBR

Mbps

Mbps

Main

level

TV-quality

Main

profile

Mbps

CBR

Mbps

Mbps

Main

level

post

production

Table

Cell

rate

requirements

for

various

audio-visual

services

perceptual

characteristics

defined

in

-LSB-

-RSB-

are

Proximity

Eye

and

mind

see

objects

as

belonging

together

if

they

are

close

to

each

other

Similarity

Eye

and

mind

see

objects

as

belonging

together

if

they

share

a

common

visual

property

Matching

Patterns

Humans

respond

similarly

to

the

same

shape

in

different

sizes

Closure

Perception

is

synthetic

and

tries

to

establish

meaningful

wholes

Balance

Stabilization

or

equilibrium

is

desired

in

the

viewing

environment

Different

techniques

for

evaluating

perceived

quality

quality

of

video

can

be

found

in

the

literature

based

on

how

the

term

perception

is

interpreted

and

evaluated

However

several

studies

have

shown

that

a

correct

estimation

of

the

subjective

quality

has

to

incorporate

some

modeling

of

the

Human

Visual

System

-LRB-

HVS

-RRB-

A

spatio-temporal

model

of

human

vision

has

been

developed

in

-LSB-

-RSB-

for

the

assessment

of

video

coding

quality

Instead

of

using

the

signal-noise-ratio

-LRB-

SNR

-RRB-

for

measuring

the

video

quality

as

is

being

done

extensively

in

the

literature

a

new

metric

is

introduced

based

on

a

multi-channel

model

of

human

spatio-temporal

vision

that

has

been

parameterized

for

video

coding

applications

by

psychophysical

experiments

In

-LSB-

-RSB-

an

experiment

was

done

to

investigate

the

trade-off

between

acceptability

frame

rate

and

other

parameters

of

a

video

sequence

using

several

humans

to

judge

and

quantify

the

perceived

quality

Performing

statistical

analysis

on

the

results

guidelines

for

the

network

bandwidth

required

for

different

multimedia

applications

in

a

distributed

system

were

obtained

In

a

networking

environment

the

factors

that

have

greatest

impact

on

quality

are

the

actual

packet

delays

the

number

of

lost

cells

-LRB-

or

packets

-RRB-

the

number

of

pixels

in

an

impaired

region

and

its

shape

and

the

locality

of

the

losses

-LSB-

-RSB-

Random

losses

were

found

to

give

greater

quality

degradation

than

correlated

losses

for

the

same

loss

rate

Even

then

the

visibility

of

the

loss

can

be

reduced

by

signal

processing

means

-LRB-

error

concealment

techniques

-RRB-

and

forward

error

correction

We

must

also

keep

in

mind

that

there

are

limits

under

which

further

improvements

in

delay

and

loss

are

unnoticeable

to

the

eye

and

so

there

is

no

point

of

passing

these

limits

since

that

may

increase

the

complexity

at

the

network

Again

these

limits

are

dependent

on

the

actual

video

sequence

Eq

-LRB-

-RRB-

along

with

the

specifications

for

the

different

video

formats

provides

a

good

estimate

for

the

assessment

of

the

perceived

quality

for

a

real-time

video

service

in

which

there

is

no

adaptive

encoding

technique

which

may

affect

the

overall

quality

ATM

Networks

In

this

chapter

we

first

provide

a

brief

discussion

of

the

various

service

classes

in

ATM

networks

for

support

of

various

traffic

types

We

will

then

describe

a

number

of

traffic

scheduling

algorithms

for

providing

QoS

guarantees

in

the

network

Classification

of

Services

in

ATM

networks

In

future

broadband

networks

a

large

number

of

services

must

be

provided

These

include

low-speed

services

such

as

telemetry

telecontrol

tele-alarm

voice

telefax

mediumspeed

ones

like

hi-fi

sound

video

telephony

and

high-speed

ones

like

high-quality

video

distribution

In

addition

the

conventional

best-effort

applications

will

be

included

giving

a

large

variety

of

services

provided

As

shown

in

Table

there

is

a

large

range

of

services

with

an

estimated

bit

rate

of

a

few

bits/s

up

to

some

hundreds

of

Mbits/s

Also

the

holding

times

vary

from

seconds

to

hours

These

applications

in

general

can

be

classified

into

real-time

and

non

real-time

applications

The

distinguishing

characteristic

of

real-time

applications

is

that

they

require

a

bound

on

the

delivery

delay

of

each

packet

While

this

bound

may

be

statistical

-LRB-

defined

in

terms

of

the

fraction

of

packets

that

violate

the

bound

-RRB-

the

bound

itself

must

be

known

a

priori

The

delay

in

the

network

results

from

several

causes

There

is

a

fixed

component

caused

by

the

propagation

delay

of

the

links

Added

to

this

fixed

delay

is

a

variable

amount

equal

to

the

time

each

packet

spends

in

service

queues

in

the

switches

This

variation

is

called

jitter

Many

real-time

services

require

bounds

on

the

maximum

jitter

It

is

obvious

that

the

real

problem

in

minimizing

and

bounding

the

total

delay

is

to

minimize

the

queueing

delay

inside

each

switch

In

general

the

queueing

delay

for

a

particular

session

depends

on

the

behavior

of

its

source

as

well

as

the

interference

from

other

sources

within

the

switches

Thus

to

provide

low

delay

in

the

network

it

is

essential

to

bound

the

burstiness

of

the

session

at

the

source

and

to

use

scheduling

algorithms

in

the

switches

that

provide

isolation

Service

Bandwidth

Voice

kbits/s

Interactive

data

-LCB-

kbits/s

Bulk

data

-LCB-

Mbits/s

Standard

quality

video

-LCB-

Mbits/s

High

Definition

TV

-LRB-

HDTV

-RRB-

-LCB-

Mbits/s

High

quality

video

telephony

Mbits/s

Table

Bandwidth

demands

of

broadband

services

On

the

other

hand

non

real-time

applications

can

usually

be

serviced

in

the

best-effort

mode

where

the

available

capacity

of

the

network

is

divided

among

the

applications

sharing

it

These

applications

are

not

usually

sensitive

to

delay

and

jitter

Many

different

service

classes

have

been

defined

by

the

ATM

Forum

to

meet

the

requirements

of

various

applications

-LSB-

-RSB-

The

real-time

services

-LRB-

Constant

Bit-Rate

-LRB-

CBR

-RRB-

Real-Time

Variable

Bit-Rate

-LRB-

RT-VBR

-RRB-

-RRB-

need

specific

Quality-of-Service

-LRB-

QoS

-RRB-

guarantees

from

the

network

since

they

carry

traffic

with

a

fixed

timing

relationship

between

samples

These

service

classes

provide

guarantees

on

both

delay

and

jitter

The

Non-Real-Time

Variable

Bit-Rate

service

-LRB-

NRT-VBR

-RRB-

is

intended

for

carrying

variable

bit-rate

traffic

in

which

there

is

no

timing

relationship

between

samples

but

a

guarantee

of

delay

is

still

needed

The

Available

Bit-Rate

-LRB-

ABR

-RRB-

service

is

intended

for

best-effort

applications

requiring

a

guaranteed

minimum

rate

and

uses

a

rate-based

feedback

approach

to

control

congestion

Finally

the

Unspecified

Bit-Rate

service

-LRB-

UBR

-RRB-

does

not

offer

any

service

guarantees

and

thus

has

the

minimum

priority

among

all

the

other

classes

When

setting

up

a

connection

a

node

sends

a

request

to

the

network

containing

a

traffic

descriptor

which

carries

two

types

of

parameters

traffic

parameters

and

QoS

parameters

Traffic

parameters

-LRB-

peak

cell

rate

-LRB-

PCR

-RRB-

cell

delay

variation

tolerance

-LRB-

CDVT

-RRB-

sustainable

cell

rate

-LRB-

SCR

-RRB-

burst

tolerance

-LRB-

BT

-RRB-

and

minimum

cell

rate

-LRB-

MCR

-RRB-

-RRB-

define

an

envelope

that

describes

the

source

traffic

However

not

all

the

parameters

are

valid

for

all

the

Service

Class

Traffic

Parameters

PCR

CDVT

SCR

BT

MCR

CBR

X

X

VBR-RT

X

X

X

X

VBR-NRT

X

X

X

X

ABR

X

X

X

UBR

X

X

Table

Traffic

parameters

Service

Class

QoS

Parameters

CLR

Max

CTD

Mean

CTD

CDV

CBR

X

X

X

VBR-RT

X

X

X

VBR-NRT

X

X

ABR

X

UBR

X

Table

QoS

parameters

service

classes

as

shown

in

Table

QoS

parameters

-LRB-

cell-loss

rate

-LRB-

CLR

-RRB-

maximum

cell-transfer

delay

-LRB-

max

CTD

-RRB-

mean

cell-transfer

delay

-LRB-

mean

CTD

-RRB-

and

peak-to-peak

cell

delay

variation

-LRB-

CDV

-RRB-

-RRB-

define

bounds

on

acceptable

delay

jitter

and

cell

loss

rate

As

noted

before

only

a

subset

of

these

parameters

is

valid

for

each

service

class

as

shown

in

Table

QoS

parameters

are

treated

as

dynamic

additive

metrics

and

their

expected

values

are

used

Upper

bounds

on

end-to-end

delay

and

cell

delay

variation

-LRB-

CDV

-RRB-

ensure

a

predicted

service

for

rigid

applications

such

as

real-time

teleconferencing

On

the

other

hand

non

real-time

services

-LRB-

Non

Real-Time

Variable

Bit-Rate

-LRB-

NRT-VBR

-RRB-

Available

BitRate

-LRB-

ABR

-RRB-

Unspecified

Bit-Rate

-LRB-

UBR

-RRB-

-RRB-

are

more

appropriate

for

Internet-like

services

QoS

support

and

Scheduling

Disciplines

One

of

the

most

challenging

and

interesting

research

issues

in

ATM

networks

is

how

to

support

real-time

applications

In

order

to

be

able

to

provide

guarantees

on

bandwidth

delay

jitter

and

packet

loss

rate

ATM

networks

must

employ

traffic

scheduling

algorithms

within

the

network

These

algorithms

determine

the

rate

and

order

in

which

packets

from

different

connections

are

serviced

thus

allowing

control

of

the

bandwidth

delay

and

packet

loss

rate

Many

scheduling

algorithms

have

been

proposed

in

the

literature

A

good

scheme

must

allow

the

network

to

treat

users

differently

in

accordance

with

their

desired

quality

of

service

It

must

ensure

isolation

for

real-time

flows

and

fairness

for

best-effort

applications

i.e.

a

few

users

should

not

be

able

to

degrade

service

to

other

users

to

the

extent

that

performance

guarantees

are

violated

Several

desirable

features

of

a

scheduling

algorithm

were

identified

in

-LSB-

-RSB-

In

addition

to

the

isolation

and

fairness

properties

discussed

above

the

algorithm

must

also

have

a

simple

implementation

and

ability

to

support

a

large

number

of

connections

Traffic

scheduling

algorithms

are

classified

in

two

general

categories

work-conserving

and

non-work-conserving

A

work-conserving

scheduler

is

never

idle

when

there

is

a

packet

in

its

queue

On

the

other

hand

a

non-work-conserving

scheduler

may

stay

idle

even

when

there

is

a

packet

to

be

transmitted

Non-work-conserving

schedulers

are

usually

used

to

control

delay

jitter

in

the

network

and

may

result

in

higher

average

delays

than

workconserving

ones

Another

classification

of

schedulers

can

be

done

based

on

their

structure

According

to

this

criterion

schedulers

are

classified

into

sorted-priority

and

frame-based

Sorted-priority

schedulers

make

use

of

a

global

variable

usually

referred

to

as

virtual

time

for

each

output

port

-LRB-

or

link

-RRB-

This

variable

gets

updated

every

time

a

packet

arrives

or

departs

from

the

switch

and

every

packet

in

the

system

has

a

timestamp

that

it

is

extracted

from

the

virtual

time

Packets

are

transmitted

in

increasing

order

of

their

timestamps

Typical

examples

of

Arriving

Traffic

Stream

Server

with

Rate

C

Token

Bucket

Tokens

Token

Bucket

Conformant

Traffic

Arrival

rate

aeCapacit

y

oe

Figure

Token

bucket

shaper

sorted-priority

schedulers

are

Weighted

Fair

Queueing

-LSB-

-RSB-

VirtualClock

-LSB-

-RSB-

Self-clocked

Fair

Queueing

-LRB-

SCFQ

-RRB-

-LSB-

-RSB-

and

Frame-based

Fair

Queueing

-LSB-

-RSB-

Frame-based

schedulers

divide

time

into

frames

A

frame

which

may

be

of

fixed

or

variable

length

is

a

time

interval

in

which

the

various

traffic

sources

make

their

bandwidth

reservations

Examples

of

such

schedulers

include

Stop-and-Go

Queueing

-LSB-

-RSB-

Weighted

Round-Robin

-LSB-

-RSB-

and

Deficit

Round-Robin

-LSB-

-RSB-

In

order

to

compute

the

delay

bound

of

a

session

the

burstiness

of

the

source

traffic

has

to

be

constrained

by

a

shaping

model

Token-bucket

constrained

traffic

model

is

the

model

used

extensively

in

the

literature

for

the

worst-case

analysis

of

delay

-LRB-

see

Figure

-RRB-

The

output

of

the

token

bucket

is

sometimes

referred

as

-LRB-

oe

ae

C

-RRB-

conformant

traffic

stream

where

oe

is

the

number

of

tokens

in

the

token

bucket

ae

is

the

rate

of

the

incoming

tokens

and

C

is

the

peak

rate

of

the

server

at

the

token

bucket

If

A

-LRB-

-RRB-

is

the

amount

of

traffic

that

leaves

the

token

bucket

during

the

interval

-LRB-

-RRB-

then

the

following

constraint

holds

A

-LRB-

-RRB-

minfC

-LRB-

-RRB-

oe

ae

-LRB-

-RRB-

g

-LRB-

-RRB-

Two

important

properties

of

a

scheduler

are

its

worst-case

end-to-end

delay

bound

and

the

fairness

it

provides

Fairness

is

less

important

than

end-to-end

delay

for

real-time

connections

but

is

important

for

best-effort

flows

Several

measures

have

been

used

in

the

literature

to

characterize

the

fairness

of

scheduling

algorithms

One

approach

is

to

use

the

maximum

difference

between

the

normalized

service

received

by

two

backlogged

Scheduler

Latency

Fairness

Complexity

GPS

max

-LRB-

Cj

Lmax

aei

Ljaej

Ci

Lmax

aej

Liaei

-RRB-

Weighted

Fair

Queueing

Liaei

Lmax

r

where

O

-LRB-

V

-RRB-

Ci

min

-LRB-

-LRB-

V

-RRB-

Lmax

aei

n

V

-LRB-

Lnaen

-RRB-

-RRB-

SCFQ

Liaei

Lmax

r

-LRB-

V

-RRB-

Liaei

Ljaej

O

-LRB-

log

V

-RRB-

VirtualClock

Liaei

Lmax

r

O

-LRB-

log

V

-RRB-

Deficit

Round

Robin

-LRB-

-RRB-

r

O

-LRB-

-RRB-

Weighted

Round

Robin

-LRB-

F?OEi

Lc

-RRB-

r

Fr

O

-LRB-

-RRB-

FFQ

Liaei

Lmax

r

max

-LRB-

-LRB-

OEi

-RRB-

r

Liaei

-LRB-

OEi

-RRB-

r

Ljaej

Lmax

aej

Liaei

Lmax

aei

Ljaej

-RRB-

O

-LRB-

log

V

-RRB-

Table

Latency

Fairness

and

Complexity

for

several

scheduling

algorithms

Li

is

the

maximum

packet

size

of

connection

i

and

Lmax

the

maximum

packet

size

among

all

connections

V

is

the

number

of

all

the

connections

F

is

the

frame

size

and

OEi

is

the

amount

of

traffic

in

the

frame

allocated

to

connection

i.

Lc

is

the

size

of

the

fixed

packet

-LRB-

cell

-RRB-

in

Weighted

Round-Robin

connections

over

an

interval

in

which

both

are

backlogged

-LSB-

-RSB-

Thus

the

service

fairness

index

-LRB-

SFI

-RRB-

-LSB-

-RSB-

can

be

given

by

the

following

equation

SFI

Wi

-LRB-

-RRB-

aei

Wj

-LRB-

-RRB-

aej

-LRB-

-RRB-

where

Wi

-LRB-

-RRB-

and

Wj

-LRB-

-RRB-

denote

the

service

received

by

connections

i

and

j

respectively

during

an

interval

-LRB-

-RSB-

over

which

both

are

backlogged

and

aei

aej

are

the

allocated

rates

of

the

two

connections

In

-LSB-

-RSB-

Stiliadis

and

Varma

developed

a

model

to

characterize

the

properties

of

different

schedulers

Schedulers

that

fall

into

this

classification

are

called

Latency-Rate

-LRB-

LR

-RRB-

servers

The

worst-case

delay

bounds

and

fairness

properties

of

LR

schedulers

are

shown

in

Table

All

the

schedulers

shown

in

Table

are

work-conserving

Generalized

Processor

Sharing

-LRB-

GPS

-RRB-

-LSB-

-RSB-

is

considered

the

ideal

scheduler

based

on

end-to-end

delay

bounds

and

fairness

properties

However

since

it

is

based

on

a

fluid

model

it

is

not

implementable

System

Potential

V

Arrivals

SHAPER

SCHEDULER

Transmitter

Link

Figure

Abstract

view

of

a

scheduler

in

the

SRPS

class

-LRB-

from

-LSB-

-RSB-

-RRB-

in

practice

Weighted

Fair

Queueing

-LRB-

WFQ

-RRB-

is

the

packetized

version

of

GPS

but

is

still

difficult

to

implement

because

of

the

need

to

simulate

fluid-model

GPS

in

the

background

The

remaining

schedulers

attempt

to

approximate

WFQ

at

a

reduced

implementation

complexity

VirtualClock

-LSB-

-RSB-

has

the

same

delay

bounds

but

is

an

unfair

algorithm

because

a

session

may

be

denied

service

for

an

arbitrary

time

period

because

of

excess

bandwidth

received

in

the

past

Self-clocked

Fair

Queueing

-LRB-

SCFQ

-RRB-

-LSB-

-RSB-

avoids

the

fairness

problem

of

VirtualClock

but

its

worst-case

delay

bound

is

of

the

order

of

the

number

of

active

connections

Frame-based

Fair

Queueing

-LSB-

-RSB-

has

both

the

delay

bound

of

WFQ

and

bounded

fairness

The

algorithm

is

similar

to

VirtualClock

but

uses

a

mechanism

to

recalibrate

the

system

periodically

so

that

the

scheduler

remains

fair

In

a

recent

study

Stiliadis

and

Varma

-LSB-

-RSB-

address

the

problem

of

reshaping

the

traffic

at

each

switch

to

minimize

the

burstiness

of

the

sources

and

the

buffering

needed

inside

the

network

The

schedulers

that

belong

to

that

class

are

called

Shaped

Rate-Proportional

Servers

-LRB-

SRPS

-RRB-

and

are

based

on

combining

a

shaping

mechanism

with

a

scheduler

from

the

class

of

Rate-Proportional

Servers

-LSB-

-RSB-

The

basic

idea

is

shown

in

Figure

The

arriving

packets

enter

a

shaper

and

are

admitted

into

the

scheduler

when

they

become

eligible

The

criterion

to

make

a

specific

packet

eligible

is

that

the

current

value

of

the

system

potential

in

the

scheduler

is

equal

to

or

greater

than

the

finishing

potential

of

the

previous

packet

admitted

from

that

connection

The

system

potential

is

a

function

that

characterizes

the

overall

progress

of

work

in

the

scheduler

An

SRPS

scheduler

may

or

may

not

be

work-conserving

depending

on

the

system

potential

function

used

The

simplest

scheduler

that

belongs

to

the

SRPS

class

is

the

Shaped

VirtualClock

In

VirtualClock

the

system

potential

function

is

actually

the

real

time

itself

The

Shaped

VirtualClock

scheduler

is

therefore

non-work-conserving

and

spaces

the

various

packets

from

the

same

connection

according

to

connection

's

bandwidth

reservation

Thus

the

burstiness

at

the

output

of

the

scheduler

is

optimal

for

the

case

of

networks

with

fixed

size

packets

Thus

the

scheduler

provides

both

low

delay

and

jitter

bounds

In

Chapter

we

will

evaluate

some

of

the

sorted-priority

schedulers

-LRB-

VirtualClock

SCFQ

and

FFQ

-RRB-

along

with

Shaped

VirtualClock

for

transporting

Transport

Streams

over

ATM

networks

and

compare

with

the

performance

under

FIFO

scheduling

over

ATM

The

standard

-LSB-

-RSB-

does

not

specify

how

an

Transport

Stream

is

transported

over

a

communication

network

However

the

timing

model

presented

in

Chapter

assumes

a

constant

end-to-end

delay

from

the

encoder

to

the

decoder

end

This

introduces

a

number

of

design

issues

that

need

to

be

addressed

in

order

to

ensure

satisfactory

quality

at

the

receiver

Some

of

them

are

stated

below

Choice

of

Adaptation

Layer

Transport

Packet

Encapsulation

Service

Class

Selection

Clock

Synchronization

Choice

of

Adaptation

Layer

-LRB-

AAL

-RRB-

The

Adaptation

Layer

is

responsible

for

making

the

network

behavior

transparent

to

the

application

It

is

divided

into

two

sub-layers

the

Segmentation

and

Reassembly

-LRB-

SAR

-RRB-

and

the

Convergence

Sublayers

-LRB-

CS

-RRB-

The

SAR

is

responsible

for

the

segmentation

of

the

outgoing

Protocol

Data

Units

-LRB-

PDUs

-RRB-

into

ATM

cells

and

the

reassembly

of

ATM

cells

back

into

PDUs

There

are

four

types

of

adaptation

layers

currently

defined

for

ATM

networks

and

Each

of

the

above

is

designed

for

supporting

specific

services

and

have

different

functionalities

The

selection

of

a

suitable

adaptation

layer

for

transporting

over

ATM

needs

to

take

into

account

the

specific

requirements

of

Transport

Streams

such

as

jitter

removal

error

detection

and/or

correction

endto-end

delay

minimization

for

real-time

applications

and

support

of

both

CBR

and

VBR

applications

Transport

over

was

designed

to

support

circuit

emulation

over

ATM

networks

It

is

ideally

suited

for

transporting

Constant

Bit-Rate

-LRB-

CBR

-RRB-

traffic

since

it

provides

constant

delay

through

the

network

using

dejittering

mechanisms

at

the

destination

provides

two

ways

to

synchronize

the

clocks

and

deliver

a

jitter-free

clock

at

the

receiver

depending

on

the

status

of

the

CBR

service

clock

In

the

synchronous

case

the

service

clock

is

assumed

locked

to

a

common

network

clock

and

its

recovery

is

done

directly

from

the

network

clock

In

the

asynchronous

case

provides

two

alternatives

for

recovering

the

clock

at

the

receiver

the

Synchronous

Residual

Time

Stamp

-LRB-

SRTS

-RRB-

method

and

the

Adaptive

Clock

method

In

the

former

method

absolute

clock

information

is

exchanged

for

the

synchronization

whereas

in

the

latter

the

buffer

fill

levels

are

used

in

order

to

synchronize

the

transmitter

and

receiver

Besides

offers

the

option

of

Forward

Error

Correction

-LRB-

FEC

-RRB-

that

can

hide

the

effects

of

cell

losses

in

the

network

from

the

application

is

currently

the

natural

choice

for

transporting

CBR

over

ATM

since

the

traffic

has

a

constant

bit-rate

and

needs

constant

end-to-end

delay

However

there

are

a

number

of

disadvantages

with

the

use

of

for

transport

can

not

be

used

to

carry

Variable

Bit-Rate

-LRB-

VBR

-RRB-

Transport

Streams

which

are

likely

to

be

dominant

in

the

future

The

SRTS

technique

can

not

be

used

if

a

common

network

clock

is

not

available

for

use

as

the

reference

clock

That

is

can

not

be

used

in

nationwide

networks

consisting

of

several

carriers

and

unsynchronized

clocks

The

adaptive

method

to

recover

the

clock

requires

a

PLL

to

determine

how

the

buffer

at

the

decoder

end

is

being

emptied

Since

a

PLL

is

needed

for

recovery

of

the

system

clock

the

former

becomes

redundant

Since

signaling

is

being

done

under

ATM

network

interfaces

will

need

to

support

both

types

of

adaptation

layers

-LRB-

and

-RRB-

which

makes

such

a

choice

expensive

Transport

over

was

designed

for

transporting

data

traffic

with

no

real-time

constraints

over

ATM

Its

convergence

sublayer

consists

of

two

sublayers

the

Common

Part

CS

-LRB-

CPCS

-RRB-

and

the

Service-Specific

CS

-LRB-

SSCS

-RRB-

The

Common

Part

CS

of

can

make

the

use

of

variable

length

protocol

data

units

-LRB-

PDUs

-RRB-

from

to

bytes

This

means

that

the

size

of

an

PDU

need

not

be

fixed

The

Service-Specific

CS

-LRB-

SCCS

-RRB-

provides

the

flexibility

of

having

a

special

sublayer

for

different

services

that

need

to

use

The

SSCS

may

also

be

and

in

that

case

it

does

not

perform

any

specific

task

SCCS

CS

CPCS

SAR

Segmentation

and

Reassembly

-LRB-

SAR

-RRB-

Common

Part

of

CS

Service-Specific

CS

-LRB-

may

be

-RRB-

Figure

Structure

of

layer

-LRB-

from

-LSB-

-RSB-

-RRB-

The

CPCS

together

with

the

SAR

layer

provides

all

the

capabilities

to

send

and

receive

a

Common

Part

service

data

unit

-LRB-

SDU

-RRB-

from

an

ATM

network

In

the

case

that

the

SDU

is

corrupted

or

lost

an

indication

is

sent

to

the

SSCS

-LRB-

or

the

service

layer

if

the

SSCS

is

-RRB-

However

corrupted

or

lost

SDUs

are

not

recovered

as

in

the

case

of

with

forward

error

correction

A

corrupted

SDU

may

optionally

be

forwarded

to

the

SSCS

layer

leaving

it

the

responsibility

of

dealing

with

the

error

A

corrupted

SDU

can

be

detected

by

making

use

of

a

CRC

at

the

end

of

the

SDU

and

by

verifying

the

length

of

the

SDU

from

its

header

field

In

the

case

of

audiovisual

services

a

Video

Audio

Service-Specific

Convergence

Sublayer

-LRB-

VASSCS

-RRB-

is

proposed

in

order

to

provide

the

clock

recovery

and

the

constant

end-to-end

delay

that

the

assumes

for

the

network

The

VASSCS

can

be

designed

to

support

both

CBR

and

VBR

services

and

more

generally

other

audiovisual

services

with

similar

functionalities

as

the

Systems

layer

To

implement

a

constant-delay

service

VASSCS

employs

a

timestamping

mechanism

and

a

dejittering

buffer

at

the

receiving

adaptation

layer

Thus

VASSCS

duplicates

functions

that

are

present

at

the

Systems

layer

At

the

same

time

it

is

not

clear

whether

adopting

this

solution

justifies

the

increased

cost

and

complexity

by

means

of

better

quality

In

a

recent

study

-LSB-

-RSB-

Perkins

and

Skelly

showed

that

with

only

a

small

amount

of

buffering

-LRB-

around

Kbytes

-RRB-

the

PLL

needed

at

the

decoder

end

is

still

able

to

recover

the

source

clock

under

the

assumption

that

the

jitter

introduced

by

the

network

is

at

most

ms.

This

makes

the

VASSCS

solution

practically

redundant

However

since

it

may

be

difficult

in

practice

to

negotiate

a

jitter

of

ms

in

the

network

the

dejittering

at

the

layer

may

still

be

useful

has

several

advantages

over

other

alternatives

is

currently

the

most

commonly

used

adaptation

layer

in

the

industry

is

being

used

for

encapsulating

UNI

signaling

messages

and

in

most

cases

to

carry

best

effort

traffic

through

the

ATM

network

Using

a

CS

hardware

support

from

the

network

can

be

minimized

and

thus

the

complexity

is

moved

to

the

service

layer

can

support

VBR

traffic

in

the

future

-LRB-

can

be

used

only

with

CBR

traffic

-RRB-

However

there

are

disadvantages

also

as

stated

below

The

Common

Part

Sublayer

of

-LRB-

-RRB-

does

not

support

forward

error

correction

It

only

supports

error

detection

and

in

the

case

of

an

error

may

discard

the

entire

SDU

which

usually

amplifies

the

effect

of

the

error

in

audiovisual

applications

Signaling

AAL

ATM

Adaptation

Layer

VASSCS

PESPES

Program

Stream

Transport

Stream

Systems

Layer

Signaling

Protocol

Transport

Protocol

Connection

control

and

signaling

Audio

Stream

-LRB-

ISO/IEC

-RRB-

Video

Stream

-LRB-

ISO/IEC

-RRB-

Data

Stream

Terminal

and

session

signaling

ATM

Layer

Physical

Layer

Video-Dialtone

Technology

-LRB-

VDT

-RRB-

and

multimedia

services

Figure

Protocol

stack

for

over

ATM

-LRB-

from

-LSB-

-RSB-

-RRB-

However

since

congestion

losses

in

an

ATM

network

are

likely

to

occur

in

bursts

the

effectiveness

of

forward

error

correction

may

be

limited

in

any

case

Although

-LRB-

as

it

is

currently

defined

-RRB-

detects

errors

encountered

in

a

received

SDU

it

does

not

forward

the

damaged

SDU

to

the

application

layer

This

means

that

in

the

case

of

an

Transport

Stream

one

or

more

transport

packets

may

be

lost

at

the

service

layer

resulting

in

quality

degradation

Besides

having

excessive

losses

makes

the

error

recovery

and

concealment

techniques

that

MPEG

uses

very

inefficient

that

has

to

do

with

synchronization

problems

at

the

macroblock

or

slice

level

for

video

Different

ways

of

encapsulating

Transport

Stream

into

SDUs

may

affect

the

jitter

of

the

Transport

packets

which

in

turn

will

affect

the

system

clock

recovery

process

Transport

Packet

Encapsulation

When

is

chosen

as

the

adaptation

layer

for

carrying

Transport

Streams

a

scheme

must

be

designed

for

encapsulating

transport

packets

into

SDUs

Transport

Rate

-LRB-

Mbps

-RRB-

Packing

Jitter

-LRB-

ms

-RRB-

Table

Maximum

packing

jitter

for

different

transport

rates

and

N

If

each

transport

packet

which

has

a

fixed

size

of

bytes

is

encapsulated

in

a

distinct

SDU

then

five

cells

will

be

needed

at

the

ATM

layer

for

each

packet

This

introduces

a

significant

bandwidth

overhead

does

not

suffer

from

this

problem

since

a

transport

packet

can

be

carried

in

a

SDU

To

reduce

the

bandwidth

overhead

more

than

one

transport

packet

need

to

be

encapsulated

in

a

single

SDU

Assuming

that

a

single

SDU

will

be

used

to

encapsulate

N

transport

packets

there

is

an

inherent

packing

jitter

associated

with

each

of

the

transport

packets

carried

by

the

SDU

This

introduces

a

problem

when

one

of

these

N

transport

packets

contains

a

Program

Clock

Reference

-LRB-

PCR

-RRB-

value

for

system

clock

recovery

at

the

destination

In

that

case

the

packing

jitter

will

appear

as

delay

variation

at

the

decoder

end

and

may

affect

the

quality

of

the

clock

recovered

To

address

this

problem

two

packing

schemes

for

were

proposed

within

the

ATM

Forum

PCR-unaware

and

PCR-aware

In

the

PCR-unaware

approach

the

source

adaptation

layer

forms

one

SDU

from

every

N

consecutive

transport

packets

without

examining

the

incoming

Transport

Stream

at

all

Since

all

the

SDUs

have

fixed

size

the

resulting

stream

is

CBR

and

its

peak

cell

rate

at

the

ATM

layer

can

be

determined

accurately

The

packing

jitter

in

this

case

depends

on

the

number

of

transport

packets

per

SDU

as

well

as

the

transport

rate

Table

shows

the

maximum

jitter

introduced

for

various

transport

rate

for

N

In

the

PCR-aware

approach

the

source

adaptation

layer

forms

an

SDU

from

PCR

PCR

PCR

Transport

Stream

PCR-unaware

scheme

PCR-aware

scheme

PCR

SDUs

Time

PCR

PCR

packet

delay

No

delay

Figure

PCR

packing

schemes

for

N

N

consecutive

transport

packets

except

when

a

transport

packet

contains

a

PCR

value

On

receiving

a

transport

packet

containing

a

PCR

value

the

SDU

is

forwarded

immediately

to

the

SAR

sublayer

for

segmentation

That

is

in

the

PCR-aware

scheme

a

transport

packet

containing

a

PCR

value

always

appears

as

the

last

packet

in

the

SDU

Thus

the

packing

jitter

for

the

transport

packets

that

carry

PCR

values

will

be

essentially

zero

However

this

approach

demands

that

the

source

-LRB-

the

encoder

or

the

video

server

-RRB-

is

capable

of

detecting

transport

packets

with

PCR

values

Because

the

rate

of

Transport

Streams

usually

exceeds

Mbps

this

must

be

done

in

hardware

adding

complexity

to

the

video

servers

ATM

Forum

recently

chose

the

PCR-unaware

approach

with

N

as

the

preferred

means

of

transporting

over

ATM

Thus

a

transport

packet

carrying

a

PCR

value

may

occupy

either

the

first

or

the

second

position

within

the

SDU

In

the

PCR-aware

approach

when

the

SDU

consists

of

only

one

transport

packet

-LRB-

it

must

contain

a

PCR

-RRB-

the

SDU

has

a

size

of

five

ATM

cells

Since

in

the

worst

case

a

PCR

may

appear

in

every

transport

packet

the

resulting

cell

rate

may

be

much

higher

than

that

under

the

PCR

unaware

approach

Even

if

the

frequency

of

PCR

values

found

in

the

Transport

Stream

is

limited

to

a

reasonable

number

-LRB-

per

second

for

example

which

is

the

case

for

encoders

that

are

being

used

today

-RRB-

the

resulting

stream

is

no

longer

of

constant

bit-rate

Thus

the

peak

cell

rate

of

the

stream

needed

for

shaping

and

call-admission

control

must

be

calculated

based

on

an

estimated

maximum

frequency

of

PCR

values

in

transport

packets

This

may

result

in

bandwidth

over-allocation

and

wastes

valuable

network

resources

The

impact

of

PCR-unaware

scheme

at

the

decoder

is

basically

more

memory

since

the

initial

locking

time

for

the

phase

locked-loop

at

the

receiver

clock

is

extended

because

of

the

packing

jitter

This

is

not

the

case

for

the

PCR-aware

scheme

However

the

impact

is

the

additional

bandwidth

typically

in

the

range

of

to

Considering

the

future

need

to

VBR

services

the

PCR-aware

scheme

is

the

natural

choice

The

reason

is

that

in

the

VBR

case

the

packetization

jitter

will

vary

as

a

function

of

the

instantaneous

bit-rate

The

largest

jitter

will

be

determined

by

the

lowest

bit-rate

employed

in

the

VBR

encoding

which

will

not

be

known

to

the

decoder

a

priori

In

a

recent

study

-LSB-

-RSB-

an

alternative

packing

scheme

was

proposed

which

is

an

enhancement

of

the

PCR-unaware

scheme

The

scheme

has

all

the

advantages

of

the

PCR-aware

scheme

without

its

disadvantages

There

are

three

key

ideas

in

this

scheme

Control

of

the

generation

of

transport

packets

containing

PCRs

PCRs

may

be

placed

in

even

or

odd

numbered

transport

packets

Destination

packet

delay

Packing

jitter

occurs

only

when

the

PCR

is

in

the

first

transport

packet

of

an

SDU

This

jitter

is

compensated

at

the

destination

by

letting

the

second

packet

wait

at

the

AAL

until

the

first

packet

is

transferred

to

the

service

layer

using

the

current

transport

rate

information

PLL

enhancement

Since

the

amount

of

packing

jitter

is

known

a

priori

subtraction

of

a

fixed

amount

from

the

PCRs

at

the

destination

would

eliminate

the

packing

jitter

However

this

method

is

not

a

standard

and

suffers

from

the

problem

that

a

lost

MPEG

transport

packet

makes

it

difficult

to

determine

the

alignment

of

packets

-LRB-

odd

or

even

-RRB-

to

take

the

appropriate

corrective

action

Service

Class

Selection

Another

problem

that

arises

in

the

transport

of

over

ATM

is

in

selecting

the

service

class

There

are

several

approaches

proposed

in

the

literature

for

transport

over

ATM

Deterministic

Constant

Bit-rate

-LRB-

CBR

-RRB-

approach

In

this

approach

is

considered

CBR

in

the

network

and

is

treated

as

such

The

constant

rate

has

to

be

either

computed

in

the

case

of

a

pre-existing

MPEG

stream

or

estimated

in

a

real-time

application

Any

smoothing

necessary

to

deliver

a

constant

bit-rate

stream

must

be

done

at

the

encoder

via

buffering

If

the

buffering

at

the

source

is

limited

we

may

either

use

a

local

feedback

scheme

to

adjust

the

bit-rate

produced

by

the

encoder

-LRB-

Q-factor

-RRB-

or

let

the

buffer

overflow

Both

approaches

result

in

quality

degradation

However

the

degradation

is

different

in

those

two

cases

Several

methods

for

the

computation

of

this

constant

rate

to

be

allocated

in

the

network

or

the

effective

bandwidth

-LCB-

term

used

in

many

references

-LCB-

can

be

found

in

the

literature

-LSB-

-RSB-

Deterministic

CBR

without

smoothing

at

the

source

In

this

approach

the

effective

bandwidth

is

calculated

in

the

same

way

as

in

the

previous

approach

and

is

used

by

the

network

to

allocate

resources

The

difference

with

the

previous

case

is

that

the

traffic

will

have

VBR

nature

inside

the

network

to

gain

from

statistical

multiplexing

of

different

VBR

sources

However

the

problem

here

is

that

a

large

amount

of

buffering

may

be

needed

in

the

switches

to

exploit

statistical

multiplexing

If

only

limited

buffering

is

available

losses

will

lead

to

quality

degradation

Statistical

Service

with

Rate

Renegotiation

Two

recent

schemes

have

been

proposed

in

the

literature

that

deal

with

this

approach

Renegotiated

CBR

-LRB-

RCBR

-RRB-

-LSB-

-RSB-

is

an

attempt

to

combine

the

simplicity

of

CBR

in

terms

of

bandwidth

allocation

and

call

admission

control

with

the

advantages

of

VBR

in

terms

of

multiplexing

gain

However

the

multiplexing

gain

is

not

achieved

inside

the

network

due

to

buffer

sharing

but

at

the

source

The

idea

behind

RCBR

is

to

keep

the

traffic

within

the

network

close

to

CBR

to

reduce

congestion

and

jitter

A

source

under

RCBR

scheme

renegotiates

its

rate

over

long

time

scales

using

signaling

Between

renegotiation

points

the

rate

is

assumed

to

be

CBR

and

equal

to

an

effective

bandwidth

value

that

applies

during

that

time

interval

The

RED-VBR

scheme

-LSB-

-RSB-

attempts

to

eliminate

the

overload

situations

in

a

similar

way

by

using

renegotiation

points

However

the

difference

is

that

RED-VBR

builds

the

renegotiation

service

on

top

of

a

deterministic

variable

bit

rate

-LRB-

D-VBR

-RRB-

service

-LSB-

-RSB-

whereas

RCBR

builds

the

renegotiation

service

on

top

of

a

constant

bit-rate

-LRB-

CBR

-RRB-

service

Thus

RED-VBR

achieves

better

network

utilization

for

the

same

level

of

blocking

probabilities

Both

schemes

provide

a

statistical

service

in

the

sense

that

a

renegotiation

request

may

be

denied

In

that

case

the

source

must

take

action

in

order

to

avoid

packet

losses

and

the

resulting

quality

degradation

Feedback-based

best-effort

service

with

or

without

resource

reservations

A

number

of

schemes

have

been

proposed

for

transporting

video

over

a

best-effort

service

where

the

source

adjusts

its

rate

based

on

available-rate

information

received

from

the

network

periodically

This

requires

varying

the

encoding

rate

at

the

source

adaptively

based

on

feedback

information

received

from

the

network

Variations

of

the

scheme

have

been

proposed

with

and

without

support

for

a

minimum

guaranteed

rate

-LSB-

-RSB-

The

scheme

allows

efficient

utilization

of

the

network

bandwidth

but

may

result

in

unacceptable

quality

for

the

viewer

Statistical

service

without

any

guarantees

In

this

case

the

stream

is

transported

over

the

network

in

best

effort

mode

with

no

feedback

controls

The

quality

at

the

receiver

depends

on

the

current

congestion

level

in

the

network

This

is

the

case

with

currently

available

tools

for

transporting

video

over

the

Internet

-LSB-

-RSB-

In

selecting

a

specific

type

of

service

for

video

transport

a

compromise

must

be

made

between

two

conflicting

requirements

quality-of-service

guarantees

and

network

utilization

Deterministic

CBR

is

certainly

the

preferred

choice

for

CBR

Transport

Streams

An

appropriate

scheduling

discipline

needs

to

be

selected

for

the

ATM

network

over

which

the

CBR

Transport

Stream

is

to

be

transported

The

scheduling

discipline

must

be

able

to

guarantee

not

only

bandwidth

but

also

low

worst-case

delays

to

ensure

good

quality

For

the

VBR

Transport

Stream

case

renegotiation

seems

to

be

the

most

appropriate

approach

since

it

attempts

to

capture

the

VBR

nature

of

the

traffic

while

maintaining

very

good

quality

As

stated

in

Chapter

Transport

Stream

has

a

piecewise

constant

bit-rate

that

can

be

used

in

order

to

select

the

renegotiation

points

In

-LSB-

-RSB-

a

new

scheme

is

proposed

to

propagate

changes

in

transport

rate

to

the

decoder

end

so

that

the

decoder

will

be

able

to

filter

the

cell

delay

variation

-LRB-

CDV

-RRB-

by

knowing

the

actual

rate

Although

this

could

be

done

at

PCR

boundaries

only

-LRB-

at

least

one

every

sec

-RRB-

in

that

scheme

a

Rate

Change

Indicator

is

proposed

to

be

sent

with

the

Transport

Stream

exactly

when

the

rate

is

being

changed

at

the

encoder

end

This

changes

the

adaptation

strategy

which

now

has

to

include

this

information

However

in

this

approach

the

ATM

network

does

not

adapt

to

the

new

rate

of

the

source

and

thus

it

continues

the

same

treatment

to

it

Algorithms

need

to

be

defined

to

compute

optimal

renegotiation

points

that

do

not

overload

the

signaling

and

maximize

network

utilization

while

keeping

quality

at

a

high

level

The

effective

bandwidth

between

any

of

these

points

needs

to

be

computed

from

the

Transport

Stream

and

not

from

the

Video

stream

since

the

statistical

properties

of

the

video

source

may

change

after

the

processing

and

multiplexing

that

occurs

in

order

to

obtain

the

actual

Transport

Stream

In

the

case

of

scalable

encoding

combinations

of

the

approaches

stated

above

may

work

efficiently

For

example

the

base

layer

of

a

video

elementary

stream

may

be

sent

over

a

deterministic

CBR

service

using

its

effective

bandwidth

whereas

the

enhancement

layer

may

be

sent

over

an

available

bit-rate

service

Synchronization

issues

arise

in

many

of

these

cases

and

need

to

be

examined

very

carefully

Prioritization

is

another

aspect

that

needs

to

be

taken

into

account

Parameters

that

may

have

to

be

taken

into

account

in

order

to

prioritize

Transport

Streams

are

Transport

packets

that

contain

clock

information

i.e.

packets

containing

PCR

values

Transport

packets

from

the

base

layer

in

the

case

of

scalable

video

stream

Transport

packets

that

denote

the

start

or

the

end

of

a

PES

unit

Combinations

of

all

the

above

However

in

every

case

stream

continuity

must

be

preserved

and

the

prioritization

may

only

affect

different

buffering

strategies

in

the

ATM

switches

during

overload

periods

Clock

Synchronization

Cell

Delay

Variation

-LRB-

CDV

-RRB-

at

the

network

level

is

not

desirable

since

it

introduces

synchronization

problems

between

the

source

-LRB-

or

the

encoder

-RRB-

and

the

decoder

One

solution

is

to

use

a

dejittering

mechanism

that

will

absorb

any

jitter

imposed

by

the

network

A

method

for

doing

that

in

the

case

of

CBR

Transport

Streams

has

been

proposed

in

-LSB-

-RSB-

that

uses

an

adaptive

prefiltering

technique

to

empty

the

dejittering

buffer

However

in

any

case

the

network

has

to

be

able

to

guarantee

a

specific

worst-case

delay

and

bound

the

overall

jitter

Bounded

low

jitter

means

less

complex

PLL

at

the

decoder

end

which

minimizes

the

cost

in

a

set-top

box

not

only

because

of

the

PLL

but

also

because

of

less

memory

required

Thus

the

selection

of

a

scheduling

discipline

for

the

ATM

network

is

extremely

critical

here

Even

though

dejittering

works

very

well

with

CBR

streams

this

is

not

the

case

for

VBR

ones

Without

knowing

the

transport

rate

precisely

it

may

be

impossible

to

provide

constant

delay

across

the

network

since

buffer

occupancy

may

vary

over

time

In

any

case

the

selection

of

a

scheduling

discipline

for

the

ATM

network

is

extremely

critical

and

will

have

to

ensure

bounded

and

low

jitter

In

addition

synchronization

in

distributed

playback

environments

must

be

imposed

using

special

feedback

algorithms

as

noted

in

-LSB-

-RSB-

In

those

cases

clock

information

from

the

corresponding

decoders

is

fed

back

to

the

source

which

then

may

take

appropriate

action

to

ensure

that

all

the

decoders

are

very

close

to

each

other

Experimental

Results

To

study

the

end-to-end

behavior

of

traffic

in

an

ATM

network

we

performed

several

simulation

experiments

using

traces

In

this

chapter

we

discuss

the

results

from

these

experiments

We

start

with

a

description

of

the

network

and

end-system

model

used

in

the

simulations

After

briefly

discussing

the

traces

used

in

the

simulations

we

proceed

to

discuss

the

tradeoffs

in

the

design

of

the

low-pass

filter

-LRB-

LPF

-RRB-

for

the

phaselocked

loop

-LRB-

PLL

-RRB-

at

the

decoder

Results

from

a

number

of

simulation

experiments

are

discussed

next

Finally

we

conclude

with

a

summary

of

the

insights

gained

from

the

simulation

results

Simulation

Model

ATM

ATM

ATM

ATM

ATM

Encoder

display

Figure

Network

topology

used

in

the

simulations

The

network

topology

used

is

shown

in

Figure

It

consists

of

five

cascaded

ATM

switches

The

Transport

Stream

is

sent

through

all

the

cascaded

switches

to

the

display

device

at

the

other

end

At

each

hop

of

the

network

the

end-to-end

video

stream

shares

the

network

link

with

cross

traffic

generated

by

a

set

of

cell

sources

The

ATM

switches

are

assumed

to

be

non-blocking

output-buffered

with

infinite

amount

of

buffering

All

the

cross-connections

are

between

nodes

that

are

connected

to

adjacent

ATM

switches

The

propagation

delay

for

each

network

link

is

set

to

msec

To

Elementary

Stream

Decoder

System

Decoder

PLL

System

playoutbuffer

Dejittering

buffer

Adaptation

layer

ATM

layer

Adaptation

layer

ATM

layer

transport

packets

ATM

Network

Sender

Receiver

Figure

Protocol

stack

of

the

simulation

model

The

cross

traffic

sources

generate

ATM

cells

based

on

the

ON-OFF

traffic

model

-LRB-

Figure

-RRB-

Both

ON

and

OFF-periods

are

exponentially

distributed

Cells

are

sent

during

an

ON-period

at

the

peak

rate

of

the

link

The

burstiness

of

the

sources

can

be

controlled

by

varying

the

mean

length

of

the

ON

and

OFF

periods

In

all

simulations

we

modified

the

number

of

cross-traffic

connections

through

each

link

as

well

as

their

ON

and

OFF

periods

to

vary

the

total

load

on

each

link

The

protocol

stack

of

the

simulation

model

at

the

encoder

end

consists

of

the

ATM

layer

the

adaptation

layer

we

are

using

both

PCR-aware

and

PCR-unaware

packing

schemes

over

and

the

actual

application

layer

from

which

the

transport

packets

are

sent

as

shown

in

Figure

In

the

network

side

various

scheduling

disciplines

that

were

discussed

in

Chapter

-LRB-

FIFO

FFQ

SCFQ

VirtualClock

and

Shaped

VirtualClock

-RRB-

are

used

FFQ

's

frame

size

was

set

to

msecs

in

all

the

experiments

At

the

decoder

end

the

protocol

stack

consists

of

the

ATM

layer

the

adaptation

layer

an

optional

dejittering

buffer

and

the

system

decoder

The

system

decoder

includes

the

PLL

used

to

recover

the

clock

and

the

system

playout

buffer

The

elementary

decoders

for

each

elementary

stream

present

in

the

Transport

Stream

are

not

incorporated

in

the

model

All

the

simulation

were

performed

using

the

OPNET

ON-OFF

duration

ON-period

OFF-period

ATM

cell

Time

Figure

ON-OFF

traffic

model

simulation

tool

Description

of

Traces

The

two

traces

we

used

are

based

on

the

CBR

Transport

Stream

format

and

were

produced

from

hardware

system

encoders

The

first

trace

A

has

a

transport

rate

of

Mbps

It

consists

of

one

program

that

contains

five

elementary

streams

ffl

One

video

elementary

stream

ffl

Two

audio

elementary

streams

ffl

Two

more

elementary

streams

that

are

used

for

other

purposes

such

as

teletext

Two

more

PIDs

are

allocated

for

the

Network

Information

Table

-LRB-

NIT

-RRB-

which

acts

as

program

zero

although

they

are

not

used

The

trace

A

has

a

length

of

approximately

minutes

The

video

stream

is

encoded

from

a

PAL

video

signal

with

a

frame

rate

of

Hz

The

number

of

frames

contained

in

the

video

stream

is

Another

interesting

characteristic

of

the

trace

is

that

the

PES

packets

are

of

variable

size

and

in

the

case

of

the

video

elementary

stream

each

PES

packet

corresponds

to

exactly

one

frame

Besides

the

video

stream

has

been

encoded

using

the

IBPBPBI

format

where

I

B

and

P

correspond

to

I

B

and

P-frames

respectively

Clock

information

in

terms

of

PCRs

is

sent

through

the

video

elementary

stream

60 80 100 120

140 160 180 200

Transport

Rate

-LRB-

Mbps

-RRB-

PCR

number

Transport

Rate

for

trace

A

Transport

Rate

using

PCRs

Long

Term

Average

Selected

Rate

Figure

Transport

Rate

of

trace

A

Since

only

one

program

is

contained

in

the

trace

there

is

no

multiplexing

involved

between

different

programs

Thus

transport

packets

needed

to

be

placed

in

the

trace

in

order

to

obtain

a

constant

bit-rate

The

number

of

transport

packets

found

in

the

trace

was

resulting

in

a

waste

of

the

total

bandwidth

Although

the

transport

rate

of

the

stream

was

specified

as

Mbps

the

rate

computed

from

the

PCRs

found

in

the

trace

using

Eq

-LRB-

-RRB-

was

slightly

different

The

average

transport

rate

over

the

entire

length

of

the

trace

was

found

to

be

Mbps

Figure

shows

the

transport

rate

computed

by

the

first

PCR

values

in

the

trace

Sending

the

stream

with

Mbps

would

have

introduced

significant

jitter

at

the

decoder

increasing

its

locking

time

To

ensure

stability

of

the

decoder

clock

during

the

simulation

time

a

transport

rate

of

Mbps

was

selected

at

the

source

after

performing

several

experiments

with

different

transport

rates

-LRB-

see

Figure

-RRB-

The

second

trace

B

is

a

high

bit-rate

trace

that

multiplexes

programs

Each

program

consists

of

ffl

One

video

elementary

stream

ffl

Five

audio

elementary

streams

Besides

information

for

the

Network

Information

Table

-LRB-

NIT

-RRB-

has

been

put

in

the

60 80 100 120

140 160 180 200

Transport

Rate

-LRB-

Mbps

-RRB-

PCR

number

Transport

Rate

of

trace

B

Transport

Rate

using

PCRs

Long

Term

Average

Selected

Rate

Figure

Transport

Rate

of

trace

B.

stream

as

program

zero

Since

all

the

programs

are

similar

the

first

program

was

selected

for

the

simulations

The

length

of

the

trace

is

secs

The

format

of

the

video

elementary

stream

is

NTSC

with

frame

rate

of

Hz

Since

this

trace

was

also

produced

by

a

hardware

encoder

the

values

of

the

transport

rate

computed

from

the

PCRs

in

the

trace

do

not

give

the

same

constant

value

as

is

evident

from

Figure

An

actual

transport

rate

was

not

specified

in

this

case

Thus

the

longterm

average

-LRB-

Mbps

-RRB-

was

used

to

transmit

the

stream

to

the

network

The

reason

is

that

the

long-term

average

is

the

same

as

the

average

transport

rate

during

the

simulation

time

interval

for

this

case

and

since

the

introduced

jitter

due

to

packetization

for

the

PCR-unaware

case

is

negligible

and

does

not

affect

the

lock

time

and

the

frequency

of

the

occurrences

of

PCR

values

is

larger

than

the

one

in

the

trace

A

the

time

to

lock

on

the

MHz

frequency

is

small

enough

to

give

us

enough

time

slack

to

study

the

performance

The

total

number

of

transport

packets

in

the

stream

was

and

the

number

of

transport

packets

needed

for

padding

was

Thus

the

wasted

bandwidth

is

approximately

Subtractor

LPF

gain

VCO

STC

Counter

System

Time

Clock

System

Clock

Frequency

PCR

e

f

Figure

Block

diagram

of

the

PLL

used

in

the

decoder

Low-Pass

Filter

Design

The

block

diagram

of

the

PLL

used

in

the

decoder

at

the

receiver

is

shown

in

Figure

We

evaluated

a

number

of

LPF

designs

in

order

to

select

the

most

appropriate

one

for

the

simulations

All

the

LPFs

considered

were

Butterworth

LPFs

with

different

orders

and

cutoff

frequencies

The

designed

PLL

must

have

a

bandwidth

that

is

much

more

narrow

than

the

one

of

the

demodulator

sub-carrier

reconstructor

which

is

about

Hz

-LSB-

-RSB-

Thus

different

cutoff

frequencies

around

Hz

were

considered

in

the

LPF

selection

process

The

LPFs

used

for

this

process

were

digital

LPFs

having

a

sampling

frequency

of

Hz

and

the

following

transfer

function

H

-LRB-

z

-RRB-

PNk

ffkz?k

PNk

kz?k

-LRB-

-RRB-

where

N

is

the

order

of

the

LPF

and

ffk

and

k

are

the

coefficients

of

the

filter

The

values

used

are

the

ones

in

Table

Since

the

arrival

times

of

the

transport

packets

containing

PCR

values

may

not

fall

exactly

at

the

sampling

points

of

the

filter

the

actual

PCR

value

is

changed

to

the

one

that

could

have

arrived

at

the

next

sampling

tick

using

decoder

's

frequency

-LRB-

which

may

not

be

the

same

as

the

encoder

's

one

-RRB-

This

quantization

process

introduces

a

small

error

which

however

does

not

affect

the

convergence

time

and

the

steady-state

behavior

-LSB-

-RSB-

The

voltage-controlled

oscillator

-LRB-

VCO

-RRB-

of

the

PLL

was

designed

to

work

according

to

the

following

formula

STC

frequency

MHz

-LRB-

-RRB-

Order

-LRB-

N

-RRB-

Cutoff

-LRB-

Hz

-RRB-

Coefficients

Table

Coefficients

of

the

various

LPFs

used

in

the

experiments

where

f

is

the

filtered

difference

between

the

current

STC

value

and

the

incoming

PCR

value

The

design

of

the

VCO

takes

into

account

the

maximum

difference

in

ticks

of

a

MHz

clock

when

the

jitter

is

at

its

maximum

allowed

value

Since

according

to

MPEG

standard

-LSB-

-RSB-

the

maximum

jitter

expected

is

around

ms

this

difference

is

around

ticks

For

this

maximum

difference

the

STC

frequency

must

operate

within

the

limits

defined

by

the

standard

-LRB-

Eq

-LRB-

-RRB-

-RRB-

To

select

the

LPF

for

simulations

we

conducted

an

experiment

where

the

stream

A

was

transmitted

end

to

end

through

the

network

with

the

cross-traffic

sources

turned

off

The

60 80 100 120

Delay

-LRB-

msecs

-RRB-

Time

-LRB-

sec

-RRB-

PCR

delays

under

PCR-unaware

scheme

Figure

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR-unaware

scheme

scheduling

discipline

inside

the

ATM

switches

was

set

to

FIFO

since

any

work-conserving

scheduler

that

preserves

the

packet

order

behaves

exactly

the

same

as

FIFO

does

when

no

cross-traffic

is

present

Both

the

PCR-aware

and

PCR-unaware

adaptation

schemes

for

Transport

Streams

were

used

since

the

selected

LPF

has

to

operate

satisfactorily

in

both

cases

However

it

is

obvious

that

the

worst

case

is

the

PCR-unaware

case

since

if

the

PLL

operates

satisfactorily

there

it

will

operate

satisfactorily

in

the

PCR-aware

case

also

Besides

the

decoder

's

clock

frequency

was

set

to

the

minimum

allowed

frequency

in

which

is

-LRB-

MHz

Hz

-RRB-

or

-LRB-

MHz

ppm

-RRB-

so

that

we

can

observe

the

process

of

locking

through

time

Before

discussing

the

behavior

of

the

various

LPFs

in

the

above

experiment

we

first

examine

the

delays

experienced

by

transport

packets

containing

PCR

values

In

the

PCR

unaware

case

-LRB-

Figure

-RRB-

the

delays

fall

into

two

distinct

clusters

as

we

would

expect

The

ms

cluster

contains

all

the

transport

packets

with

PCR

values

that

experienced

packetization

delay

of

one

transport

packet

whereas

the

ms

cluster

contains

all

the

others

In

the

PCR-aware

case

-LRB-

Figure

-RRB-

the

minimum

delays

are

lower

than

the

minimum

delays

under

the

PCR-unaware

case

which

is

a

result

of

the

peak-rate

shaping

at

the

source

The

rate

allocated

to

the

stream

under

PCR-aware

scheme

60 80 100 120

Delay

-LRB-

msecs

-RRB-

Time

-LRB-

sec

-RRB-

PCR

delays

under

PCR-aware

scheme

Figure

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR-aware

scheme

60 80 100 120

Deviation

from

-LRB-

ppm

-RRB-

Time

-LRB-

sec

-RRB-

order

LPFs

Hz

Hz

Hz

Hz

Figure

Decoder

frequency

using

PCR-unaware

and

several

first-order

LPFs

with

different

cutoff

frequencies

is

higher

than

the

one

allocated

in

the

PCR-unaware

case

and

this

results

in

lower

delays

The

bandwidth

allocation

in

the

PCR-unaware

case

is

completely

deterministic

whereas

in

the

PCR-aware

case

it

is

not

However

the

bandwidth

allocated

to

the

stream

in

the

latter

case

after

off-line

processing

of

the

trace

is

of

the

rate

that

the

stream

would

have

had

if

each

transport

packet

had

formed

exactly

one

SDU

60 80 100 120

Deviation

from

-LRB-

ppm

-RRB-

Time

-LRB-

sec

-RRB-

order

LPFs

Hz

Hz

Hz

Figure

Decoder

frequency

using

PCR-unaware

and

several

second-order

LPFs

with

different

cutoff

frequencies

Figure

shows

the

decoder

's

frequency

for

a

first-order

LPF

using

the

PCR-unaware

scheme

Choosing

a

cutoff

of

Hz

gives

us

a

stable

clock

but

has

the

disadvantage

of

a

very

long

lock

time

This

affects

not

only

the

buffering

needed

but

also

the

quality

of

the

transmitted

video

since

during

this

transient

time

the

PAL

demodulator

's

frequency

suffers

from

slow

variations

which

may

cause

picture

artifacts

Beyond

Hz

cutoff

the

clock

recovered

is

not

acceptable

and

no

actual

filtering

is

performed

In

the

case

of

second-order

LPFs

for

the

same

case

-LRB-

Figure

-RRB-

the

clocks

recovered

using

cutoff

frequencies

of

and

Hz

are

both

acceptable

without

having

a

very

long

lock

time

especially

in

the

case

of

Hz

As

in

the

previous

case

cutoff

frequencies

higher

than

Hz

do

not

provide

an

acceptable

clock

and

in

practice

do

not

perform

the

filtering

needed

by

the

color

sub-carrier

generation

circuit

Even

with

a

third-order

LPF

the

clock

is

still

unacceptable

for

those

cutoff

frequencies

as

shown

in

Figure

It

must

be

noted

here

that

since

the

actual

trace

has

a

clock

drift

the

PLL

does

not

lock

at

exactly

MHz

but

at

-LRB-

MHz

ppm

-RRB-

This

introduces

a

constant

non-zero

phase

error

even

after

the

PLL

is

locked

as

shown

in

Figure

The

lock

time

of

the

PLL

may

affect

the

amount

of

additional

buffering

needed

at

the

decoder

The

highest

lock

time

was

obtained

when

the

filter

used

was

a

first-order

LPF

with

60 80 100 120

Deviation

from

-LRB-

ppm

-RRB-

Time

-LRB-

sec

-RRB-

order

LPFs

Hz

Figure

Decoder

frequency

using

PCR-unaware

and

several

third-order

LPFs

with

different

cutoff

frequencies

60 80 100 120

Difference

in

ticks

of

clock

Time

-LRB-

sec

-RRB-

PCR-STC

difference

under

PCR-unaware

scheme

order

LPF

Hz

cutoff

Figure

PCR-STC

difference

under

the

PCR-unaware

scheme

order

LPF

with

Hz

cutoff

Hz

cutoff

frequency

and

PCR-unaware

scheme

producing

the

phase

difference

shown

in

Figure

The

phase

difference

in

this

experiment

is

the

same

as

the

difference

between

incoming

PCR

values

and

the

local

STC

for

the

PCR-aware

case

since

there

is

no

crosstraffic

However

in

that

case

an

additional

phase

difference

is

imposed

by

the

jitter

from

the

network

Thus

the

phase

difference

corresponds

to

the

difference

between

the

schedule

60 80 100 120

Difference

in

ticks

of

clock

Time

-LRB-

sec

-RRB-

PCR-STC

difference

under

PCR-aware

scheme

order

LPF

cutoff

Figure

PCR-STC

difference

under

the

PCR-aware

scheme

order

LPF

with

Hz

cutoff

60 80 100 120

Difference

in

ticks

of

clock

Time

-LRB-

sec

-RRB-

PCR-STC

difference

under

PCR-aware

scheme

order

LPF

cutoff

Figure

PCR-STC

difference

under

the

PCR-aware

scheme

order

LPF

with

Hz

cutoff

of

forwarding

access

units

from

the

system

decoder

buffer

without

any

network

imposed

jitter

and

the

one

corresponding

to

the

simulation

being

examined

In

this

LPF

selection

experiment

it

can

be

noted

that

the

maximum

difference

between

any

incoming

PCR

value

and

the

STC

value

is

around

ticks

which

corresponds

to

additional

buffering

for

ms

-LRB-

or

bytes

according

to

the

rate

of

the

stream

-RRB-

The

lowest

maximum

difference

was

achieved

for

the

highest

cutoff

frequencies

-LRB-

Hz

-RRB-

for

LPF

of

any

order

-LRB-

Figures

and

-RRB-

The

maximum

buffer

occupancy

in

all

the

cases

did

not

change

and

this

maximum

occurred

just

before

the

first

access

unit

was

forwarded

to

the

elementary

decoder

The

reason

is

that

at

the

time

the

first

access

unit

needs

to

be

forwarded

the

phase

difference

is

very

small

-LRB-

at

most

ticks

-RRB-

During

the

time

that

corresponds

to

this

phase

difference

-LRB-

around

ms

-RRB-

at

most

one

additional

transport

packet

could

be

received

Even

in

that

case

since

the

stream

is

padded

with

a

large

number

of

transport

packets

the

total

buffering

may

not

change

because

a

transport

packet

is

never

placed

into

the

system

decoder

buffer

The

reason

why

the

maximum

occurs

at

the

first

access

unit

is

because

the

first

access

unit

forwarded

in

this

case

is

an

I-frame

then

a

B-frame

and

after

that

another

I-frame

resulting

in

the

only

case

in

which

two

I-frames

are

forwarded

in

a

frame

sequence

consisting

of

three

frames

Since

the

maximum

phase

difference

occurs

some

time

after

the

first

access

unit

is

forwarded

to

the

elementary

decoder

and

this

phase

difference

can

not

exceed

the

first

maximum

the

maximum

buffer

occupancy

during

the

simulation

is

not

affected

Besides

since

the

maximum

phase

difference

is

never

more

than

ticks

-LRB-

ms

using

MHz

clock

-RRB-

between

any

two

schedules

for

forwarding

access

units

and

between

any

two

points

in

time

the

difference

in

terms

of

the

number

of

frames

that

have

been

forwarded

to

the

elementary

decoder

is

at

most

one

frame

The

buffer

occupancy

is

similar

in

all

cases

with

small

discrepancies

that

come

from

the

phase

differences

when

using

the

various

LPFs

-LRB-

Figure

-RRB-

The

sequences

of

I

B

and

P-frames

are

shown

in

the

magnified

view

as

well

as

the

fact

that

each

PES

packet

corresponds

to

exactly

one

frame

for

the

video

elementary

stream

As

it

can

be

noted

there

is

a

fixed

minimum

buffer

occupancy

of

KBytes

which

has

to

do

with

the

phase

difference

between

the

first

PCR

value

and

the

PTS

value

of

the

first

access

unit

and

it

is

a

characteristic

of

the

actual

trace

In

this

case

this

difference

gives

us

the

flexibility

of

not

underflowing

even

with

excessive

jitter

This

amount

of

buffering

corresponds

to

almost

ms

or

frames

-LRB-

sequence

of

I

B

and

P-frames

-RRB-

Since

the

first-order

and

third-order

LPFs

used

do

not

give

acceptable

quality

the

60 80 100 120

Time

-LRB-

sec

-RRB-

Buffer

Occupancy

for

trace

A

Figure

Buffer

occupancy

for

trace

A

under

PCR-unaware

scheme

using

order

LPF

with

cutoff

frequency

of

Hz

second-order

LPFs

seem

to

be

the

choice

in

this

case

In

both

PCR-aware

and

PCR-unaware

cases

the

second-order

LPFs

with

cutoff

frequencies

of

and

Hz

give

results

that

fall

within

PAL

clock

requirements

as

shown

in

Figures

and

The

rate

of

change

of

the

PAL

frequency

has

to

be

examined

next

for

the

PCR-unaware

case

which

is

the

most

demanding

one

In

this

case

the

requirements

are

much

more

stringent

and

thus

only

after

averaging

over

a

second

time

window

PAL

clock

drift

requirements

could

be

met

and

only

for

the

case

of

cutoff

frequencies

of

and

Hz

-LRB-

Figure

-RRB-

Even

though

the

LPF

with

Hz

cutoff

frequency

is

more

stable

the

higher

lock

time

-LRB-

almost

seconds

-RRB-

is

undesirable

since

during

that

time

the

quality

may

not

be

acceptable

Thus

the

LPF

that

was

selected

for

the

simulations

is

a

second-order

butterworth

LPF

with

Hz

cutoff

frequency

60 80 100 120

Deviation

from

MHz

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

PAL

frequency

under

PCR-unaware

with

order

LPFs

Hz

Hz

Hz

Figure

PAL

color

sub-carrier

generation

frequency

under

PCR-unaware

scheme

using

order

LPFs

60 80 100 120

Deviation

from

MHz

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

PAL

frequency

under

PCR-aware

with

order

LPFs

Hz

Hz

Hz

Figure

PAL

color

sub-carrier

generation

frequency

under

PCR-aware

scheme

using

order

LPFs

80 90 100 110

Frequency

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

Rate

of

Change

of

PAL

frequency

under

PCR-unaware

with

order

LPFs

Hz

Hz

Hz

Figure

Rate

of

change

of

PAL

color

sub-carrier

generation

frequency

under

PCR-unaware

scheme

using

order

LPFs

and

averaging

over

seconds

Simulation

Results

In

this

section

we

discuss

results

from

a

number

of

simulation

experiments

we

performed

to

study

the

end-to-end

behavior

of

Transport

Streams

in

an

ATM

network

All

the

experiments

were

performed

using

the

network

topology

of

Figure

Except

for

Experiment

in

which

the

trace

B

was

used

all

the

others

were

performed

with

the

trace

A.

Experiment

60 80 100 120

Delay

-LRB-

msecs

-RRB-

Time

-LRB-

sec

-RRB-

PCR

delays

under

PCR-unaware

scheme

and

FIFO

scheduling

discipline

Figure

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR-unaware

scheme

and

FIFO

scheduling

discipline

for

experiment

The

goal

of

this

experiment

is

to

study

performance

under

light-load

conditions

for

different

scheduling

disciplines

In

this

experiment

traffic

from

twenty

ON-OFF

sources

at

each

cross-traffic

node

was

multiplexed

with

the

end-to-end

stream

The

speed

of

each

link

in

the

network

was

set

at

Mbps

The

overall

load

on

any

downstream

output

link

of

the

ATM

switches

was

set

to

approximately

by

allocating

Mbps

bandwidth

to

cross-traffic

at

each

link

-LRB-

the

source

gets

almost

Mbps

including

the

overhead

from

the

adaptation

layer

and

each

other

cross-traffic

source

adds

Mbps

load

-RRB-

The

delay

experienced

by

transport

packets

containing

PCRs

is

plotted

in

Figures

and

for

the

PCR-unaware

and

PCR-aware

cases

respectively

A

FIFO

scheduler

was

60 80 100 120

Delay

-LRB-

msecs

-RRB-

Time

-LRB-

sec

-RRB-

PCR

delays

under

PCR-aware

scheme

and

FIFO

scheduling

discipline

Figure

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR-aware

scheme

and

FIFO

scheduling

discipline

for

experiment

60 80 100 120

Delay

-LRB-

msecs

-RRB-

Time

-LRB-

sec

-RRB-

PCR

delays

under

PCR-unaware

scheme

and

FFQ

scheduling

discipline

Figure

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR-unaware

scheme

and

FFQ

scheduling

discipline

for

experiment

employed

in

the

switches

in

these

experiments

The

maximum

delay

is

close

to

msecs

for

both

PCR-unaware

and

PCR-aware

cases

Although

the

delays

tend

to

spread

out

for

FIFO

the

majority

of

the

transport

packets

containing

PCRs

fall

into

the

same

regions

as

in

the

case

of

network

without

any

background

load

With

the

frame-based

fair

queueing

-LRB-

FFQ

-RRB-

scheduler

the

delays

are

much

more

well-behaved

as

shown

in

Figure

Note

60 80 100 120

Deviation

from

MHz

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

PAL

frequency

under

PCR-unaware

FIFO

FFQ

SCFQ

VirtualClock

Shaped

VirtualClock

Figure

PAL

color

sub-carrier

generation

frequency

under

PCR-unaware

scheme

for

experiment

that

the

delays

in

this

case

are

almost

identical

to

the

case

with

no

cross-traffic

observed

in

Figure

This

is

because

of

the

isolation

provided

by

the

fair

queueing

scheduler

The

recovered

clock

at

the

decoder

in

this

experiment

is

shown

in

Figures

and

for

various

scheduling

algorithms

in

the

switches

for

the

PCR-unaware

and

PCR-aware

schemes

respectively

The

PAL

frequency

is

derived

by

normalizing

the

recovered

clock

frequency

by

a

factor

of

approximately

-LRB-

-RRB-

which

is

the

ratio

of

PAL

's

central

frequency

to

's

central

frequency

The

effect

of

jitter

with

FIFO

scheduling

is

evident

in

the

PCR-aware

case

-LRB-

Figure

-RRB-

However

even

with

FIFO

the

recovered

clock

was

within

the

specifications

for

the

frequency

deviation

-LRB-

Hz

-RRB-

and

the

rate

of

change

of

PAL

's

color

sub-carrier

generation

frequency

-LRB-

Figures

and

-RRB-

All

the

other

scheduling

algorithms

provided

almost

the

same

performance

in

terms

of

both

the

delay

and

the

quality

of

the

recovered

clock

as

in

the

case

when

the

cross-traffic

sources

were

turned

off

60 80 100 120

Deviation

from

MHz

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

PAL

frequency

under

PCR-aware

FIFO

FFQ

SCFQ

VirtualClock

Shaped

VirtualClock

Figure

PAL

color

sub-carrier

generation

frequency

under

PCR-aware

scheme

for

experiment

80 90 100 110

Frequency

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

Rate

of

Change

of

PAL

frequency

under

FIFO

PCR-aware

PCR-unaware

Figure

Rate

of

change

of

PAL

color

sub-carrier

generation

frequency

under

FIFO

scheduling

discipline

for

experiment

-LRB-

averaged

over

secs

-RRB-

Experiment

This

experiment

was

performed

in

order

to

test

performance

under

mediumload

conditions

In

this

experiment

thirty

ON-OFF

sources

from

each

cross-traffic

node

were

multiplexed

with

the

stream

at

each

network

link

The

speed

of

each

link

in

the

network

was

still

Mbps

The

overall

load

on

any

downstream

output

link

of

the

ATM

switches

was

increased

to

resulting

in

Mbps

aggregate

rate

of

the

ON-OFF

sources

per

hop

or

Mbps

load

per

source

60 80 100 120

Delay

-LRB-

msecs

-RRB-

Time

-LRB-

sec

-RRB-

PCR

delays

under

PCR-unaware

scheme

and

FIFO

scheduling

discipline

Figure

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR-unaware

scheme

and

FIFO

scheduling

discipline

for

experiment

The

delays

experienced

by

transport

packets

containing

PCRs

in

the

FIFO

case

are

plotted

in

Figures

and

respectively

for

the

PCR-unaware

and

PCR-aware

cases

We

can

see

that

the

maximum

delay

now

is

close

to

msecs

for

the

PCR-unaware

case

and

close

to

ms

for

the

PCR-aware

case

Thus

the

maximum

jitter

at

the

receiver

for

transport

packets

containing

PCRs

is

ms.

In

both

cases

-LRB-

PCR-aware

and

PCR-unaware

-RRB-

the

delays

are

spread

out

for

FIFO

and

the

majority

of

the

values

fall

between

and

ms.

Even

though

the

clock

requirements

in

terms

of

PAL

frequency

variation

are

within

the

specifications

-LRB-

Figures

and

-RRB-

it

is

not

the

case

for

the

clock

drift

since

we

must

average

over

an

seconds

window

in

order

to

meet

the

standard

as

shown

in

Figure

60 80 100 120

Delay

-LRB-

msecs

-RRB-

Time

-LRB-

sec

-RRB-

PCR

delays

under

PCR-aware

scheme

and

FIFO

scheduling

discipline

Figure

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR-aware

scheme

and

FIFO

scheduling

discipline

for

experiment

Again

in

this

experiment

the

effect

of

jitter

on

the

clock

recovery

with

FIFO

scheduling

is

more

noticeable

in

the

PCR-aware

case

-LRB-

Figure

-RRB-

The

other

scheduling

disciplines

yield

almost

perfect

results

in

both

delays

and

recovered

clock

's

quality

and

provide

full

isolation

of

the

flow

-LRB-

see

Figure

for

PCR

delays

under

PCR-unaware

and

using

Shaped

VirtualClock

-RRB-

60 80 100 120

Delay

-LRB-

msecs

-RRB-

Time

-LRB-

sec

-RRB-

PCR

delays

under

PCR-unaware

scheme

and

Shaped

VirtualClock

scheduling

discipline

Figure

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR-unaware

scheme

and

Shaped

VirtualClock

scheduling

discipline

for

experiment

60 80 100 120

Deviation

from

MHz

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

PAL

frequency

under

PCR-unaware

FIFO

FFQ

SCFQ

VirtualClock

Shaped

VirtualClock

Figure

PAL

color

sub-carrier

generation

frequency

under

PCR-unaware

scheme

for

experiment

60 80 100 120

Deviation

from

MHz

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

PAL

frequency

under

PCR-aware

FIFO

FFQ

SCFQ

VirtualClock

Shaped

VirtualClock

Figure

PAL

color

sub-carrier

generation

frequency

under

PCR-aware

scheme

for

experiment

80 90 100 110

Frequency

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

Rate

of

Change

of

PAL

frequency

under

FIFO

PCR-aware

-LRB-

window

-RRB-

PCR-aware

-LRB-

window

-RRB-

PCR-unaware

-LRB-

window

-RRB-

PCR-unaware

-LRB-

window

-RRB-

Figure

Rate

of

change

of

PAL

color

sub-carrier

generation

frequency

under

FIFO

scheduling

discipline

for

experiment

Experiment

The

objective

of

this

experiment

is

to

study

the

performance

of

the

Transport

Stream

in

a

heavily

loaded

network

As

in

the

previous

experiment

thirty

ON-OFF

sources

from

each

cross-traffic

node

were

multiplexed

with

the

end-to-end

stream

The

speed

of

each

link

in

the

network

was

Mbps

The

overall

load

on

any

downstream

output

link

of

the

ATM

switches

was

increased

to

yielding

an

aggregate

rate

of

Mbps

for

the

ON-OFF

cross-traffic

sources

at

each

hop

60 80 100 120

Delay

-LRB-

msecs

-RRB-

Time

-LRB-

sec

-RRB-

PCR

delays

Figure

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR-unaware

scheme

and

FIFO

scheduling

discipline

for

experiment

With

FIFO

scheduling

the

transport

packets

containing

PCRs

experienced

the

delays

shown

in

Figures

and

for

the

PCR-unaware

and

PCR-aware

case

respectively

The

maximum

delay

is

close

to

msecs

in

both

packing

schemes

Thus

the

maximum

jitter

of

the

transport

packets

containing

PCRs

is

ms.

In

both

cases

-LRB-

PCR-aware

and

PCR-unaware

-RRB-

the

delays

are

spread

out

for

FIFO

and

the

majority

of

them

fall

between

and

ms.

The

packing

scheme

in

this

case

does

not

make

any

difference

and

the

quality

degradation

is

indistinguishable

in

both

cases

With

FIFO

scheduler

not

only

the

clock

requirements

in

terms

of

PAL

frequency

variation

could

not

be

met

-LRB-

Figures

and

-RRB-

but

also

the

clock

drift

is

unacceptable

-LRB-

Figures

and

-RRB-

60 80 100 120

Delay

-LRB-

msecs

-RRB-

Time

-LRB-

sec

-RRB-

PCR

delays

under

PCR-aware

scheme

and

FIFO

scheduling

discipline

Figure

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR-aware

scheme

and

FIFO

scheduling

discipline

for

experiment

60 80 100 120

Deviation

from

MHz

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

PAL

frequency

under

PCR-unaware

FIFO

FFQ

SCFQ

VirtualClock

Shaped

VirtualClock

Figure

PAL

color

sub-carrier

generation

frequency

under

PCR-unaware

scheme

for

experiment

The

other

scheduling

disciplines

except

for

self-clocked

fair-queueing

-LRB-

SCFQ

-RRB-

yielded

perfect

results

in

terms

of

both

the

delay

and

the

quality

of

the

recovered

clock

However

the

PCR

delays

under

SCFQ

tend

to

spread

out

in

both

PCR-unaware

and

PCR-aware

schemes

-LRB-

Figures

and

-RRB-

resulting

in

a

maximum

jitter

of

ms

for

the

PCR

unaware

case

This

jitter

however

was

still

not

large

enough

to

affect

the

quality

of

the

recovered

clock

60 80 100 120

Deviation

from

MHz

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

PAL

frequency

under

PCR-aware

FIFO

FFQ

SCFQ

VirtualClock

Shaped

VirtualClock

Figure

PAL

color

sub-carrier

generation

frequency

under

PCR-aware

scheme

for

experiment

80 90 100 110

Frequency

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

Rate

of

Change

of

PAL

frequency

FIFO

FFQ

SCFQ

VirtualClock

Shaped

VirtualClock

Figure

Rate

of

change

of

PAL

color

sub-carrier

generation

frequency

under

PCR-unaware

for

experiment

-LRB-

averaged

over

secs

-RRB-

80 90 100 110

Frequency

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

Rate

of

Change

of

PAL

frequency

FIFO

FFQ

SCFQ

VirtualClock

Shaped

VirtualClock

Figure

Rate

of

change

of

PAL

color

sub-carrier

generation

frequency

under

PCR-aware

for

experiment

-LRB-

averaged

over

secs

-RRB-

60 80 100 120

Delay

-LRB-

msecs

-RRB-

Time

-LRB-

sec

-RRB-

PCR

delays

under

PCR-unaware

scheme

and

SCFQ

scheduling

discipline

Figure

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR-unaware

scheme

and

SCFQ

scheduling

discipline

for

experiment

60 80 100 120

Delay

-LRB-

msecs

-RRB-

Time

-LRB-

sec

-RRB-

PCR

delays

under

PCR-aware

scheme

and

SCFQ

scheduling

discipline

Figure

Delays

experienced

by

transport

packets

containing

PCRs

under

the

PCR-aware

scheme

and

SCFQ

scheduling

discipline

for

experiment

Experiment

The

previous

experiments

suggest

that

the

use

of

a

fair-queueing

scheduling

algorithm

is

essential

in

order

to

be

able

to

provide

QoS

guarantees

under

various

load

conditions

In

this

experiment

we

try

to

check

whether

any

fair-queueing

algorithm

is

enough

in

order

to

ensure

good

quality

We

compare

FFQ

with

SCFQ

in

a

heavily

loaded

network

with

a

large

number

of

ON-OFF

sources

Since

theoretically

SCFQ

has

a

delay

bound

that

is

of

the

order

of

the

number

of

the

multiplexed

connections

we

increased

the

number

of

cross-traffic

sources

Thus

the

scenario

was

the

same

as

in

Experiment

except

for

the

fact

that

the

number

of

cross-traffic

sources

starting

at

the

second

ATM

switch

was

changed

to

either

or

depending

on

the

sub-experiment

The

speed

of

each

link

in

the

network

was

Mbps

Probalility

Delay

-LRB-

msec

-RRB-

CDF

of

PCR

delays

under

SCFQ

sources

PCR-aware

sources

PCR-aware

sources

PCR-unaware

sources

PCR-unaware

Figure

CDF

for

PCR

delays

under

SCFQ

for

experiment

From

the

cumulative

distribution

functions

-LRB-

CDF

-RRB-

of

the

PCR

delays

under

SCFQ

-LRB-

Figure

-RRB-

we

observe

that

the

delays

with

sources

are

larger

than

the

ones

with

sources

This

can

be

explained

since

in

the

former

case

each

of

the

sources

has

higher

rate

than

in

the

case

of

sources

resulting

in

higher

burstiness

Thus

the

crosstraffic

sources

tend

to

get

synchronized

more

often

than

the

case

of

sources

yielding

Probability

Delay

-LRB-

msec

-RRB-

CDF

of

PCR

delays

under

FFQ

sources

PCR-aware

sources

PCR-aware

sources

PCR-unaware

sources

PCR-unaware

Figure

CDF

for

PCR

delays

under

FFQ

for

experiment

higher

delays

However

the

CDFs

are

very

close

The

maximum

jitter

occurs

for

the

PCR

unaware

case

and

has

the

value

of

msecs

In

the

FFQ

case

the

CDFs

of

the

PCR

delays

for

the

PCR-aware

case

shown

in

Figure

are

identical

The

same

holds

for

the

PCR-unaware

case

Besides

there

is

clear

distinction

between

transport

packets

that

suffer

from

packetization

delay

and

the

rest

that

do

not

which

is

not

the

case

under

SCFQ

Testing

the

quality

of

the

PAL

frequency

produced

we

can

see

that

SCFQ

gives

acceptable

quality

for

sources

in

all

the

cases

-LRB-

Figures

and

-RRB-

However

in

the

case

of

sources

and

PCR-unaware

scheme

both

the

PAL

frequency

and

the

clock

drift

of

the

PAL

frequency

could

not

meet

their

specifications

-LRB-

Figures

and

-RRB-

As

can

be

seen

in

Figure

at

the

second

there

is

a

clock

drift

of

Hz/sec

that

violates

the

specifications

On

the

other

hand

FFQ

provides

almost

perfect

isolation

of

the

flow

that

results

in

very

good

quality

of

the

recovered

clock

in

all

the

cases

-LRB-

Figures

-LCB-

-RRB-

The

inferior

behavior

of

SCFQ

with

sources

suggests

that

even

though

the

CDFs

for

the

delays

are

the

same

with

the

case

having

sources

the

correlation

of

the

jitter

is

not

and

this

degrades

the

quality

heavily

compared

to

the

case

of

sources

-LRB-

Figure

-RRB-

This

suggests

that

not

only

the

maximum

jitter

has

to

be

minimized

by

the

scheduler

but

also

the

autocorrelation

of

the

jitter

A

similar

result

was

obtained

in

-LSB-

-RSB-

60 80 100 120

Deviation

from

MHz

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

PAL

frequency

under

PCR-unaware

FFQ

SCFQ

Figure

PAL

color

sub-carrier

generation

frequency

under

PCR-unaware

scheme

and

using

sources

for

experiment

60 80 100 120

Deviation

from

MHz

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

PAL

frequency

under

PCR-aware

FFQ

SCFQ

Figure

PAL

color

sub-carrier

generation

frequency

under

PCR-aware

scheme

and

using

sources

for

experiment

60 80 100 120

Deviation

from

MHz

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

PAL

frequency

under

PCR-unaware

FFQ

SCFQ

Figure

PAL

color

sub-carrier

generation

frequency

under

PCR-unaware

scheme

and

using

sources

for

experiment

60 80 100 120

Deviation

from

MHz

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

PAL

frequency

under

PCR-aware

FFQ

SCFQ

Figure

PAL

color

sub-carrier

generation

frequency

under

PCR-aware

scheme

and

using

sources

for

experiment

80 90 100 110

Frequency

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

Rate

of

Change

of

PAL

frequency

FFQ

SCFQ

Figure

Rate

of

change

of

PAL

color

sub-carrier

generation

frequency

under

PCR-unaware

scheme

and

using

sources

for

experiment

-LRB-

averaged

over

secs

-RRB-

80 90 100 110

Frequency

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

Rate

of

Change

of

PAL

frequency

FFQ

SCFQ

Figure

Rate

of

change

of

PAL

color

sub-carrier

generation

frequency

under

PCR-aware

scheme

and

using

sources

for

experiment

-LRB-

averaged

over

secs

-RRB-

80 90 100 110

Frequency

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

Rate

of

Change

of

PAL

frequency

FFQ

SCFQ

Figure

Rate

of

change

of

PAL

color

sub-carrier

generation

frequency

under

PCR-unaware

scheme

and

using

sources

for

experiment

-LRB-

averaged

over

secs

-RRB-

80 90 100 110

Frequency

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

Rate

of

Change

of

PAL

frequency

FFQ

SCFQ

Figure

Rate

of

change

of

PAL

color

sub-carrier

generation

frequency

under

PCR-aware

scheme

and

using

sources

for

experiment

-LRB-

averaged

over

secs

-RRB-

Autocorrelation

Lag

PCR

Delays

autocorrelation

sources

sources

Figure

PCR

delays

autocorrelation

for

SCFQ

under

PCR-unaware

scheme

for

experiment

Experiment

The

impact

in

quality

of

using

a

dejittering

buffer

is

studied

in

this

experiment

The

experiment

is

the

same

as

experiment

with

two

differences

first

a

dejittering

buffer

with

two

different

sizes

-LRB-

for

two

sub-experiments

-RRB-

was

placed

before

the

display

and

second

the

experiment

was

done

using

only

PCR-unaware

scheme

and

FIFO

scheduling

discipline

The

dejittering

buffer

size

was

either

ms

or

ms

depending

on

the

sub-experiment

values

that

have

been

chosen

from

actual

products

60 80 100 120

Delay

-LRB-

msecs

-RRB-

Time

-LRB-

sec

-RRB-

PCR

delays

Figure

Delays

experienced

by

transport

packets

containing

PCRs

under

FIFO

scheduling

discipline

and

without

any

dejittering

for

experiment

The

delays

experienced

by

transport

packets

containing

PCRs

are

shown

in

Figures

and

As

was

expected

the

PCR

delays

without

any

dejittering

are

in

general

lower

than

the

ones

obtained

by

using

dejittering

buffer

Since

the

maximum

delay

without

any

dejittering

is

around

ms

we

expect

that

the

dejittering

buffers

used

in

the

experiments

will

underflow

or

overflow

depending

on

the

situations

The

ms

dejittering

buffer

underflows

and

overflows

much

more

often

compared

to

the

ms

one

which

under

or

overflows

around

times

The

difference

between

the

incoming

PCRs

and

the

local

STC

values

for

all

the

cases

determine

how

the

quality

will

be

affected

by

the

change

at

the

input

60 80 100 120

Delay

-LRB-

msecs

-RRB-

Time

-LRB-

sec

-RRB-

PCR

delays

Figure

Delays

experienced

by

transport

packets

containing

PCRs

under

FIFO

scheduling

discipline

and

with

ms

dejittering

buffer

for

experiment

of

the

LPF

In

all

the

cases

-LRB-

Figures

and

-RRB-

this

difference

produces

unacceptable

quality

in

terms

of

PAL

frequency

and

clock

drift

as

can

be

seen

in

Figures

and

for

all

the

cases

The

clock

is

unstable

and

the

quality

unacceptable

However

the

system

decoder

buffer

is

affected

very

slightly

in

these

three

cases

even

with

excessive

jitter

and

the

maximum

still

occurs

at

the

time

the

first

access

unit

is

to

be

forwarded

to

the

elementary

decoder

-LRB-

Figures

and

-RRB-

Since

it

is

difficult

to

estimate

the

jitter

introduced

by

the

network

in

the

case

of

FIFO

scheduling

discipline

to

avoid

frequent

underflows

and

overflows

the

size

of

the

dejittering

buffer

needed

may

be

prohibitively

large

Besides

excessive

dejittering

buffer

would

introduce

large

latencies

which

are

unacceptable

in

real-time

environments

The

difference

between

the

first

received

PCR

value

and

the

PTS

value

of

the

first

access

unit

along

with

the

rate

of

the

program

being

decoded

determines

a

fixed

buffer

occupancy

at

the

system

playout

buffer

providing

the

the

ability

of

dealing

with

jitter

without

concern

of

underflow

and

without

the

need

of

an

additional

dejittering

buffer

Thus

by

imposing

a

fixed

amount

of

latency

to

the

incoming

stream

-LRB-

by

either

adding

a

constant

value

to

all

the

PTS

DTS

value

found

in

the

transport

packets

or

by

subtracting

a

constant

value

from

all

the

incoming

PCR

values

-RRB-

the

dejittering

buffer

can

be

avoided

without

affecting

the

quality

seen

by

the

viewer

In

this

case

however

the

quality

would

be

unacceptable

in

every

case

except

for

a

very

large

dejittering

buffer

that

could

absorb

the

excessive

jitter

60 80 100 120

Delay

-LRB-

msecs

-RRB-

Time

-LRB-

sec

-RRB-

PCR

delays

Figure

Delays

experienced

by

transport

packets

containing

PCRs

under

FIFO

scheduling

discipline

and

with

ms

dejittering

buffer

for

experiment

60 80 100 120

Difference

in

ticks

of

clock

Time

-LRB-

sec

-RRB-

PCR-STC

difference

Figure

PCR-STC

difference

without

any

dejittering

buffer

for

experiment

60 80 100 120

Difference

in

ticks

of

clock

Time

-LRB-

sec

-RRB-

PCR-STC

difference

Figure

PCR-STC

difference

with

ms

dejittering

buffer

for

experiment

60 80 100 120

Difference

in

ticks

of

clock

Time

-LRB-

sec

-RRB-

PCR-STC

difference

Figure

PCR-STC

difference

with

ms

dejittering

buffer

for

experiment

60 80 100 120

Deviation

from

MHz

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

PAL

frequency

No

dejittering

dejittering

dejittering

Figure

PAL

color

sub-carrier

generation

frequency

under

PCR-unaware

scheme

for

experiment

80 90 100 110

Frequency

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

Rate

of

Change

of

PAL

frequency

No

dejittering

dejittering

dejittering

Figure

Rate

of

change

of

PAL

color

sub-carrier

generation

frequency

under

FIFO

scheduling

discipline

for

experiment

-LRB-

averaged

over

secs

-RRB-

60 80 100 120

Buffer

size

-LRB-

KBytes

-RRB-

Time

-LRB-

sec

-RRB-

Buffer

occupancy

for

trace

A

Figure

Buffer

occupancy

without

any

dejittering

buffer

for

experiment

60 80 100 120

Buffer

size

-LRB-

KBytes

-RRB-

Time

-LRB-

sec

-RRB-

Buffer

occupancy

for

trace

A

Figure

Buffer

occupancy

with

ms

dejittering

buffer

for

experiment

60 80 100 120

Buffer

size

-LRB-

KBytes

-RRB-

Time

-LRB-

sec

-RRB-

Buffer

occupancy

for

trace

A

Figure

Buffer

occupancy

with

ms

dejittering

buffer

for

experiment

Experiment

The

last

experiment

was

performed

in

order

to

test

performance

in

a

heavily

loaded

network

with

high-speed

links

This

experiment

was

done

with

the

trace

B

which

contains

NTSC

video

as

well

as

audio

elementary

streams

The

actual

scenario

is

similar

to

the

one

of

Experiment

with

cross-traffic

sources

However

all

the

links

were

changed

to

Mbps

whereas

the

overall

offered

load

was

set

to

The

packing

scheme

used

was

the

PCR-unaware

since

the

packetization

delay

for

this

stream

is

negligible

60 80 100 120

Deviation

from

MHz

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

NTSC

frequency

Figure

NTSC

color

sub-carrier

generation

frequency

for

trace

B

without

cross-traffic

Observing

the

results

carefully

we

can

see

that

the

cumulative

distribution

functions

-LRB-

CDF

-RRB-

for

both

transport

packets

in

general

and

transport

packets

containing

PCR

values

-LRB-

Figures

and

-RRB-

indicate

excessive

jitter

in

the

case

of

FIFO

-LRB-

maximum

delay

observed

is

around

msecs

-RRB-

All

the

other

schedulers

offer

very

good

isolation

and

almost

the

same

delays

Thus

the

quality

under

FIFO

is

unacceptable

-LRB-

Figures

and

-RRB-

whereas

with

all

the

other

schedulers

the

quality

is

satisfactory

Although

SCFQ

suffers

from

the

O

-LRB-

V

-RRB-

theoretical

worst

case

delay

bound

it

does

not

degrade

the

quality

in

this

case

since

the

link

rate

is

much

higher

and

thus

many

more

sources

are

needed

in

order

to

degrade

the

quality

The

maximum

phase

difference

was

observed

in

the

FIFO

case

Buffer

size

-LRB-

KBytes

-RRB-

Time

-LRB-

sec

-RRB-

Buffer

occupancy

for

trace

B

Figure

Buffer

occupancy

for

trace

B

without

cross-traffic

Probability

Delay

-LRB-

msecs

-RRB-

CDF

of

transport

packets

delays

FIFO

FFQ

SCFQ

VirtualClock

Shaped

VirtualClock

Figure

CDF

for

transport

packets

delays

for

experiment

and

it

has

the

value

of

ticks

-LRB-

or

almost

two

frames

in

NTSC

format

-RRB-

as

shown

in

Figure

Although

the

phase

difference

and

its

variation

could

affect

the

occupancy

at

the

system

decoder

buffer

it

did

not

occur

in

the

experiment

Even

in

the

FIFO

case

the

system

decoder

buffer

does

not

underflow

-LRB-

Figure

-RRB-

and

it

is

only

slightly

affected

compared

to

the

case

when

all

the

cross-traffic

sources

were

turned

off

-LRB-

Figure

-RRB-

as

we

noted

in

all

the

previous

experiments

Probability

Delay

-LRB-

msecs

-RRB-

CDF

of

PCR

delays

FIFO

FFQ

SCFQ

VirtualClock

Shaped

VirtualClock

Figure

CDF

for

PCR

delays

for

experiment

Deviation

from

MHz

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

NTSC

frequency

FIFO

FFQ

SCFQ

VirtualClock

Shaped

VirtualClock

Figure

NTSC

color

sub-carrier

generation

frequency

for

experiment

Frequency

-LRB-

Hz

-RRB-

Time

-LRB-

sec

-RRB-

Rate

of

change

of

NTSC

frequency

FIFO

FFQ

SCFQ

VirtualClock

Shaped

VirtualClock

Figure

Rate

of

change

of

NTSC

color

sub-carrier

generation

frequency

for

experiment

-LRB-

averaged

over

secs

-RRB-

Buffer

size

-LRB-

KBytes

-RRB-

Time

-LRB-

sec

-RRB-

Buffer

occupancy

Figure

Buffer

occupancy

under

FIFO

for

experiment

Difference

in

ticks

of

clock

Time

-LRB-

sec

-RRB-

PCR-STC

difference

under

PCR-unaware

scheme

Figure

PCR-STC

difference

under

FIFO

for

experiment

Conclusions

In

this

chapter

several

experiments

were

performed

in

order

to

test

the

performance

of

over

a

multi-hop

ATM

network

under

various

load

conditions

Several

traffic

scheduling

disciplines

were

tested

while

approaches

that

make

use

of

dejittering

mechanisms

were

also

evaluated

In

the

next

chapter

we

discuss

our

results

provide

the

insights

gained

in

the

thesis

and

propose

areas

for

future

work

Conclusions

and

Future

Work

In

this

thesis

we

evaluated

different

techniques

for

transporting

over

ATM

networks

Several

schemes

were

tested

including

packing

schemes

at

the

adaptation

layer

various

scheduling

disciplines

within

the

ATM

switches

and

design

alternatives

within

the

application

layer

at

the

decoder

end

The

evaluation

of

all

the

different

schemes

was

done

using

actual

Transport

Stream

traces

produced

by

hardware

encoders

The

focus

of

this

thesis

though

was

to

study

the

performance

of

CBR

over

ATM

networks

In

all

the

experiments

a

PLL

with

a

second

order

butterworth

LPF

was

used

and

we

found

that

a

cutoff

of

at

most

Hz

is

adequate

to

filter

reasonable

packet

delay

variations

introduced

by

the

network

If

the

selected

cutoff

frequency

is

higher

than

Hz

no

actual

filtering

is

performed

by

the

LPF

We

also

evaluated

the

two

existing

packing

schemes

for

Transport

Streams

and

concluded

that

the

PCR-unaware

packing

scheme

may

have

a

problem

when

the

transport

rate

is

very

low

When

sending

a

stream

with

high

bit-rate

-LRB-

Mbps

and

above

-RRB-

the

actual

packing

scheme

does

not

make

any

significant

difference

at

the

decoder

end

In

general

having

in

mind

that

more

likely

Transport

Streams

will

be

transported

over

large

backbone

networks

they

are

more

likely

to

have

high

bandwidth

requirements

since

they

may

include

multiple

programs

However

there

is

a

minor

difference

since

when

sending

a

stream

using

the

PCR-unaware

approach

the

actual

rate

is

deterministic

which

is

not

the

case

for

real-time

Transport

Streams

sent

using

the

PCR-aware

approach

This

is

an

important

consideration

in

the

choice

of

the

scheme

The

real

problem

perhaps

is

the

effect

of

delay

variation

contributed

by

the

network

as

a

result

of

queueing

delays

in

the

ATM

switches

The

use

of

FIFO

queueing

policy

is

highly

undesirable

since

the

delay

variation

becomes

unpredictable

which

affects

the

quality

of

the

recovered

clock

and

degrades

the

quality

to

unacceptable

levels

Even

with

reasonable

amount

of

dejittering

buffer

the

quality

may

become

unacceptable

if

the

dejittering

buffer

underflows

or

overflows

Thus

fair-queueing

based

scheduling

policies

are

required

so

that

the

worst

case

delays

and

the

delay

variation

-LRB-

jitter

-RRB-

are

minimized

We

also

found

that

for

the

same

probability

distribution

function

-LRB-

pdf

-RRB-

of

PCR

delays

higher

correlation

degrades

the

quality

more

than

low

correlation

Thus

it

is

not

only

the

actual

jitter

that

has

to

be

minimized

by

the

switch

scheduler

but

also

the

correlation

of

the

delays

of

transport

packets

that

contain

PCR

values

for

a

given

pdf

of

PCR

delays

All

the

sorted-priority

schedulers

tested

except

for

SCFQ

in

one

case

gave

satisfactory

results

even

in

excessive

load

conditions

and

provided

almost

complete

isolation

of

the

flow

Another

interesting

observation

is

that

in

all

cases

the

system

decoder

buffer

was

almost

unaffected

even

when

excessive

jitter

was

present

This

comes

from

the

fact

that

there

is

always

a

constant

minimum

buffer

occupancy

from

the

way

the

Transport

Streams

are

constructed

The

size

of

this

fixed

minimum

buffer

occupancy

can

be

derived

from

the

bit-rate

of

the

stream

and

the

difference

between

the

first

PCR

received

and

the

PTS

-LRB-

or

DTS

-RRB-

value

of

the

first

access

unit

associated

with

the

program

being

decoded

Thus

this

fixed

buffer

occupancy

provides

flexibility

in

dealing

with

the

packet

delay

variation

introduced

by

the

underlying

network

Before

closing

we

would

like

to

propose

areas

for

future

research

For

the

CBR

MPEG

case

we

need

to

take

advantage

of

the

fixed

occupancy

in

the

system

decoder

buffer

present

in

the

Transport

Streams

Even

in

the

case

that

the

fixed

buffer

occupancy

is

very

small

a

larger

dejittering

space

can

be

imposed

either

by

subtracting

a

constant

value

from

the

incoming

PCRs

or

by

adaptively

changing

this

difference

according

to

an

estimator

associated

with

transport

packet

delays

However

even

using

the

observation

that

the

buffer

occupancy

is

slightly

affected

by

the

packet

delay

variation

from

the

network

i.e.

it

is

very

unlikely

that

the

system

decoder

buffer

will

underflow

or

overflow

the

problem

of

recovering

the

system

decoder

clock

with

acceptable

quality

still

remains

since

the

transport

packets

containing

PCRs

may

have

enough

jitter

to

degrade

the

quality

Therefore

a

restamping

mechanism

that

changes

the

value

of

the

PCRs

in

the

incoming

transport

packets

containing

PCR

values

according

to

an

accurate

and

robust

jitter

estimator

would

eliminate

this

problem

and

would

make

an

system

decoder

exhibit

good

performance

even

with

very

low

order

LPFs

In

any

case

a

bound

on

the

jitter

must

be

provided

from

the

network

so

that

the

system

decoder

buffer

never

underflows

or

overflows

For

the

VBR

case

the

statistical

schemes

with

rate

renegotiation

seem

to

be

the

most

promising

approaches

Capturing

the

bitwise

linear

properties

of

the

rate

for

MPEG

Transport

Streams

and

either

statistically

estimating

or

deterministically

deciding

upon

the

renegotiation

points

so

that

the

throughput

is

maximized

while

the

quality

remains

at

acceptable

levels

is

a

problem

that

needs

to

be

solved

Schemes

that

desynchronize

multiple

sources

either

at

call

setup

time

or

during

their

activity

are

also

desirable

For

the

ATM

adaptation

part

a

new

adaptation

layer

for

VBR

-LRB-

-RRB-

has

to

be

designed

in

order

to

facilitate

the

transport

of

VBR

over

ATM

Finally

a

clever

scheduler

that

will

take

advantage

of

Transport

Streams

that

are

prioritized

like

the

scalable

profile

in

the

case

of

video

is

desirable

from

a

networking

standpoint

since

this

will

try

to

maximize

performance

even

with

minimum

resources

References

-LSB-

-RSB-

I.

F.

Akyildiz

S.

Hrastr

H.

Uzunalioglu

and

W.

Yen

Comparison

and

evaluation

of

packing

schemes

for

over

ATM

using

In

Proceeding

of

ICC

volume

pages

-LCB-

June

-LSB-

-RSB-

A.

Alles

ATM

internetworking

In

Engineering

InterOp

Las

Vegas

March

-LSB-

-RSB-

G.

F.

Andreotti

G.Michieletto

L.

Mori

and

A.

Profumo

Clock

recovery

and

reconstruction

of

PAL

pictures

for

MPEG

coded

streams

transported

over

ATM

networks

IEEE

Transactions

on

Circuits

and

Systems

for

Video

Technology

-LRB-

-RRB-

-LCB-

December

-LSB-

-RSB-

R.

T.

Apteker

J.

A.

Fisher

V.

S.

Kisimov

and

H.

Neishlos

Video

acceptability

and

frame

rate

IEEE

Multimedia

-LRB-

-RRB-

-LCB-

-LSB-

-RSB-

D.

Bertsekas

and

R.

Gallager

Data

Networks

Prentice-Hall

second

edition

-LSB-

-RSB-

T.

Brunner

and

M.

Schwartz

Essential

Features

of

a

Video

and

Audio

SSCS

for

ATM

Forum

May

-LSB-

-RSB-

CCIR

Specifications

for

the

color

TV

signal

tab

II

item

-LSB-

-RSB-

Chen-Shang

Chang

and

J.

A.

Thomas

Effective

bandwidth

in

high-speed

digital

networks

IEEE

Journal

on

Selected

Areas

in

Communications

-LRB-

-RRB-

-LCB-

August

-LSB-

-RSB-

CIE.

Colorimetry

Number

Central

Bureau

of

the

Commission

Internationale

de

L'Eclairage

-LRB-

CIE

-RRB-

Vienna

Austria

second

edition

-LSB-

-RSB-

D.

D.

Clark

S.

Shenker

and

L.

Zhang

Supporting

real-time

applications

in

an

integrated

services

packet

network

Architecture

and

mechanism

In

Proceedings

of

ACM

SIGCOMM

pages

-LCB-

August

-LSB-

-RSB-

J.

R.

Davin

and

A.

T.

Heybey

A

simulation

study

of

fair

queueing

andpolicy

enforcement

Computer

Communication

Review

-LRB-

-RRB-

-LCB-

October

-LSB-

-RSB-

M.

de

Prycker

Asynchronous

Transfer

Mode

Solution

for

Broadband

ISDN

Ellis

Horwood

second

edition

-LSB-

-RSB-

B.

DeCleene

P.

Pancha

M.

el

Zarki

and

H.

Sorensen

Comparison

of

priority

partition

methods

for

VBR

MPEG

In

Proceedings

of

IEEE

INFOCOM

volume

pages

-LCB-

Toronto

Canada

June

-LSB-

-RSB-

S.

Defrance

Switching

In

IEE

Colloqium

on

-LCB-

what

it

is

and

what

it

is

n't

The

Institute

of

Electrical

Engineers

January

-LSB-

-RSB-

A.

Demers

S.

Keshav

and

S.

Shenker

Analysis

and

simulation

of

a

fair

queueing

algorithm

Journal

of

Internetworking

Research

and

Experience

-LRB-

-RRB-

-LCB-

September

-LSB-

-RSB-

S.

Dixit

and

P.

Skelly

over

ATM

for

video

dial

tone

networks

issues

and

strategies

IEEE

Network

-LRB-

-RRB-

-LCB-

September

-LCB-

October

-LSB-

-RSB-

K.

M.

Elsayed

and

H.

GPerros

On

the

effective

bandwidth

of

arbitrary

on/off

sources

In

Proceedings

of

the

Sixth

IFIP

Conference

on

Performance

of

Computer

Networks

pages

-LCB-

October

-LSB-

-RSB-

A.

I.

Elwalid

and

D.

Mitra

Effective

bandwidth

of

bursty

variable

rate

sources

for

admission

control

to

B-ISDN

In

Proceedings

of

ICC

volume

pages

-LCB-

May

-LSB-

-RSB-

A.

I.

Elwalid

and

D.

Mitra

Effective

bandwidth

of

general

markovian

traffic

sources

and

admission

control

of

high

speed

networks

IEEE/ACMTransactions

on

Networking

-LRB-

-RRB-

-LCB-

June

-LSB-

-RSB-

A.

I.

Elwalid

and

D.

Mitra

Effective

bandwidth

of

general

markovian

traffic

sources

and

admission

control

of

high

speed

networks

In

Proceedings

of

IEEE

INFOCOM

volume

pages

-LCB-

March

-LSB-

-RSB-

H.

Eriksson

MBone

the

multicast

backbone

Communications

of

the

ACM

-LRB-

-RRB-

-LCB-

August

-LSB-

-RSB-

D.

Fibush

Subcarrier

Frequency

Drift

and

Jitter

in

NTSC

Systems

ATM

Forum

July

-LSB-

-RSB-

W.

O.

Galitz

Handbook

of

Screen

Format

Design

QED

Information

Sciences

Inc.

Wellesley

Massachusetts

third

edition

-LSB-

-RSB-

S.

J.

Golestani

A

stop-and-go

queueing

framework

for

congestion

management

In

Computer

Communication

Review

volume

pages

-LCB-

ACM

September

-LSB-

-RSB-

S.

J.

Golestani

A

self-clocked

fair

queueing

scheme

for

broadband

applications

In

Proceedings

of

IEEE

INFOCOM

volume

pages

-LCB-

June

-LSB-

-RSB-

A.

G.

Greenberg

and

N.

Madras

How

fair

is

fair

queueing

Journal

of

the

Association

for

Computing

Machinary

-LRB-

-RRB-

-LCB-

July

-LSB-

-RSB-

M.

Grossglauser

S.

Keshav

and

D.

Tse

RCBR

a

simple

and

efficient

service

for

multiple

time-scale

traffic

In

Proceedings

of

ACM

SIGCOMM

volume

pages

-LCB-

Cambridge

MA

USA

August

-LSB-

-RSB-

P.

Hodgins

and

E.

Itakura

The

Issues

of

Transportation

of

MPEG

over

ATM

ATM

Forum

July

-LSB-

-RSB-

P.

Hodgins

and

E.

Itakura

VBR

over

ATM

Forum

December

-LSB-

-RSB-

A.

C.

Hung

PVRG-MPEG

codec

Portable

Research

Video

Group

-LRB-

PVRG

-RRB-

May

-LSB-

-RSB-

International

Organization

for

Standardization

Information

Technology

Generic

Coding

of

Moving

Pictures

and

Associated

Audio

Systems

Recommendation

H.

ISO/IEC

draft

international

standard

edition

November

-LSB-

-RSB-

International

Organization

for

Standardization

Information

Technology

-LCB-

Generic

Coding

of

Moving

Pictures

and

Associated

Audio

Information

Video

Recommendation

ITU-T

H.

ISO/IEC

draft

international

standard

edition

November

-LSB-

-RSB-

International

Organization

for

Standardization

-LRB-

ISO

-RRB-

JPEG

digital

compression

and

coding

of

continuous-tone

still

images

ISO

draft

edition

-LSB-

-RSB-

M.

R.

Ismail

I.

E.

Lambadaris

M.

Devetsikiotis

and

A.

R.

Kaye

Modelling

prioritized

MPEG

video

using

TES

and

a

frame

spreading

strategy

for

transmission

in

ATM

networks

In

Proceedings

of

IEEE

INFOCOM

volume

pages

-LCB-

Boston

USA

April

-LSB-

-RSB-

H.

Kanakia

P.

Mishra

and

A.

Reibman

An

adaptive

congestion

control

scheme

for

real-time

packet

video

transport

In

Proceedings

of

ACM

SIGCOMM

September

-LSB-

-RSB-

H.

Kanakia

P.

Mishra

and

A.

Reibman

Packet

video

transport

in

ATM

networks

with

single-bit

feedback

In

Proceedings

of

the

Sixth

International

Workshop

on

Packet

Video

Portland

Oregon

September

-LSB-

-RSB-

G.

Karlsson

Asynchronous

transfer

of

video

Technical

Report

Swedish

Institute

of

Computer

Science

-LRB-

SICS

-RRB-

-LSB-

-RSB-

M.

Katevenis

S.

Sidiropoulos

and

C.

Courcoubetis

Weighted

round-robin

cell

multiplexing

in

a

general-purpose

ATM

switch

chip

IEEE

Journal

on

Selected

Areas

in

Communications

-LCB-

October

-LSB-

-RSB-

S.

Keshav

On

the

efficient

implementation

of

fair

queueing

Internetworking

Research

and

Experience

-LRB-

-RRB-

-LCB-

September

-LSB-

-RSB-

G.

Kesidis

Modeling

to

obtain

the

effective

bandwidth

of

a

traffic

source

in

an

ATM

network

In

Proceedings

of

the

Second

International

Workshop

on

Modeling

Analysis

and

Simulation

of

Computer

and

Telecommunication

Systems

-LRB-

MASCOTS

-RRB-

pages

-LCB-

Durham

NC

USA

January

-LSB-

-RSB-

S.

Klett

MBONE

videoconferencing

over

Internet

CROSSCUTS

-LRB-

-RRB-

-LCB-

April

-LSB-

-RSB-

E.

W.

Knightly

H-BIND

A

new

approach

to

providing

statistical

performance

guarantees

to

VBR

traffic

In

Proceedings

of

IEEE

INFOCOM

volume

pages

-LCB-

San

Francisco

CA

March

-LSB-

-RSB-

E.

W.

Knightly

and

H.

Zhang

Traffic

characterization

and

switch

utilization

using

deterministic

bounding

interval

dependent

traffic

models

In

Proceedings

of

IEEE

INFOCOM

volume

pages

-LCB-

Boston

MA

April

-LSB-

-RSB-

V.

Kulkarni

L.

Gun

and

P.

Chimento

Effective

bandwidth

vector

for

two-priority

ATM

traffic

In

Proceedings

of

IEEE

INFOCOM

volume

pages

-LCB-

June

-LSB-

-RSB-

V.

G.

Kulkarni

L.

Gun

and

P.

F.

Chimento

Effective

bandwidth

vectors

for

multiclass

traffic

multiplexed

in

partitioned

buffer

IEEE

Journal

on

Selected

Areas

in

Communications

-LRB-

-RRB-

-LCB-

August

-LSB-

-RSB-

T.

Kurita

S.

Iai

and

N.

Kitawaki

Effects

of

transmission

delay

in

audiovisual

communication

Electronics

and

Communications

in

Japan

-LRB-

-RRB-

-LCB-

Part

-LSB-

-RSB-

T.

V.

Lakshman

P.

P.

Mishra

and

K.

K.

Ramakrishnan

Transporting

compressed

video

over

ATM

networks

with

explicit

rate

feedback

control

submitted

for

publication

-LSB-

-RSB-

C.

van

den

Branden

Lambrecht

A

working

spatio-temporal

model

of

the

human

visual

system

for

image

restoration

and

quality

assessment

applications

In

Proceedings

of

International

Conference

on

Acoustics

Speech

and

Signal

Processing

pages

-LCB-

Atlanta

GA

May

-LSB-

-RSB-

C.

van

den

Branden

Lambrecht

and

O.

Verscheure

Perceptual

quality

measure

using

a

spatio-temporal

model

of

the

human

visual

system

In

IS&T

SPIE

February

-LSB-

-RSB-

M.

R.

Macedonia

and

D.

P.

Brutzman

MBone

provides

audio

and

video

across

the

Internet

Computer

-LRB-

-RRB-

-LCB-

April

-LSB-

-RSB-

D.

Minoli

Video

Dialtone

Technology

McGraw-Hill

Inc.

-LSB-

-RSB-

V.

Mudgil

K.

R.

Srivathsan

and

S.

K.

Bose

Effective

bandwidth

method

for

call

admission

control

in

ATM

networks

In

Proceedings

NCC

National

Conference

on

Communications

pages

-LCB-

Kanpur

India

March

-LSB-

-RSB-

W.

P.

Myers

Analysis

of

a

variable

rate

MPEG

encoding

Master

's

thesis

University

of

California

at

San

Diego

-LSB-

-RSB-

R.

O.

Onvural

Asynchronous

Transfer

Mode

Networks

Performance

Issues

Artech

House

Boston

second

edition

-LSB-

-RSB-

P.

Pancha

and

M.

el

Zarki

A

look

at

the

MPEG

video

coding

standard

for

variable

bit

rate

video

transmission

In

Proceedings

of

IEEE

INFOCOM

volume

pages

-LCB-

-LSB-

-RSB-

P.

Pancha

and

M.

el

Zarki

Bandwidth-allocation

schemes

for

variable-bit-rate

MPEG

sources

in

ATM

networks

IEEE

Transactions

on

Circuits

and

Systems

for

Video

Technology

-LRB-

-RRB-

-LCB-

June

-LSB-

-RSB-

P.

Pancha

and

M.

el

Zarki

Bandwidth

requirements

of

variable

bit

rate

MPEG

sources

in

ATM

networks

In

Proceedings

of

IEEE

INFOCOM

volume

pages

-LCB-

-LSB-

-RSB-

P.

Pancha

and

M.

el

Zarki

MPEG

coding

for

variable

bit

rate

video

transmission

In

IEEE

Communications

Magazine

pages

-LCB-

May

-LSB-

-RSB-

A.

K.

Parekh

and

R.

G.

Gallager

A

generalized

processor

sharing

approach

to

flow

control

in

integrated

services

networks

The

single-node

case

IEEE/ACM

Transactions

on

Networking

-LRB-

-RRB-

-LCB-

June

-LSB-

-RSB-

A.

K.Parekhand

R.

G.

Gallager

A

generalized

processor

sharing

approach

to

flow

control

in

integrated

services

networks

The

multiple-node

case

IEEE/ACM

Transactions

on

Networking

-LRB-

-RRB-

-LCB-

April

-LSB-

-RSB-

M.

Perkins

and

P.

Skelly

A

hardware

MPEG

clock

recovery

experiment

in

the

presence

of

ATM

jitter

ATM

Forum

May

-LSB-

-RSB-

P.

V.

Rangan

S.

S.

Kumar

and

S.

Rajan

Continuity

and

synchronization

in

MPEG

IEEE

Journal

on

Selected

Areas

in

Communications

-LRB-

-RRB-

-LCB-

January

-LSB-

-RSB-

Y.

Rasheed

and

A.

Leon-Garcia

with

FEC

for

the

transport

of

CBR

video

over

ATM

networks

In

Proceedings

of

IEEE

INFOCOM

volume

pages

-LCB-

March

-LSB-

-RSB-

P.

A.

Sarginson

-LCB-

a

tutorial

introduction

to

the

systems

layer

In

IEE

Colloqium

on

-LCB-

what

it

is

and

what

it

is

n't

The

Institute

of

Electrical

Engineers

January

-LSB-

-RSB-

M.

Schwartz

and

D.

Beaumont

Quality

of

Service

Requirements

for

Audio-Visual

Multimedia

Services

ATM

Forum

July

-LSB-

-RSB-

M.

Shreedhar

and

G.

Varghese

Efficient

fair

queueing

using

deficit

round

robin

Technical

Report

Washington

University-St

Louis

Department

of

Computer

Science

November

-LSB-

-RSB-

R.

P

Singh

Sang-Hoon

Lee

and

Chong-Kwoon

Kim

Jitter

and

clock

recovery

for

periodic

traffic

in

broadband

packet

networks

IEEE

Transactions

on

Communications

-LRB-

-RRB-

-LCB-

May

-LSB-

-RSB-

D.

Stiliadis

and

A.

Varma

Frame-based

fair

queueing

A

new

traffic

scheduling

algorithm

for

packet-switched

networks

Technical

Report

U.C.

Santa

Cruz

Dept.

of

Computer

Engineering

July

-LSB-

-RSB-

D.

Stiliadis

and

A.

Varma

Latency-rate

servers

A

general

model

for

analysis

of

traffic

scheduling

algorithms

Technical

Report

U.C.

Santa

Cruz

Dept.

of

Computer

Engineering

July

-LSB-

-RSB-

D.

Stiliadis

and

A.

Varma

A

general

methodology

for

designing

efficient

traffic

scheduling

and

shaping

algorithms

submitted

for

publication

-LSB-

-RSB-

P.

N.

Tudor

-LCB-

video

compression

tutorial

In

IEE

Colloqium

on

MPEG

-LCB-

what

it

is

and

what

it

is

n't

The

Institute

of

Electrical

Engineers

January

-LSB-

-RSB-

S.

Varma

Computation

of

characteristic

curves

for

video

sources

First

Draft

-LSB-

-RSB-

S.

Varma

over

ATM

System

design

issues

LSI

Logic

Corp.

-LSB-

-RSB-

O.

Verscheure

A.

Basso

M.

El-Maliki

and

J.P.

Hubaux

Perceptual

bit

allocation

for

CBR

video

coding

In

International

Conference

on

Image

Processing

-LRB-

ICIP

-RRB-

September

Lausanne

-LRB-

Switzerland

-RRB-

-LSB-

-RSB-

G.

K.

Wallace

The

JPEG

still

picture

compression

standard

IEEE

Transactions

on

Consumer

Electronics

-LRB-

-RRB-

February

-LSB-

-RSB-

H.

Zhang

and

E.

W.

Knightly

RED-VBR

A

renegotiation-based

approach

to

support

delay-sensitive

VBR

video

to

appear

in

ACM/Sringer-Verlag

Multimedia

Systems

Journal

-LSB-

-RSB-

L.

Zhang

VirtualClock

A

new

traffic

control

algorithm

for

packet-switched

networks

ACM

Transactions

on

Computer

Systems

-LRB-

-RRB-

-LCB-

May