APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf...

78
APNOMS’02 , Jeju, Korea 1 QoS Control QoS Control in the Internet in the Internet Raouf Boutaba Raouf Boutaba School of Computer Science University of Waterloo E-mail: [email protected]

Transcript of APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf...

Page 1: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 1

QoS Control QoS Control in the Internetin the Internet

Raouf BoutabaRaouf BoutabaSchool of Computer Science

University of WaterlooE-mail: [email protected]

Page 2: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 2

OutlineOutline Multimedia Networking Applications Challenges and Solutions in IP Networks Audio/Video Compression in the Internet Streaming Stored Audio/Video, RTSP Real time (phone) over IP best effort RTP, RTCP, H.323 Improving QoS in IP: Basic Principles Scheduling and Policing Mechanisms Integrated & Differentiated IP Services MPLS and traffic engineering Policy Based Networking for QoS control COPS extensions for distributed control

Page 3: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 3

Multimedia Networking Appl’s Typically sensitive to delay, but can tolerate

packet loss (would cause minor glitches that can be concealed)

Data contains audio and video content (“continuous media”),

Three classes: Streaming stored audio and video One to many streaming of real-time audio and

video Real-time interactive audio and video

Page 4: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 4

Streaming Stored Audio/Video Clients

Request audio/video files (compressed) from servers Examples: Music, Movies

Clients pipeline reception over the network and display

Delay From client request until display start can be 1 to 10 seconds

Playback starts while client continues receiving file from server -> Streaming

User interactivity User can control operation (similar to VCR): pause, resume,

fast forward, rewind, etc.

Page 5: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 5

Unidirectionnel Real Time Similar to existing TV and radio stations, but delivery on

the network Microsoft provides an Internet radio station guide

One to many streaming Many users who are simultaneously receiving the same real-time

audio/video program

Efficient distribution through multicasting (however, today’s most one-to-many audio/video transmission in the Internet use separate unicast streams)

Non-interactive, just listen/view

Delay From client click until playback start is up to 10’s seconds

Page 6: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 6

Real-time Interactive Appl’s Internet Phone or video conference

Delay More stringent delay requirement than Streaming and

Unidirectional because of real-time nature

Video: < 150 msec acceptable

Audio: < 150 msec good, < 400 msec acceptable

Interactivity One-to-many real-time is not interactive as users cannot

pause or rewind transmission (hundreds others listening)

Interactive in the sense that participants can orally and visually respond to each other in real time

Page 7: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 7

Challenges TCP/UDP/IP suite provides best-effort, no

guarantees on expectation or variance of packet delay

Streaming applications delay of 5 to 10 seconds is typical and has been acceptable, but performance deteriorate if links are congested (transoceanic)

Real-Time Interactive requirements on delay and its jitter have been satisfied by over-provisioning (providing plenty of bandwidth), what will happen when the load increases?...

Most router implementations use only FCFS packet processing and transmission scheduling

Page 8: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 8

Challenges (Cont) To mitigate impact of “best-effort” protocols, we

can:

Use UDP to avoid TCP and its slow-start phase…

Delay playback (~100 ms) to diminish network-induced jitter

Buffer content at client and control playback to remedy jitter

Adapt compression level to available bandwidth

etc…

Page 9: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 9

Solution Approaches in IP Networks Just add more bandwidth and enhance caching

capabilities (over-provisioning)

Need major change of the protocols: Incorporate resource reservation (bandwidth, processing,

buffering), and new scheduling policies Set up service level agreements with applications, monitor

and enforce the agreements, charge accordingly

Need moderate changes: Use small number of (possibly two) traffic classes for all

packets and differentiate service accordingly Charge based on class of packets (platinum, low-budget) Network capacity is provided to ensure first class packets

incur no significant delay at routers

Page 10: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 10

Audio and Video Compression Audio and video are digitized and compressed

Need for digitization: Internet transmits bits Need for compression: uncompressed audio/video consumes

tremendous amount of storage and bandwidth Compression removes inherent redundancies in digitized

audio/video

Reduces amount of data by order of magnitude Example: A single image of 1024 pixels * 1024 pixels; each pixel

encoded into 24 bits Without compression:

Requires 3 MB of storage Takes 7 min over a 64 Kbps link

With a modest compression (10:1 compression rate) Requires 300 KB of storage Takes less than 6 seconds

Page 11: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 11

Audio Compression in the Internet Pulse Code Modulation (PCM)

Analog audio signal is sampled at some fixed rate; Value of each sample is an arbitrary real number

Each sample is rounded to one of a finite number of values (“quantization”). Number of quantization values is power of 2

Each quantization value is represented by a fixed number of bits. Bit representations of all samples are concatenated together form the digital signal

Examples of PCM encoding Speech: 8000 samples/sec; 8 bits per sample -> 64Kbps rate Compact Disk: 44,100 samples/sec; 16 bits per sample -> rate of

705.6 Kbps for mono and 1.411 Mbps for stereo

Compression techniques used to reduce bit rate GSM (13 Kbps); G.729 (8 Kbps); G.723(6.4 and 5.3 Kbps) MPEG layer 3 (MP3): 128 or 112 Kbps (near CD-quality music)

Page 12: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 12

Video Compression in the Internet Principles

A video is a sequence of images; each image is displayed at constant rate, e.g. at 24 or 30 images per second

An uncompressed, digitally encoded image consists of an array of pixels; each pixel is encoded into a number of bits to represent luminance and color

Two types of redundancy in video (exploited in compression) Spatial redundancy (within a given image; e.g. white space) Temporal redundancy (repetition from image to subsequent

image; e.g. two exactly same images)

MPEG MPEG 1, for CD-ROM quality video (1.5 Mbps) MPEG 2, for high quality DVD video (3-6 Mbps) MPEG 4, for object oriented video compression

H.261 (also popular in the Internet)

Page 13: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 13

Streaming Stored Audio/Video Important and growing application due to reduction of storage

costs, increase in high speed network access from homes, enhancements to caching and introduction of QoS in IP networks

Audio/Video file is segmented and sent over either TCP or UDP, public segmentation protocol: Real-Time Protocol (RTP)

User interactive control is provided, eg the public protocol Real Time Streaming Protocol (RTSP)

Helper Application: displays content, which is typically requested via a Web browser; eg RealPlayer; typical functions: Decompression Jitter removal Error correction: use redundant packets to be used for

reconstruction of original stream GUI for user control

Page 14: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 14

Streaming From Web Servers Audio: in files sent as HTTP objects Video (interleaved audio and images in one file, or two separate

files and client synchronizes the display) sent as HTTP object(s) A simple architecture is to have the Browser requests the

object(s) and after their reception pass them to the player for display

Page 15: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 15

Streaming From Web Server (Cont.) Alternative: set up connection between server and player, then

download Web browser requests and receives a Meta File (a file describing the

object) instead of receiving the file itself; Browser launches the appropriate Player and passes it the Meta File; Player sets up a TCP connection with Web Server and downloads the file

Page 16: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 16

Using a Streaming Server This gets us around HTTP, allows a choice of UDP vs. TCP and the

application layer protocol can be better tailored to Streaming; Many enhancements options are possible (see next slide)

Page 17: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 17

Options When Using a Streaming Server Use UDP, and Server sends at a rate (Compression and

Transmission) appropriate for client; to reduce jitter, Player buffers initially for 2-5 seconds, then starts display

Use TCP, and sender sends at maximum possible rate under TCP; retransmit when error is encountered; Player uses a much large buffer to smooth delivery rate of TCP

Page 18: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 18

Real Time Streaming Protocol For user to control display: rewind, fast forward, pause, resume, etc…

Out-of-band protocol (uses two connections, one for control messages (Port 554) and one for media stream

RFC 2326 permits use of either TCP or UDP for the control messages connection, sometimes called the RTSP Channel

As before, meta file is communicated to web browser which then launches the Player; Player sets up an RTSP connection for control messages in addition to the connection for the streaming media

Page 19: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 19

RTSP Operation

Page 20: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 20

Meta File Example<title>Twister</title> <session> <group language=en lipsync> <switch> <track type=audio e="PCMU/8000/1" src =

"rtsp://audio.example.com/twister/audio.en/lofi"> <track type=audio e="DVI4/16000/2" pt="90 DVI4/8000/1"

src="rtsp://audio.example.com/twister/audio.en/hifi"> </switch> <track type="video/jpeg" src="rtsp://video.example.com/twister/video"> </group> </session>

Page 21: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 21

RTSP Exchange Example C: SETUP rtsp://audio.example.com/twister/audio RTSP/1.0 Transport: rtp/udp; compression; port=3056; mode=PLAY

S: RTSP/1.0 200 1 OK Session 4231

C: PLAY rtsp://audio.example.com/twister/audio.en/lofi RTSP/1.0 Session: 4231 Range: npt=0-

C: PAUSE rtsp://audio.example.com/twister/audio.en/lofi RTSP/1.0 Session: 4231 Range: npt=37

C: TEARDOWN rtsp://audio.example.com/twister/audio.en/lofi RTSP/1.0 Session: 4231

S: 200 3 OK

Page 22: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 22

Real Time (Phone) Over IP’s Best Effort Internet phone applications generate packets during talk spurts

Bit rate is 8 KBytes, and every 20 msec, the sender forms a packet of 160 Bytes + a header to be discussed below

The coded voice information is encapsulated into a UDP packet and sent out; some packets may be lost; up to 20 % loss is tolerable; using TCP eliminates loss but at a considerable cost: variance in delay; FEC is sometimes used to fix errors and make up losses

End-to-end delays above 400 msec cannot be tolerated; packets that are that delayed are ignored at the receiver

Delay jitter is handled by using timestamps, sequence numbers, and delaying playout at receivers either a fixed or a variable amount

With fixed playout delay, the delay should be as small as possible without missing too many packets; delay cannot exceed 400 msec

Page 23: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 23

Internet Phone with Fixed Playout Delay

Page 24: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 24

Adaptive Playout Delay

Objective is to use a value for p-r that tracks the network delay performance as it varies during a phone call

The playout delay is computed for each talk spurt based on observed average delay and observed deviation from this average delay

Estimated average delay and deviation of average delay are computed in a manner similar to estimates of RTT and deviation in TCP

The beginning of a talk spurt is identified from examining the timestamps in successive and/or sequence numbers of chunks

Page 25: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 25

Recovery From Packet Loss Loss is in a broader sense: packet never arrives or arrives

later than its scheduled playout time

Since retransmission is inappropriate for Real Time applications, FEC or Interleaving are used to reduce loss impact

Simplest FEC scheme adds a redundant chunk made up of exclusive OR of a group of n chunks; redundancy is 1/n; can reconstruct if at most one lost chunk; playout time schedule assumes a loss per group

Mixed quality streams are used to include redundant duplicates of chunks; upon loss playout available redundant chunk, albeit a lower quality one

With one redundant chunk per chunk can recover from single losses

Page 26: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 26

Piggybacking Lower Quality Stream

Page 27: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 27

Interleaving Has no redundancy, but can cause delay in playout beyond

Real Time requirements Divide 20 msec of audio data into smaller units of 5 msec

each and interleave Upon loss, have a set of partially filled chunks

Page 28: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 28

Real-Time Protocol (RTP) Typically runs over UDP

Physical layer

Data Link layer

IP

UDP

RTP

Application layer

Transportlayer

RTP viewed as a sub-layer of the transport layer

Physical layer

Data Link layer

IP

UDP

RTP

ApplicationApplicationlayer

Socket Interface

RTP from an application developer perspective

Page 29: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 29

RTP Packet

RTP Provides standard packet format for real-time applications

Specifies header fields below

Page 30: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 30

RTP Packet (Cont) Payload Type: 7 bits, providing 128 possible

different types of encoding; eg PCM, MPEG2 video, etc.

Examples:

Payload TypeNumber

Audio Format

Sampling Rate Throughput

0

1

3

7

9

14

15

PCM mu-law

1016

GSM

LPC

G.722

MPEG Audio

G.728

8 KHz

8 KHz

8 KHz

8 KHz

8 KHz

90 KHz

8 KHz

64 Kbps

4.8 Kbps

13 Kbps

2.4 Kbps

48-64 Kbps

----

16 Kbps

Payload TypeNumber

Video Format

26

31

32

33

Motion JPEG

H.261

MPEG1 Video

MPEG2 Video

Some audio payload types supported by RTPSome video payload

types supported by RTP

Page 31: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 31

RTP Packet (Cont) Sequence Number: 16 bits; used to detect packet

loss.

Timestamp: 32 bits; gives the sampling instant of the first audio/video byte in the packet; used to remove jitter introduced by the network; the timestamp is derived from a sampling clock at the sender.

Synchronization Source identifier (SSRC): 32 bits; identifies the source of a stream; each stream in an RTP session has a distinct SSRC; assigned randomly by the source when the new stream is started.

Page 32: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 32

RTP Control Protocol (RTCP) Protocol specifies report packets exchanged between sources

and destinations of multimedia information Three reports are defined: Receiver reception, Sender, and

Source description Reports contain statistics such as the number of packets sent,

number of packets lost, inter-arrival jitter Used to modify sender transmission rates and for diagnostics

purposes

Page 33: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 33

RTCP Bandwidth Scaling If each receiver sends RTCP packets to all other receivers, the traffic load

resulting can be large RTCP adjusts the interval between reports based on the number of

participating receivers Typically, limit the RTCP bandwidth to 5% of the session bandwidth,

divided between the sender reports (25%) and the receivers reports (75%) Period for transmitting RTCP packets for a sender:

Period for transmitting RTCP packets for a receiver:

T = Number of senders

.25*.05*session-bandwidth (average RTCP packet size)

T = Number of receivers

.75*.05*session-bandwidth (average RTCP packet size)

Page 34: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 34

H.323 A standard for real-time audio and video

conferencing among end systems on the Internet H.323 end systems should be able to

communicate with ordinary telephones

InternetTelephoneNetwork

Gate keeper

Gateway

H.323 End Points Telephones

Page 35: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 35

Improving QOS in IP Networks IETF groups are working on proposals to provide better QOS

control in IP networks, ie going beyond best effort to provide some assurance for QOS

Work in Progress includes RSVP, Differentiated Services, and Integrated Services

Simple model for sharing and congestion studies:

Page 36: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 36

Principles for QOS Guarantees Consider a phone application at 1Mbps and an FTP application sharing

a 1.5 Mbps link; bursts of FTP can congest the router and cause audio packets to be dropped; want to give priority to audio over FTP

PRINCIPLE 1: Marking of packets is needed for router to distinguish between different classes; and new router policy to treat packets accordingly

Page 37: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 37

Principles for QOS Guarantees (Cont.) Applications misbehave (audio sends packets at a rate higher than

1Mbps assumed above); PRINCIPLE 2: provide protection (isolation) for one class from

other classes Require Policing Mechanisms to ensure sources adhere to bandwidth

requirements; Marking and Policing need to be done at the edges:

Page 38: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 38

Principles for QOS Guarantees (Cont.) Alternative to Marking and Policing: allocate a set portion of

bandwidth to each application flow; can lead to inefficient use of bandwidth if one of the flows does not use its allocation

PRINCIPLE 3: While providing isolation, it is desirable to use resources as efficiently as possible

Page 39: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 39

Principles for QOS Guarantees (Cont.) Cannot support traffic beyond link capacity PRINCIPLE 4: Need a Call Admission Process; application

flow declares its needs, network may block call if it cannot satisfy the needs

Page 40: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 40

Summary

Page 41: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 41

Scheduling And Policing Mechanisms Scheduling: choosing the next packet for transmission on a link can

be done following a number of policies;

FIFO: in order of arrival to the queue; packets that arrive to a full buffer are either discarded, or a discard policy is used to determine which packet to discard among the arrival and those already queued

Page 42: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 42

Scheduling Policies Priority Queuing: classes have different priorities; class may

depend on explicit marking or other header info, eg IP source or destination, TCP Port numbers, etc.

Transmit a packet from the highest priority class with a non-empty queue

Preemptive and non-preemptive versions

Page 43: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 43

Scheduling Policies (Cont.) Round Robin: scan class queues serving one from each

class that has a non-empty queue

Weighted Fair Queuing: is a generalized Round Robin in which an attempt is made to provide a class with a differentiated amount of service over a given period of time

Page 44: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 44

Policing Mechanisms Three criteria:

(Long term) Average Rate (100 packets per sec or 6000 packets per min??), crucial aspect is the interval length

Peak Rate: eg 6000 p p minute Avg and 1500 p p sec Peak (Max.) Burst Size: Max. number of packets sent

consecutively, ie over a short period of time Token Bucket mechanism, provides a means for limiting input to

specified Burst Size and Average Rate

Page 45: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 45

Policing Mechanisms (Cont.) Bucket can hold b tokens; token are generated at a rate of r

token/sec unless bucket is full of tokens Over an interval of length t, the number of packets that are

admitted is less than or equal to r t + b Token bucket and WFQ can be combined to provide upper

bound on delay:

Page 46: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 46

Integrated Services An architecture for providing QOS guarantees in IP networks for

individual application sessions relies on resource reservation, and routers need to maintain state

info (Virtual Circuit??), maintaining records of allocated resources and responding to new Call setup requests on that basis

Page 47: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 47

Call Admission Session must first declare its QOS requirement and

characterize the traffic it will send through the network R-spec: defines the QOS being requested T-spec: defines the traffic characteristics A signaling protocol is needed to carry the R-spec and T-spec

to the routers where reservation is required; RSVP is a leading candidate for such signaling protocol

Call Admission: routers will admit calls based on their R-spec and T-spec and based on the current resource allocated at the routers to other calls

Page 48: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 48

Integrated Services: Classes

Guaranteed QOS: this class is provided with firm bounds on queuing delay at a router; envisioned for hard real-time applications that are highly sensitive to end-to-end delay expectation and variance

Controlled Load: this class is provided a QOS closely approximating that provided by an unloaded router; envisioned for today’s IP network real-time applications which perform well in an unloaded network

Page 49: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 49

Differentiated Services Intended to address the following difficulties with Intserv and

RSVP; Scalability: maintaining states by routers in high speed

networks is difficult due to the very large number of flows Flexible Service Models: Intserv has only two classes, want

to provide more qualitative service classes; want to provide ‘relative’ service distinction (Platinum, Gold, Silver, …)

Simpler signaling: (than RSVP) many applications and users may only want to specify a more qualitative notion of service

Approach: Only simple functions in the core, and relatively complex

functions at edge routers (or hosts) Do not define service classes, instead provides functional

components with which service classes can be built

Page 50: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 50

Edge Functions At DS-capable host or first DS-capable router Classification: edge node marks packets according to

classification rules to be specified (manually by admin, or by some TBD protocol)

Traffic Conditioning: edge node may delay and then forward or may discard

Page 51: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 51

Core Functions

Forwarding: according to “Per-Hop-Behavior” or PHB specified for the particular packet class; such PHB is strictly based on class marking (no other header fields can be used to influence PHB)

No state info to be maintained by routers!

Page 52: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 52

Classification and Conditioning Packet is marked in the Type of Service (TOS) in IPv4, and

Traffic Class in IPv6

6 bits used for Differentiated Service Code Point (DSCP) and determine PHB that the packet will receive

2 bits are currently unused

It may be desirable to limit traffic injection rate of some class; user declares traffic profile (eg, rate and burst size); traffic is metered and shaped if non-conforming

Page 53: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 53

Forwarding (PHB) PHB result in a different observable (measurable) forwarding

performance behavior PHB does not specify what mechanisms to use to ensure required

PHB performance behavior Examples:

Class A gets x% of outgoing link bandwidth over time intervals of a specified length

Class A packets leave first before packets from class B PHBs under consideration:

Expedited Forwarding: departure rate of packets from a class equals or exceeds a specified rate (logical link with a minimum guaranteed rate)

Assured Forwarding: 4 classes, each guaranteed a minimum amount of bandwidth and buffering; each with three drop preference partitions

Page 54: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 54

Differentiated Services Issues

AF and EF are not even in a standard track yet… research ongoing

“Virtual Leased lines” and “Olympic” services are being discussed

Impact of crossing multiple ASs and routers that are not DS-capable

...

Page 55: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 55

MPLSMulti-Protocol Label Switching:

Hop-by-hop or source routing to establish labels

Uses label native to the media

Multi level label substitution transport

Route at edge, switch in core

IP ForwardingLABEL SWITCHINGIP Forwarding

IP IP #L1 IP #L2 IP #L3 IP

Page 56: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 56

MPLS Header

IP packet is encapsulated in MPLS header and sent down LSP

IP packet is restored at end of LSP by egress routerTTL is adjusted by default

…IP Packet

32-bitMPLS Header

Page 57: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 57

MPLS Header

Label Used to match packet to LSP

Experimental bits Carries packet queuing priority (CoS)

Stacking bit Time to live

Copied from IP TTL

TTLLabel EXP S

Page 58: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 58

Forwarding Equivalence Classes

FEC = “A subset of packets that are all treated the same way by a router” The concept of FECs provides for a great deal of flexibility and scalability In conventional routing, a packet is assigned to a FEC at each hop (i.e. L3

look-up), in MPLS it is only done once at the network ingress

Packets are destined for different address prefixes, but can be mapped to common path

Packets are destined for different address prefixes, but can be mapped to common path

IP1

IP2

IP1

IP2

LSP

IP1 #L1

IP2 #L1

IP1 #L2

IP2 #L2

IP1 #L3

IP2 #L3

Page 59: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 59

Policy Based Networking (PBN)Policy Based Networking (PBN) Based on policies

E.g., give administrators high priority when accessing the network resources

Policies are Abstract, Goal oriented “WHAT” instead of “HOW” E.g.: Administrators (10.1.1.x) must have high priority

(DSCP=6)HOW approach: Remark 10.1.1.x traffic with DSCP=6WHAT approach: Give high priority to Administrators

The policy is still valid even if: topology and/or service implementation changes E.g., Administrators subnet is changed/expanded Administrators do not need to be associated with a specific

subnet!

Page 60: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 60

PBN ArchitecturePBN Architecture

DirectoryServer

PDP

PEP

Managed devices

PolicyEditing

tool

PEP PEP

Other Services

e.g., Event

Page 61: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 61

Common Open Policy ServiceCommon Open Policy Service The COPS BASE protocol [RFC 2784]

Policy-related information exchange b/w the PDP to the PEP

Determines the behavior of the entities, as far as the communication is concerned

Does not define the semantics of the exchanged data Does not describe HOW this data is produced by the PDP

or HOW this data will be interpreted by the PEP

COPS client-types Control different management areas (DiffServ, RSVP,

accounting, Security, etc.) Each PEP implements one or more clients of various

client-types Client-types are defined in separate documents

(standard or vendor-specific) COPS-RSVP and COPS-PR are such clients

Page 62: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 62

PDPPDP

COPS Operation ModesCOPS Operation Modes

Device

Outsourcing

PEPPEP

Policies Current state

DEC

CHANGE

INSTALL, UPDATE, DELETE CONFIGURATION DATA

A

B

C

Device

PEPPEP

PDPPDP

REQ

DEC

New Event

PROCESS

INSTALL

Policies

2

3

4

5

Current state

1

Provisioning

Page 63: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 63

COPS-PR [RFC 3084]COPS-PR [RFC 3084]Policy Server

Device

Initialization1. The PEP connects to the PDP,

reports its capabilities/limitations and requests configuration data

2. The PDP generates the initial policies according to the global policies and current network state

3. The PDP sends initial policies

4. The PEP stores these policies in its PIB. The data in the PIB determines the behavior of the device

ProvisioningA. The PDP detects changesB. The PDP sends commands that

add, update or delete policies in the PIB

C. The PEP updates its PIB

PEPPEP

PDPPDP

REQ

DEC

BOOT

PROCESS

INSTALL

Policies Current state

PIB

DEC

CHANGE

INSTALLUPDATE, DELETE

1

2

3

4

A

B

C

Page 64: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 64

Policy Information BasePolicy Information Base

A tree of PRovisioning Classes (PRCs)

PRovisioning Instances (PRIs)

Policies can be constructed as a set of PRIs

PIBs are pre-defined Different PIBs for Different PIBs for

different policing areas different policing areas (Diffserv, Accounting, IP (Diffserv, Accounting, IP filtering, etc)filtering, etc)

Page 65: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 65

PIB ExamplePIB Example

VALUEPRID

(128.1.1.2,6)2.2.1.1.2(128.1.1.1,6)2.2.1.1.1(100,1,11)2.2.1.2.2(100,2,10)2.2.1.2.1(4,NO)2.1.3.1.2(100,2)2.1.3.2.1

Page 66: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 66

COPS-PR policy examplesCOPS-PR policy examplesPolicy 1: if traffic to IPs 128.1.1.1 or 128.1.1.2 has DSCP=4

then remark it with DSCP=6

2.1.3.2.1 (100,2)2.1.3.1.2 (6,NO)2.2.1.2.1 (100,2,10)2.2.1.2.2 (100,1,11)2.2.1.1.1 (128.1.1.1,4)2.2.1.1.2 (128.1.1.2,4)

Install:2.1.3.2.1 (100,2)2.1.3.1.2 (6,NO)2.2.1.2.1 (100,2,10)2.2.1.2.2 (100,1,11)2.2.1.1.1 (128.1.1.1,4)2.2.1.1.2 (128.1.1.2,4)

PEP connects

PDP->PEP DECEvent: PIB (@ PEP)

Page 67: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 67

COPS-PR policy examples COPS-PR policy examples (Cont)(Cont)Policy 2: if traffic to engineers has DSCP=4 then remark it with DSCP=6

2.1.3.2.1 (100,2)2.1.3.1.2 (6,NO)2.2.1.2.1 (100,2,10)2.2.1.1.1 (128.1.1.1,4)

Remove:2.2.1.2.22.2.1.1.2

Engineer at 128.1.1.2 logs outif traffic to 128.1.1.1 has DSCP=4 then remark with DSCP=6

<EMPTY><NULL>PEP connects

No Engineer is logged

Similar to the first case

Install:2.2.1.2.2 (100,1,11)2.2.1.1.2 (128.1.1.3,4)

An Engineer logs to 128.1.1.3(similar to the first case)

2.1.3.2.1 (100,2)2.1.3.1.2 (6,NO)2.2.1.2.1 (100,2,10)2.2.1.2.2 (100,1,11)2.2.1.1.1 (128.1.1.1,4)2.2.1.1.2 (128.1.1.2,4)

Install:2.1.3.2.1 (100,2)2.1.3.1.2 (6,NO)2.2.1.2.1 (100,2,10)2.2.1.2.2 (100,1,11)2.2.1.1.1 (128.1.1.1,4)2.2.1.1.2 (128.1.1.2,4)

Two Engineers log on at 128.1.1.1 and 128.1.1.2if traffic to 128.1.1.1 or 128.1.1.2 has DSCP=4 then remark with DSCP=6

PIB (@ PEP)PDP->PEP DECEvent:

Page 68: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 68

COPS-PR ShortcomingsCOPS-PR ShortcomingsPolicy: if network is not congested then mark with DSCP=6 all traffic from 128.1.1.1

else (when network is congested), mark it with DSCP=4

Suppose the PIB supports policies of the form: if packet matches X then set DSCP=Y

PDP operation in COPS-PR: if network is not congested then ConfData1,

where ConfData1 implements “if packet matches 128.1.1.1 then set DSCP=6”if network is congested then ConfData2,

where ConfData2 implements “if packet matches 128.1.1.1 then set DSCP=4”

Shortcomings:The PEP can only store and process limited types of policiesThe PDP communicates decisions instead of a decision-making processThe PDP needs to be present in cases where this could be avoided

Page 69: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 69

Meta-PoliciesMeta-Policies

The PDP sends to the PEP the following rules (meta-policies):

if (!C) then ConfData1, (“if packet matches 128.1.1.1 then set

DSCP=6”) if (C) then ConfData2,

(“if packet matches 128.1.1.1 then set DSCP=4”)

Also, the PDP Sends values for “C” according to the network

state (congestion) Or, directs the PEP how to evaluate C (e.g.,

from its MIB)

Page 70: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 70

The small company exampleThe small company example1. Internal LAN traffic is always allowed2. The administrator can always access the Internet, whenever and from

wherever he/she is logged in.3. During overall congestion, traffic between the employee domain and

the Internet is denied.4. Internet can be accessed only during working hours (Monday to

Friday, 9:00-17:00)

(Rule #1 has the highest priority, rule #4 the lowest) “overall congestion” : evaluated based on the load @ the interfaces of Router A

PIB of Router A:If ((Source matches Srcaddr/Srcmask) && (Destination matches Destaddr/Destmask) )then

allow

Internet

M anagersW orkS tations

S ervers

PublicDomainX .Y .1 .0

EmployeesDomainX .Y .3 .0

LANX.Y.0.0

E m ployees W orkS tations

ManagerDomainX .Y .2 .0

Router A

S erver S erver

Prid Src SM Dst DM

Page 71: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 71

WithoutWithoutMeta-policiesMeta-policies

PD P

R outer AM IB

7 56

121110

8 4

21

9 3

C lock service,PD P c lock

Beggin ing ofwork ing day

A llowInternet

PD P

C ongestionD eny Internetto em ployees

R outer AM IB PD P

N oC ongestion

A llow Internetto em ployees

Authenticationserver PD P

Adm inis tratorlogged in

A llow Internetto adm in

R outer AM IB PD P

N oC ongestion

A llow Internetto em ployees

PD P

7 56

121110

8 4

21

9 3

C lock service,PD P c lock

End ofwork ing day

D eny Internet,except of adm in

Authenticationserver PD P

Adm inis tratorlogged out

D eny Internetto a ll

PD PR outer A

Boot,request for

P IB data LAN access

R outer AM IB PD P

C ongestionD eny Internetto em ployees

Pri

d

SrcA

dd

r

SrcM

ask

Dst

Ad

dr

Dst

Mas

k

1 X.Y.*.* 24 X.Y.*.* 24 //LAN

1 X.Y.*.* 24 X.Y.*.* 24 //LAN2 *.*.*.* * *.*.*.* * //Internet

1 X.Y.*.* 24 X.Y.*.* 24 //LAN3 X.Y.1.0 24 *.*.*.* * //public to everywhere4 *.*.*.* * X.Y.1.0 24 //everywhere to public5 X.Y.2.0 24 *.*.*.* * //managers to everywhere6 *.*.*.* * X.Y.2.0 24 //everywhere to managers

1 X.Y.*.* 24 X.Y.*.* 24 //LAN2 *.*.*.* * *.*.*.* * //Internet

1 X.Y.*.* 24 X.Y.*.* 24 //LAN3 X.Y.1.0 24 *.*.*.* * //public to everywhere4 *.*.*.* * X.Y.1.0 24 //everywhere to public5 X.Y.2.0 24 *.*.*.* * //managers to everywhere6 *.*.*.* * X.Y.2.0 24 //everywhere to managers

1 X.Y.*.* 24 X.Y.*.* 24 //LAN3 X.Y.1.0 24 *.*.*.* * //public to everywhere4 *.*.*.* * X.Y.1.0 24 //everywhere to public5 X.Y.2.0 24 *.*.*.* * //managers to everywhere6 *.*.*.* * X.Y.2.0 24 //everywhere to managers7 X.Y.3.7 24 *.*.*.* * //admin to everywhere8 *.*.*.* * X.Y.3.7 24 //everywhere to admin

2 *.*.*.* * *.*.*.* * //Internet1 X.Y.*.* 24 X.Y.*.* 24 //LAN7 X.Y.3.7 24 *.*.*.* * //admin to everywhere8 *.*.*.* * X.Y.3.7 24 //everywhere to admin

1 X.Y.*.* 24 X.Y.*.* 24 //LAN7 X.Y.3.7 24 *.*.*.* * //admin to everywhere8 *.*.*.* * X.Y.3.7 24 //everywhere to admin

1 X.Y.*.* 24 X.Y.*.* 24 //LAN17:15

11:05

15:08

15:11

15:20

17:00

PIB

8:59

9:00

11:00P D P

R ou te r AM IB

7 56

121110

8 4

21

9 3

C lo ck se rv ice ,P D P c lo ck

B e g g in i n g ofw o rk in g d ay

A ll owIn te rn et

P D P

C o n g es tion D e n y I n tern e tto e m p lo ye e s

R ou te r AM IB P D P

N oC o n g es tion

A llo w I n tern e tto e m p lo ye e s

A u th e n tica tio nse rve r P D P

A d m in is trato rlo g g e d in

A llo w I n tern e tto a d m in

R ou te r AM IB P D P

N oC o n g e s tion

A llow In te rn etto em p loye es

P D P

7 56

121110

8 4

21

9 3

C lo ck se rv ice ,P D P c lo ck

E n d o fw o rk in g d ay

D en y In te rn et,exce p t o f a d m in

A u th e n tica tio nserver P D P

A d m in is trato rlo g g e d o u t

D e n y I n tern e tto a ll

P D PR ou te r A

B oo t,re q u e s t forP IB d ata L A N a cce ss

R ou te r AM IB P D P

C o n g es tionD e n y I n tern e tto e m p lo ye e s

Prid: indexDstAddr: Destination IP DstMask: Destination MaskSrcAddr: Source IP SrcMask: Source Mask

Legend:

Events

08:59: No Admin. logged on

09:00: Start of working day

11:00: Congestion detected

11:05: No congestion

15:08: Congestion detected

15:11: Administrator logs on at X.Y.3.7

15:20: No congestion

17:00: End of working day

17:15: Administrator logs out

Page 72: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 72

WithWithMeta-PoliciesMeta-PoliciesEvents:

08:59: No Admin. logged on

09:00: start of working day

11:00: congestion detected

11:05: no congestion

15:08: congestion detected

15:11: administrator logs on at X.Y.3.7

15:20: no congestion

17:00: end of working day

17:15: administrator logs out

Congestion

Authenticationserver PDP

Administratorlogged in AdminLogged=true, AdminIP=X.Y.3.7

7 56

121110

8 4

21

9 3

Clock service,

End ofworking day

Authenticationserver PDP

Administratorlogged out

PDPRouter A

Boot Initial policies andmeta-policies

Pri

d

Src

Add

r

Src

Mas

k

Dst

Add

r

Dst

Mas

k

1 X.Y.*.* 24 X.Y.*.* 24

1 X.Y.*.* 24 X.Y.*.* 242 *.*.*.* * *.*.*.* *

1 X.Y.*.* 24 X.Y.*.* 243 X.Y.1.0 24 *.*.*.* *4 *.*.*.* * X.Y.1.0 245 X.Y.2.0 24 *.*.*.* *6 *.*.*.* * X.Y.2.0 24

1 X.Y.*.* 24 X.Y.*.* 242 *.*.*.* * *.*.*.* *

1 X.Y.*.* 24 X.Y.*.* 243 X.Y.1.0 24 *.*.*.* *4 *.*.*.* * X.Y.1.0 245 X.Y.2.0 24 *.*.*.* *6 *.*.*.* * X.Y.2.0 24

1 X.Y.*.* 24 X.Y.*.* 243 X.Y.1.0 24 *.*.*.* *4 *.*.*.* * X.Y.1.0 245 X.Y.2.0 24 *.*.*.* *6 *.*.*.* * X.Y.2.0 247 X.Y.3.7 24 *.*.*.* *8 *.*.*.* * X.Y.3.7 24

2 *.*.*.* * *.*.*.* *1 X.Y.*.* 24 X.Y.*.* 247 X.Y.3.7 24 *.*.*.* *8 *.*.*.* * X.Y.3.7 24

1 X.Y.*.* 24 X.Y.*.* 247 X.Y.3.7 24 *.*.*.* *8 *.*.*.* * X.Y.3.7 24

1 X.Y.*.* 24 X.Y.*.* 24

8:59

9:00

11:00

17:15

11:05

15:08

15:11

15:20

17:00

parameter: evaluation methodWorkTime:value sent by the PDP

AdminLogged:value sent by the PDPAdminIP:value sent by the PDP

if1Util: MIB variable a.b.c.d.e1if2Util: MIB variable a.b.c.d.e2if3Util: MIB variable a.b.c.d.e3

Meta-PoliciesParameter evaluation methods

WorkTime:FALSEAdminLogged:FALSE

Initial values

MIB ofRouter A

No Congestion

Congestion

No Congestion

AdminLogged=false, AdminIP=0.0.0.0

MIB ofRouter A

MIB ofRouter A

id Condition Actions1 WorkTime install (2,*.*.*.*,24,*.*.*,*,24)

install (3,X.Y.1.0,24,*.*.*.*,24)install (4, *.*.*.*,24, X.Y.1.0,24)install (5,X.Y.2.0,24,*.*.*.*,24)install (6, *.*.*.* ,24, X.Y.2.0,24)install(1,AdminIP,24,*.*.*.*,24)install(1, *.*.*.*,24, AdminIP,24,)

2

3

(if1Util>80%) or(if2Itil>80%) or(if3Util>80%)

AdminLogged

higher lower2 1

conflicts

7 56

121110

8 4

21

9 3

Clock service,

Beginning ofworking day

MIB ofRouter A

Page 73: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 73

Meta-Policies: Formal DefinitionMeta-Policies: Formal Definitionif (Condition) then {Actions}

Actions: pre-generated COPS-PR commands may contain parameters

Condition: a logical expression (encoded in a predefined way, e.g.,

according to an XML DTD) contains parameters

The PDP directs the PEP how to evaluate the

parameters MIB Value sent by the PDP Other (download script or code, LDAP, …)

Page 74: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 74

The Meta-Policy PIB PRCsThe Meta-Policy PIB PRCs

Instance Identifier

Instance Id Reference

Group Tag

Group Tag Reference

actionPrid

actionRefTag

actionTargetPrid

actionTable actionValueTable

actionValueEpd

actionParametricValueTable

ParameterRef

xmlDTDTable

xmlDTDPrid

xmlDTDURL

metaPolicyPrid

metaPolicyName

metaPolicyCondition

metaPolicyActions

metaPolicyPriorityTable

metaPolicyPriorityPrid

higherPriority

lowerPriority

metaPolicyStatusTable

metaPolicyActive

metaPolicySuppress

conditionTable

conditionPrid

conditionReverse

complexConditionTable

operator

leftTerm

rightTerm

booleanConditionTable

parameterReference

generalConditionTable

xmlDTDRef

xmlCondition

parameterTable

parameterPrid

parameterName

mibPibParameterTable

targetOID

EvaluationFrequency

pdpParameterTable

lastValue

1:1 1:1 1:1

metaPolicyTable

Legend

Page 75: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 75

ScenariosScenariosFor each high-level policy, the PDP has the following options: Scenario 1: PDP sends a meta-policy. All (or some) parameters are evaluated by the PDP and sent to the PEP.

Less PDP processing scalability Smaller messages robustness, efficiency

Scenario 2: PDP sends a meta-policy. All parameters are evaluated by the PEP.

All previous More distribution scalability, efficiency Self dependency robustness, fault-tolerance

Scenario 3: PDP sends a meta-policy. It monitors (some) parameters, but it directs the PEP how to evaluate them, in case of PDP absence.

All advantages of scenario 1 Fault-tolerance, robustness

Scenario 4: PDP processes the policy and sends configuration data to the PEP according to COPS-PR (mainly for compatibility reasons)

Page 76: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 76

ConclusionConclusionAdvantages of using Meta-policies:

Efficiency Bandwidth: Similar commands do not need to be send to the

PEP Some of the monitoring can be performed by the PEP PDP resources: CPU and memory savings (similar commands

do not need to be re-generated or re-validated).

Distribution Intelligence is distributed towards the PEPs Monitoring and Decision-Making are de-centralized

Robustness Probability of PDP overload is reduced Less big DEC messages, which may get lost in a congested

network, are exchanged

Fault-tolerance Devices can operate correctly during larger periods of PDP

absence

Page 77: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 77

Conclusion (Cont)Conclusion (Cont)

Tradeoff: Additional functionality increased complexity

PDP: More complex algorithms However, the PDP is already complex

PEP: Increased CPU & memory requirements The PDP may decide to send only a small number of

selected meta-policies that will not overload the devices

but they will increase the overall efficiency significantly

The backwards compatibility allows PEPs not to implement

the extra functionality (no meta-policies)

Page 78: APNOMS02, Jeju, Korea1 QoS Control in the Internet Raouf Boutaba QoS Control in the Internet Raouf Boutaba School of Computer Science University of Waterloo.

APNOMS’02 , Jeju, Korea 78

ReferencesReferences Open Source

The Meta-Policy Information Base, http://sourceforge.net/projects/metapib/

Internet Drafts A. Polyrakis and R. Boutaba, The Meta-Policy PIB, Internet Draft,

IETF, http://www.ietf.org/internet-drafts/draft-polirakis-mpib-00.txt.

R. Boutaba and A. Polyrakis, COPS-PR-MP, Internet Draft, IETF, http://www.ietf.org/internet-drafts/draft-boutaba-copsprmp-00.txt

Publications A. Polyrakis and R. Boutaba, The Meta-Policy Information Base,

IEEE Network Magazine, special issue on Policy-based Networking, Vol.16, No. 2, pp. 40-48 2002.

R. Boutaba and A. Polyrakis, Extending COPS-PR with Meta-policies for Scalable management of IP Networks, Journal of Network and Systems Management, special issue on Management of Converged Networks, Vol. 10, No. 1, March 2002

R. Boutaba, A. Polirakis, Towards Extensible Policy Enforcement Points, IEEE Policy Workshop (Policy’01), pp. 247-261, 2001.