<<

Internet Quality of Service: an Overview

Weibin Zhao, Da¡ vid Olshefski and Henning Schulzrinne ¢

Columbia Uni¡ versity £

zwb, dpo1, hgs ¤ @cs.columbia.edu

 

© § © § ¨

Abstract human factors, e.g., bounds on delay for interacti¨ ve voice

 

§ ©

communications, or by b* usiness needs, e.g., the need to

$

¦ ¦  ©

¨

¥ ¥ ¦ § © § ©

¨

This paper presents an o¨ verview of QoS, covering complete a transaction within a given time horizon.

 

¦ ¦ ¦

¨

 © © §  ¨

motivation and considerations for adding QoS to Internet, QoS can be described qualitati¨ vely (relative) or quantita-









§ ¦

© © ¨

the definition of Internet QoS, traffic and service specifi- ti¨ vely (absolute). Relative QoS definitions relate the treat-

 



 



¦ ¥ §

  © ¦ § ¥ § §

cations, IntServ and DiffServ frameworks, data path oper- ment recei¨ ved by a class of packets to some other class of





¦ ¥ ¦ ¥

¥ ¦ ¥  ¦ ¨

ations including packet classification, shaping and polic- packets, while absolute definitions provide metrics such as



  

 

 

© ¦ § ¦

ing, basic mechanisms for supporting QoS, includ- delay § or loss, either as bounds or as statistical indications.



+

 ¦ ¥

¦ ¦ ¦

ing queue management and , control path mech- Examples § of absolute bounds are statements such as “no



!

 

¦ ¦ ¦ ¥ ¦



§ ¥ § ¥

anisms such as admission control, policy control and band- more than 5% of the packets will be dropped” or “no packet





 § ¦ ©

© ¦ § §

width brokers, the merging of routing and QoS, traffic en- will experience a delay of more than 100 ms”. A set of such

 ¦

¦  ¦ ¦ §

gineering, constraint-based routing and multiprotocol label statements, along with guarantees about reliability, are of-



¦ ¦ © ©

¦ ©

switching (MPLS), as well as end host support for QoS. We ten called a Service Le¨ vel Agreement (SLA). Proportional

   



¥ ¦ §

¦  ©

identify some important design principles and open issues QoS [13, 14] tries to refine and quantify relati¨ ve QoS.



§ §

for Internet QoS. As long ¦ as the sum of the bandwidths of the ingress

%

©  § ¦ 

links e, xceeds the minimum capacity of a network, QoS can



  

§ § § § © ¥

be offered only in one of two ways: either by predicting





¦ ©  

1 Introduction the traffic and engineering the network to make ¨ violations





§ § 

of the committed QoS sufficiently * unlikely or by restrict-





¦ §

§ § ¥

Quality § of Service (QoS) [15, 17] has been one of the prin- ing the total amount of traffic competing for the same re-





  

  © ©

 ¨

§  ¦ © ¥ 

cipal topics of research and de¨ velopment in packet net- sources. In many cases, the network capacity is effectively



¥ ¥ ¥

¥ ¥ ¦ § ©

  ¨

works for many years. This paper presents an overview partitioned by packet prioritization, so that higher-priority







*

§ of Internet QoS. traffic is largely unaffected by lower-priority traffic.



 

 

¥ ¦

 © § © ¦ ¦ 

The paper is structured as follows: Section 2 discusses QoS guarantees can be made either o¨ ver an aggregate



 ¦ ¦ ¦

¨

§ ¦ § ¦ 

motivation and special considerations for adding QoS to of communication associations, or for an indi¨ vidual group



  

§

¥ § ¦

the Internet. Section 3 defines Internet QoS. After outlin- § of packet delineated in time. The latter is often called a



 

 ¦

¦   ¥

ing two important frameworks, integrated and differenti- “flo w”. QoS is assured by reserving resources, primarily

 



 

¦ ¥ ¥ §

¦

ated service, in Section 4, we present basic data path oper- and sometimes b* uffer space.

 

¦ ¥ ¥ ¦

© ¦ ¥ ©

ations, namely packet classification, shaping, policing, and Excess traffic can be dropped either at the packet le¨ vel

-

% 



§ ¦ © ¦ ¨

two important router QoS supporting mechanisms, queue (policing) or at the flo w level (admission control), as dis-

!





%  %



¦ ©

 ¦

management and scheduling, in Section 5. We show con- cussed later. When network traffic is limited ¨ via admission

"

 

-

%   

¥  ¦

¥ ¦ © © 

¨

trol path mechanisms in Section 6, including admission control, and e, xcessive delay is replaced by flow

 

#



 $ $



¥ ¦



 ©

control, policy control and bandwidth broker. In Section 7, blocking. The network has to ha¨ ve sufficient capacity to





©   §  ¦ ¦

¨

© § © § § ©

we cover the merging of Internet routing and QoS, address- ensure only modest le¨ vels of flow blocking. (For exam-





©  ¦ 

¥  © ©

ing traffic engineering, constraint-based routing and multi- ple, the telephone network is generally engineered to ha¨ ve



-

%  %



¥

¥ © §

protocol label switching (MPLS). In Section 8, we discuss less than 1% call blocking.) The permissible le¨ vel of flow



$  % 





© © §

¦ ¥ § ¦

end host support for QoS. We conclude by listing open is- blocking is § often also part of an SLA.



© ¦ § ¦ ¨

sues. Flo w-level blocking is appropriate only for applications



 

¦ 

* .

whose utility function drops to zero at some non-zero band-



§ ¦ ¦ ¦

¨ &

' width. For those applications, waiting for available band-

 

  

)

(

¥ §

2 Motivation width is preferable to obtaining bandwidth insufficient for

¦ ¦ © ¦ 

the application. As an e, xample, consider a network with

   

 ¦ ¦ §

Quality § of service (QoS) generally describes the assurance a bottleneck bandwidth of 1 Mb/s. If the network is to be

   "

%  %  /

§ ¦ ¥ § ¦  §

* ¨

of sufficiently lo w delay and packet loss for certain types used for voice calls, with a minimum bandwidth of 64 kb/s

!

 

§ ¦ §  © ¦ ¦ ¥ § § ¨ of applications or traffic. The requirements can be gi¨ ven by and a tolerable packet loss of 5%, no more than 16 voice

1

W

_

Z

X X Y [ [ X \ `



] a

¦ ¦ 

^ ^ ^

calls can be admitted. If the 17th call is admitted, the qual- Characterize a Flow:

 

§ ¦

ity of all calls drops belo w the tolerable threshold, so it is





¥ § ©

h i

b f g b c g c f

preferable to delay one call in that case. We refer to traffic d



 

¦ ©

* . ¨ .

whose utility function drops to zero above zero bandwidth r constant token rate (bps)

¦ © ¨

as QoS-sensitive. p

 

g

n

¦  © ¦

¨

e

g g c

l

c d c c

b max g

It has been argued that data networks have a suffi- variable b token bucket depth c

¦

* c

g peak

j c ciently low utilization to make resource reservation for rate input g

rate

3

© 2 4

* 0 1 0 1

QoS-sensiti¨ ve traffic unnecessary. However, while the av-

6 9 : :

3

2 4 7 8 4 0

erage 5 utilization in a network may be low, there are likely

9

3 3

4 ; < = 4 to be times and places 0 where congestion occurs, at least

3 temporarily.

> ? 3

Applications differ in their QoS requirements. Most 4 ap-

: >

; 4 2 4 <

1 0

j j

c g

m

c c f

plications are loss-sensitive; while data applications can input k queue burst leaky

j

d c

2 ; 4 2

1 1

1 bucket

e j

recover from packet loss via retransmission, losses above c

@ B

:

C

3 3

A 2 ; 2 2 1 1 depth

5% generally lead to very poor effective . Data

D

>

3

4 4 7 A

4 applications such as file transfer are not generally delay-

E 6 :

3

2 4 ; 0

sensiti1 ve, although human patience imposes lower through-

9

9 9 F

=

5

; = 4 4 0

put bounds on applications such as 0 web browsing. Contin- Figure 1: Token bucket

8 4 4 4 4 1

5 uous media applications such as streaming audio and video

9

4 2 4 4

A generally require a fixed bandwidth, although some appli-

3 3 3

3

4 ; = =

0

< 4 < <

< cations can adapt to changing network conditions (see Sec- networks where there are possibly tens of thousands of 3

tion 8.2). flo0 ws.

E 9

G

>

G H

4 < A = <

3

2 = 4 8 <

1 Thus, a coarser granularity of classification has been D

This diversity of applications makes the current Internet 6

3

; ; 4 A 2

0 1

3 3

= = 4 4 proposed, where packets are grouped into several traffic

approach of offering the same, “best-effort” service, to all >

3

>

< 2 4 4 4 4 classes, each treated differently. This approach assumes

applications inadequate. ISPs also see service differentia- ?

3 3

9

; < 2

1

3 3 3

4 4 = 2 1

0 that packets in the same class have similar QoS require-

9

tion as a way to obtain higher revenue for their bandwidth. Q

3 3 3

4

0 0 K

6 6 : :

H H

3 3

; = 4 ments no matter what flows they belong to. While this ag-

In short, it is likely that at least portions of the Internet 9

A A < 4 ;

0

B B

> 6

I

3 7 0 gregate classification scales better and has lower per-packet

will see service differentiation in the near future [9, 33]. 6

< ; A 4 7 4 4

o

9 9 >

3

< 4

0 complexity, its performance guarantees are not as strong as

B

3 Since best-effort service will continue to be dominant, all 3

; 4

0

?

3 3

= = 2 4 those for the per-flow approach.

Internet QoS mechanisms are layered on top of the existing F

3

2 4 = 4 A <

3

4 0 0 Current efforts are focused on aggregate traffic classi-

Internet rather than replacing it with a new infrastructure. 9

3 3

> < 4 4 = 4

4 <

; fication. Trying to combine the advantages of both ap- B

Internet design principles [10] such as connectionless ser- 9

3 3

; J 2 4 2

J 4 2 ; 2 4 5 1 proaches, some research efforts attempt to emulate the be-

vice, robustness and end-to-end principles should serve as 9

B

H 4 ; = ;

1 0 5

3

4 A 4 ; 2 <

K havior and performance of per-flow based mechanism un-

B

> 9

a guidance for any proposed enhancement to current Inter- I

4 ; A 0

7 der an per-aggregate-class based framework [32]. >

net. ?

3 3 3

= ; 0

In order to pro1 vide Internet QoS, we need to describe the

3

; = 4 4 A 4 4 0

properties of flo0 ws and aggregates as well as their service

9

3 3

<

5 5

L O

M P

N requirements. The token bucket is the most commonly used

V B B

6

G

3 3

2 = o

3 Internet QoS Definition flo0 w specification, for example in the form of the TSpec

9

G G

3

< 4 4 ; J 0

[30]. The TSpec combines a token b5 ucket with a peak rate

B

> ? >

Q

>

2 4 ; 4 ;

1

4 8 ; 4 4 8

5 q

We define QoS as providing service differentiation and per- p , a minimum policed unit , and a maximum datagram

>

B D

G

4 4

; s 4 t 4 ; 5

formance assurance for Internet applications. Service dif- size r . The parameters and are used for packet fil-

> >

9

3

3 3 u

; 4

1

4 ; <

ferentiation provides different services to different appli- tering: a packet 0 whose size is less than bytes is counted

9 9

3 3

< 4 4

4wv 4 4 ; = 2yx < = 1

cations according to their requirements. Performance as- as bytes and anK y packet over bytes is considered out

9 > >

9 9 > z

3

4 4 4

1

= ; 4 4 4 5

surance addresses bandwidth, loss, delay and delay vari- of profile. The token b5 ucket has a bucket depth , and a

B

6

R

9 9

3

3

4 7 J

5 0 | 5

ation (). Bandwidth is the fundamental network re- bucket rate { , with specifying the maximum burst size

6 >

Q

3

3

4 4 4 8

} 8 J 4 ;

source, as its allocation determines the application’s maxi- 4 and specifying the maximum service rate. When a packet

6 9

B

: ~ 6 9

3 3

3 3

8 4 < = 2

= 4 J 2 1

mum throughput and, in some cases, the bounds on end-to- of length is serviced,  bytes are removed from the to-

> 6

S

€ 9 9 6 6

H

3 3

2 4 T 8

2 ; 8

5 0

end delay. Jitter is a secondary quality-of-service metric, ken b5 ucket. If the bucket is empty, the packet must wait in

B

9 6 6

D

9

H

3 3

3 3 3

4 ; 4 J 2 <

5 1

T 2

5 5 0

since a playout buffer at the receiver can transform it into the queue 5 until the bucket fills up with enough tokens. In

>

6 9 6 :

3

4 <

4 = ; 4

0 K

additional constant delay. implementation, a token b5 ucket is often paired with a leaky

9

> 9

3

<

5

< ; = 4 4 4

Service differentiation can be per-flo0 w or at an aggre- bucket. Figure 1 illustrates this. Service requirements can

B

9 6

V @

6 > 9 

U

3

4 4 4

1

A < 4 7

gate. A flo0 w is commonly defined by a 5-tuple, namely be specified in a variety forms, such as the RSpec [30]

ƒ >

>

H H

3

4 4 4

0

4 ; 7 4

source IP address, source port number, destination IP ad- which includes a service rate ( ‚ ) and a delay slack term

ƒ

> >

; 4 ;

dress, destination port number, and protocol (UDP, TCP). ( „ ).

D V B D

6 >

G G

3

A ; = ; = 4 <

This fine granularity protects flo0 ws from other, possibly The specifications of traffic and its desired service can

9 9 9 9

4 ; A 2 = 4 ; = 2 4

5 1 0 1 misbeha1 ving, applications, but scales poorly in backbone be given on a per-flow basis or in service level agreement

2

Figure 3: RSVP signaling



4 4 J 2 J 4 0

RSVP adopts a recei1 ver-initiated reservation style which

B

6 >

4 8 2 4 4

is designed for a multicast en1 vironment and accommodates

B

E



J 2 7 4

1 0

† ? ‡

heterogenous receiver service needs. RSVP works as fol-

V

:

U

G Ž G

3

4 8 0

Figure 2: End-to-end QoS lo0 ws (Fig. 3). The flow source sends a PATH message to

3 3

2 < 1

the intended flo0 w receiver(s), specifying the characteristic

3 3 3 3 3

= ;

0

6 9

U of the traffic. As the PATH message propagates towards the

4 < 4 <

3

J 2 2 7 J 4 J ; 0 (SLA). An SLA is a service contract between a customer 1

9 receiver(s), each network router along the way records path

4 4 ; < 4 2 9

1 5



< 4 4 4 1

and a service provider. A customer may be an end user 1

> >

H characteristics such as available bandwidth. Upon receiv-

= 4 4 4 6

5 U

Ž G 

3

4 8 J 2 J 4 0

(source domain) or an adjacent upstream domain. In ad- 1 D

> ing a PATH message, the receiver responds with a RESV

3 3 3 3

4 4 6

3 3

J J 4 ; J

dition to the traffic specification, an SLA specifies all the 8 message to request resources along the path recorded in

3 3

4 = ; 4 <

3 3 3 3

2 =

aspects of packet forwarding treatment that a customer 1

B 6

ˆ the PATH message in reverse order from the sender to the

3

J 2 ;

1 1

H

3

J 2 J < 4 = J J should receive from its service provider. Less technical 1

> receiver. Intermediate routers can accept or reject the re-

< 4 4 ; 4

3 3

= 4 contents may also defined in SLA such as pricing and T

9 quest of the RESV message. If the request is accepted,

; 9 9

5

3

4 4 4 0 billing procedures including refunds for unexpected ser- 5

9 link bandwidth and buffer space are allocated for the flow,

3

2 ;

1 1

3 3 4

vice failures, encryption services provided by the service and the flo0 w-specific state information is installed in the

3

; 4 2 9 9

1 5 1 5

3

< 4 =

provider, authentication mechanisms used to verify users, routers. Reserv4 ations can be shared along branches of the

3

4 ; A = < = >

3

8 2

and procedures for re-negotiation or cancellation of the ser- 1 B

G multicast delivery trees.

3

= 2 = < 7 A

1



3 3 3

4 J A

0 

vice. To facilitate the establishment of SLA, certain nego- 

6 6 >

U

3

7 4

8 RSVP takes the soft state approach, which regards the

4 4 4 <

tiation mechanism is needed. Although an SLA is deemed 0

9 9

3 3 3

2 5

1 flow-specific reservation state at routers as cached informa-

9

3 3 3 ;

to be relatively stable, it should be updated to reflect the 4

D

6 >

3 tion that is installed temporarily and should be periodically

< = ; 4 J

0

9 E 6 6

3 3

2 7 J changes of traffic pattern and its desired service, which re- J

3 refreshed by the end hosts. State that is not refreshed is

T 4 A =

H

3 3 3

J 2 4 4 ; J <

quires a re-negotiation of the SLA. remo1 ved after a timeout period. If the route changes, the

6

3

8 4 7

J refresh messages automatically install the necessary state

E

G 

3

4 7 J 4

0 

along the new route. The  soft state approach helps RSVP

‰

6

Š

3 3

8 < = < 4 o

‹ to minimize the complexity of connection setup and im- 9

4 Frameworks 3

; 2 <

5 5 0

pro1 ves robustness, but it can lead to increased flow setup

3

4 = 2

1

?

3

< 4 2 2

0 1

0 times and message overhead. H

How can we achieve end-to-end QoS in the Internet? G 3 3 3

4 4 < 3

4 The IntServ architecture adds two service classes to the B

Since today’s Internet interconnects multiple administra- 9

> 6 6 2 8 A 4 <

o

3 3

2 <

1 existing best-effort model, guaranteed service and con- ‘

tive domains (autonomous systems (AS)), it is the con- :

3

; 4

1

> >

3

= ;

< trolled load service. Guaranteed service [29] provides an >

catenation of domain-to-domain data forwarding that pro- 9

= 2 T

5

? > †

U

3

2 2 1

1 upper bound on end-to-end queuing delay. This service

vides end-to-end QoS delivery (Figure 2). Although there 3

4 4

0

B

6

3

4 4 = < 8 A 0

1 model is aimed to support applications with hard real- F

are variety of choices, two major frameworks, integrated I

3

; 1 4 time requirements. Controlled-load service [35] provides

services (IntServ) and (DiffServ), 9

3

4 T = 4

5

B

E

3

2 2 A 4 ; 4 ; 1

1 a quality of service similar to best-effort service in an un-

> : > 6

have emerged as the principal architectures for providing H

7 4 7 4 0

? derutilized network, with almost no loss and delay. It is

9

3 Internet QoS. 3

4 A 4 8

4 aimed to share the aggregate bandwidth among multiple

D

6

3

4 < = 2 <

5 1

traffic streams in a controlled 0 way under overload condi-

3 Œ

 tion.

> H

4.1 (IntServ) R

; J J 4 < 0

By 5 using per-flow resource reservation, IntServ can de-

9 ? ?

4 ; 2 A 2

0 0 1 0 1

IntServ [7, 12] is a per-flo0 w based QoS framework with liver fine-grained QoS guarantees. However, introducing

B V B

> 6

H

3

J J 4 ; J J 4

dynamic resource reservation. Its fundamental philosophy flo0 w-specific state in the routers represents a fundamen-

6 6

H Ž

3 3 3 3 3 3

J 7 J 2 J = ; < < 4 4

is that routers need to reserve resources in order to pro1 vide tal change to the current Internet architecture. Particularly

? 9

3 3 3

T 4

0 0

quantifiable QoS for specific traffic flo0 ws. RSVP (Resource in the Internet backbone, where a hundred thousand flows

B D

9 9 >

 Ž

3 3

2 4 4 ; 8 ; 8 8 4 4 J

Reserv4 ation Protocol) [8] serves as a signaling protocol for may be present, this may be difficult to manage, as a router

3 3

4 2 4 T 2 application to reserve network resources. may need to maintain a separate queue for each flo0 w.

3

9 9 9 9 ?

3 3

< 2 2 4 ; 1

Although RSVP can be extended to reserve resources for (PHBs) as the basic b5 uilding blocks for QoS provision-

3 3

4 A = ; < 4 2 < ; 4 4

K 1 K

aggregation of flo0 ws, many people in the Internet commu- ing, and leaves the control policy as an issue for further

9 9 9

3

2 < ; < < 4

0 0 K 5

nity belie1 ve that IntServ framework is more suitable for work. The control policy can be changed as needed, but

B

6 ? 9 €

Ž G

3

= 4 4 J 2

intra-domain QoS or for specialized applications such as the supporting PHBs should be kept relati1 vely stable. The

V B B V

E 6 €

H

3 3 3 3 3

4 ; = <

K o

high-bandwidth flo0 ws. IntServ also faces the problem that separation of these two components is key for the flexi-

B B

6 > 6 9 6

U

C H

= ; < = 2 J

incremental deployment is only possible for controlled- bility of DiffServ. A similar eo xample is Internet routing.

B B

: > 6 E

H

J 2 4 =

5 1 0

load service, 0 while ubiquitous deployment is required for It has very simple and stable forwarding operations, while

> 9 9

3 3 3

4 < = < 4

A guaranteed service, making it difficult to be realized across the construction of routing tables is complex and may be

9 >

3

; 4 4 = ; =

the network. performed by a 1 variety of different protocols. (This of-

3

4 4

ten reflects a software-hardware split, 0 where PHBs are im-

3

; < ; K

plemented in hardware, 0 while the control policy is imple- 6

4.2 Differentiated Services (DiffServ) 8 mented in software.)

B

F 9

C

3

; 8

Currently, DiffServ pro1 vides two service models besides

G H

3 B

9 6

Ž I

= 4 = ; 4

0

4 A ; J

To address some of the problems associated with IntServ, best 2 effort. Premium service [20] is a guaranteed peak rate

B B

> E 9 9

3 B D

6

3

;

= 2 J A ; 1

differentiated services (DiffServ) has been proposed by the service, 0 which is optimized for very regular traffic patterns

3

>

4 A

0

= = T < ;

IETF with scalability as the main goal. DiffServ [4, 25] is 4 and offers small or no queuing delay. This model can pro-

9 >

? ’

3

4 ; A

4 4 2 = 5

a per-aggregate-class based service discrimination frame- 1 vide absolute QoS assurance. One example of using it is to

9

3 3

3 3

; 4

0 5 5

< ; = 1

work using packet tagging [24]. Packet tagging uses bits in create “virtual leased lines”, 0 with the purpose of saving the

3 3 3

9

; 4 ; ;

< = 4 4

the packet header to mark a packet for preferential treat- cost of b5 uilding and maintaining a separate network. As-

’ 9 6

H H

3 3

6 9

H

8

5

= ;

ment. In IPv4, the type-of-service (TOS) byte is used sured service [19] is based on statistical pro1 visioning. It

’ 9

G G

3

•

3 3 3

8 ; < = 4

4 = 4 ;

to mark packets. The TOS byte [1] consists of a 3-bit tags ; packets as In or Out according to their service profiles.

D D B

“ 6

9 >

•

3

; 4 J 8

; 4 ; 0

precedence field, a 4-bit field indicating requests for min- In packets are 5 unlikely to be dropped, while Out packets

6 >

3 D

> 6

G

8 8 J

4 7 ; 4 J 2 1

imum delay, maximum throughput, maximum reliability are dropped first if needed. This service pro1 vides a relative

9

3

? 9 9

3

4 < 4 = 2

5 0 1

4 < 5

and minimum cost, and one unused bit. However, these QoS assurance. It can be 5 used to build “Olympic Service”

9 9

3

9

2

0 1 0 5

A 2 4 2 1

bits were never widely used. DiffServ redefines this byte 0 which has gold, silver and bronze service levels.

9

3 3

4 = 5

as the DS field, of 0 which six bits make up the DSCP (Dif-

F

3 3

ferentiated Service CodePoint) field, 4 and the remaining two

9

3

4 = <

5

– P — ™

bits are unused. The interpretation of the DSCP field is cur- ˜

9 9

H 3

J rently being standardized by the IETF. 5 Data Path Mechanisms

9

3 3

;

5 1

> >

3 3

=

0 0 0

DiffServ uses DSCP to select the per-hop behavior 1

; 2 4 2 4

4 Having outlined the frameworks, we will discuss the de-

?

3 3

4 4 2

(PHB) a packet experiences at each node. A PHB is an =

3

2 = 4 ;

0 tails of Internet QoS mechanisms along two major axes:

>

C

3

4 < ; ; 8 4

externally observable packet forwarding treatment which ;

B

6 6

3

4 J 2 < = 1

5 data path and control path. Data path mechanisms are the

9 9 9 ? 9

=

0 5 K

is usually specified in a relative format compared to other 5

B

9

Ž

4 J 2 = 0

1 basic building blocks on which Internet QoS is built. They

6 6

3 3 3 3

4 J 7 =

PHBs, such as relative weight for sharing bandwidth or 1

B

>

G C

3

J 2 ; 8 =

1 implement the actions that routers need to take on individ-

B

6 > :

3

; = 2 2 = 1

relative priority for dropping. The mapping of DSCPs to 5

D

6

Ž R

2 7 7 2 4 ; 2 4

4 ual packets, in order to enforce different levels of service.

F

; 4 < <

PHBs at each node is not fixed. Before a packet enters a 0

B D

> 6 6 9

C C

3 2

8 Control path mechanisms are concerned with configuration

3

= 7 7 J ; A 0

DiffServ domain, its DSCP field is marked by the end-host 0

3 3 3 3

4 T

= of network nodes with respect to which packets get special

9

3 3 3 3

= 4 4 = 5

or the first-hop router according to the service quality the 0

Q

3 3

; 4 2 2 1 treatment what kind of rules are to be applied to the use of

packet is required and entitled to receive. Within the Diff-

>

3 3

= 4

2 resources.

D

> 9 > 6

Q

3

; = J

Serv domain, each router only needs to look at DSCP to 2

>

”

3 3 3

; <

; We first discuss the basic data path operations in routers <

decide the proper treatment for the packet. No complex ;

6

< = ; 7

0 (Fig. 4), including packet classification, marking, meter-

6 9

G

3 3

; 4 < 2 1

classification or per-flow state is needed. 0

> 3

; ing, policing, and shaping. Then we cover the two ba-

8 T 8 4

DiffServ has two important design principles, namely J

9

3 3 3

< 4

; sic router mechanisms, queue management and schedul-

9 >

3

4 < 4

5 K

pushing complexity to the network boundary and the sep- K

4 = ; 4

K ing. They are closely related, but they address rather dif-

B

6 ?

8 <

aration of policy and supporting mechanisms. The net- ;

D

9 E :

3

J 4

0 ferent performance issues [6]. Queue management controls

9 >

3

; T = ;

work boundary refers to application hosts, leaf (or first- =

E 9

4 2 J 4 7

J the length of packet queues by dropping or marking pack-

>

2 = 4 0

hop) routers, and edge routers. Since a network boundary 0

V

E 6

J 2 7 = < ; = 0

1 ets when necessary or appropriate, while scheduling deter-

6

3 3

8 ; 7 4 ;

o 5

has relative small number of flows, it can perform opera- 0

D

3

4 4 A 4 < ; <

o mines which packet to send next and is used primarily to

9

3

4 = 4

tions at a fine granularity, such as complex packet classifi- 0

D

H

3

4 < < 4 7 < < manage the allocation of bandwidth among flows.

cation and traffic conditioning. In contrast, a network core

2 4 A = ; 0

router may ha1 ve a larger number of flows, it should perform

B B

>

G

4 = = 7

› œ

fast and simple operations. The differentiation of network š

9

3

4 < = 1 5.1 Basic Packet Forwarding Operation

boundary and core routers is vital for the scalability of Diff-

6 >

U

4 ; J 2 4 ; <

Serv. As a packet is recei1 ved, a packet classifier determines

9 9

3 3

= < ; 4 = < = <

0 0

The separation of control policK y and supporting mech- which flow or class it belongs to based on the content

B

6 E

C

3 3 3 3

4 4 2 = 2 = ; = ; 4 < 1

anisms allo0 ws these to evolve independently. DiffServ of some portion of the packet header according to certain

> 9

3 3

= 2 ; ; 4 = < 1 only defines se1 veral per-hop packet forwarding behaviors specified rules. There are two types of classification:

4

@



“ >

R

T 8 4 =

Figure 4: Basic data ; path operations Figure 5: RED queue management algorithm

‘

3

< ; 4 2

1



G

= < 4 4 = 7 < 7 0

General classification performs a transport-level 1

9 6 3

3 To control and avoid , we need some

= 4 ;

9 6

4 7 2 4 4

signature-matching based on a tuple in the packet 8 mechanisms both at network end-points and at intermediate

4 ; 2 =

1

>

3

2 = ;

header. It is a processing-intensive operation. This routers. At network end-points, 0 we depend on the TCP pro-

4 4

K

3

4 2 4 4 4

5 1 0

function is needed at any IntServ-capable router. In tocol 0 which uses adaptive algorithms such as slow start, ad-

4 <

> >

2 4 2 1

DiffServ, it is referred as multifield (MF) classifica- 1 9

3 ditive increase and multiplicative decrease. Inside routers,

4 = 4

’

3

T A 4 4 2 1

tion, and it is needed only at network boundary. queue management is 5 used. Our goals are to achieve high

B

: > 9

G

3

4 2 2 < 8

0 1

F 9

; = =

ž throughput and low delay. The effectiveness can be mea-

9 6

3 3

7 ; J = 0

Bit-pattern Classification sorts packet based on only 0

D

6 E 6

H

3

; 8 4

= sured by network power, which is the ratio of throughput >

one field in the packet header. It is much simpler and 3

B B

6 6

H C

3

< J

A to delay.

9 > 3

faster than general classification. In DiffServ, it is re- 3

4

5

B

9

U

4 4 A < 0

1 The buffer space in the network is designed to absorb

> 9 9 3

ferred as behavior aggregate (BA) classification which 3

< =

5

D

6 9 6

C H

= = 4 7 <

5 short term data bursts rather than be continuously occupied.

>

3 3

is based only on DS field. It is used at network core 3

< ; Limiting the T queue size can help to reduce the packet delay

routers. 9

bound.

6 : 6

U

>

G

3 3

3

< ; ; 4

J ; 4 = T

After classification, the packet is passed to a logical in- Traditionally, packets are dropped only 0 when the queue

D

B

6 > >

‡

3

3

= 4 < 8 < 4 8

0

4 ; 4

stance of a traffic conditioner which may contain a meter, is full. Either arri1 ving packets are dropped (tail drop), the

D

>

U

E 9 6 : >

3 3 3

8 4 8 8 <

; 2 T 4

marker, shaper, and dropper. A marker marks certain field packets that ha1 ve been in the queue the longest are dropped

D

6 :

C

B B

6 >

3 3 3 3

; 4 ;

4 J < ;

in the packet, such as DS field, to label the packet type (drop front) = or a randomly chosen packet is discarded from

B B

> : 6

U

> >

3 3

3 3

8 8

5

T 4 0

for differential treatment later. A meter is used to measure the queue. There are two dra0 wbacks with drop-on-full,

>

3 3 3 3 3

3

; = 4 4 T

the temporal properties of the traffic stream against a traffic namely lock-out 4 and full queues. Lock-out describes the

>

B V

3 3

3

; ; ; = = = ;

; 4 < = 4 8 0

profile. It decides that the packet is in profile or out of pro- problem that a single connection or a fe0 w flows monopo-

3 3 3 3

; = <

T ; 2 = < A

file, then it passes the state information to other traffic con- lize queue space, pre1 venting other connections from get-

> ’ 9 >

6

G

3 3

2 = ; ;

T T ; J

ditioning elements. Out of profile packets may be dropped, ting J room in the queue. The “full queue” problem refers

B B

> E 6

> €

3

3 3 3 3

J 4 = 4

= ; T 4

remarked for a different service, or held in a shaper tem- to the tendencK y of drop-on-full policies to keep queues at

9 6

H

3

; ; ; ; 4

5 K

= = ;

porarily until they become in profile. In profile packets are or near maximum occupancK y for long periods. Lock-out

B B B

6 >

U

:

; T ;

< = J A

5 0

put in different service queues for further processing. A causes 5 unfairness of resource usage while steady-state large

6 > 6

>

3

= 4 = ; 4 ; 4

shaper is to delay some or all of packets in a packet stream T queues results a longer delay.

9

3 3 3

= <

0

3 3

= 4 = ; 4 2 T

0 1

in order to bring the stream into compliance with its traffic 1 9

9 To avoid these two problems, we need active queue man-

> 9 9

; 4 4 ;

5 5

4 ; 4 T

profile. It usually has a finite buffer, and packets may be 0

9 >

> agement which drops packets before a queue becomes full.

3 3 3

E

H

5

3 3

4 J < 4 8 ;

0 0 K

discarded if there is insufficient buffer space to hold the de- It allo0 ws routers to control when and how many packets to

> 9

>

; < 4 4

= 4

layed packets. A dropper can be implemented as a special 2

B 9

9 drop. An important example of such algorithm is Random

3

‡ C I

< = 4 ; Ÿ

case of a shaper by setting shaper b5 uffer size to zero pack-

B

> Early Detection (RED) [16].

H G

2 = ; = 4



3 3

< 4 2 T 5

ets. It just drops out-of-profile packet. The function of a 1

D

> 6 €

3 RED controls the average queue size using time-based

4 ;

0

> >

2 4 4 ;

dropper is known as traffic policing. exponential decay, and it marks (or drops) arri1 ving packets

; = 4

; probabilistically. The probability of marking increases as

H

3 3 3

2 4 2 T A

1 0 5

¡ the estimated average queue size grows. It uses two thresh-

@

Q

3

= 4 4 2 T

5.2 Queue Management 1 ©«ª

olds: min ¦¨§ and max (Fig. 5). When the average queue

’ ? 6 : 6 6 :

H H G

3 3

= < ; 8 ¬¨­ 7 ; 4 8

One A goal of Internet QoS is to control packet loss. It is size is less that min , no packets are marked. This should

9

Ž Q

3 3 3

4 2 8 T 8 4 A 7 8 = = 4 2 T 1

achie1 ved mainly through queue management. Packets get be the normal mode of operation. When the average queue

> >

6 6

3 3

3

=

0 A 8 ®¨¯ 2 2 4 ; 8 1

lost for two reasons: damaged in transit or dropped when size is greater that max , e1 very arriving packet is marked.

> > 6

ˆ G Q

3 3

7 < J 8 = = < 5

network congested [21]. Loss due to damage is rare ( ¢ This mode should occur only under congestion. When the

ƒ 9

£¥¤

; = 4 = < 4 2 T 4 2 4

1 ²¨³ ), so packet loss is often a signal of network congestion. average queue size is between min °¨± and max , each ar-

@ 5

?

Q

; 4 ; ´¶µ¸·º¹¼»¶½ 2 4 4 =

1 0 1 È

riving packet is marked with a probability maxp¾ , Weighted (WFQ) is variation of

3 3

4 = 4 2 T

¿ÁÀ 1 0 0 0

0 where is a function of the average queue size. This is weighted round robin scheduling, where the weights

3

< 4 = ; 4 A 4 < 2 < ;

0 1

the congestion a1 voidance phase. Packets get marked in are coupled with reserved link rates. It can provide

V

: E 6 > 9 6

 R

3 3 3

; 2 A = 4 ; 0

proportion to the flo0 w’s link share. RED has two impor- end-to-end delay guarantee on a per-flow basis. But it

9 >

U

H G

3

; 4 = A = < ; 4 J A 1

tant properties: It a1 voids global synchronization of TCP by cannot provide separate delay and rate guarantee. A

V

6 6 E 9 9 6 : 9

3 3

J 4 7 4 J ; = 4

0 0

introducing randomness and it has no bias against b5 ursty resulting problem of this is that a low bandwidth flow

D

E >

G

3

2 4 8 4 =

o K 1

traffic. 0 will experience high delay. There are many variants of

9 ‘

Q

9 6

  H G

3

= < <

0

J =

RIO [11] refines RED 0 with In/Out bits. The idea of WFQ, most of them can be compared with GPS (Gen-

>

9

3 3 3

2

0

4 = 4

RIO is to tag ; packets as being “In” or “Out” according to eralized Processor Sharing) [27], which is defined for

>

3 3

3 3

4 = 4 2 4 4

4 ; ;

their service ; profiles, and preferentially drop packets that a fluid model of traffic, and serves as a theoretic refer-

9 6



3

2

4 4 < =

are tagged as being “Out” if congestion occurs. RIO 5 uses ence model.

B B

•

3

= ; = ; 4 =

B

6 >

‡ C =

two sets of parameters, one for In packets, and one for Out 4

É

>

G

•

; = 8 4 ;

; Earliest Deadline First (EDF) is a form of dynamic

6

‡

; 4 4

packets. The probability of marking an In packet depends ;

B

•

3 3

= 4 2 T ;

1 0

 priority scheduling. Each packet is assigned a send-

6 > 6 >

3 3

= 4 4 4

1 on avg in, the average queue size for In packets, while the 0

>

Ã

; = 8 4 ; =

 ing deadline which is the sum of arrival time and de-

D

: F

‡

3

A <

probability of marking an Out packet depends on avg total, 0

ƒ

3 3

4 2 T 4 ; 1

 lay guarantee. Coupled with traffic shapers, EDF can

>

; 4 A

the average total queue size for all (both In and Out) pack- 1

2 ets. provide separate delay and rate guarantee.

Ê

— ™

‹ ˜

5.3 Scheduling 6 Control Path Mechanisms

>

> 6 6 ?

Ž H

3 3

< ;

0

< 4 A =

P4 acket delay control is an important goal of Internet QoS. In this section, we discuss the control path mechanisms in-

> E 9

Ž

3 3

4 ; ; < 4 < ; < 4

Packet delay has three parts: propagation, transmission, cluding admission control, policK y control, and bandwidth

9

> > 6 9 >

Ž

3

4 T A 2

and queuing delay. Propagation delay is gi1 ven by the dis- brokers.

@ÅÄ

:

3 3 3

4 = J

tance, the 8 medium and the speed of light, roughly 5 s/km.

> 9

3 3

; A 2 ;

The per-hop transmission delay is gi1 ven by the packet size

> 9 9 >

3 T

di1 vided by the link bandwidth. The queueing delay is 6.1 Admission Control

9

3 3 3

4 ; 4 T

0

>

3 4

the waiting time that a packet spends in a queue before <

> 9

> Admission control [23, 22] implements the decision algo-

3 3

>

3 3

4 = 4

0 0

it is transmitted. This delay is determined mainly by the rithm that a router or host 5 uses to determine whether a new

D

; 6 ?

K

3

< 4 4

scheduling policy. 0

: 6 6

> traffic stream can admitted without impacting QoS assur-

R

D

U

< 4

3

A 2 2 7 <

Besides delay control, link sharing is another important 4 :

9 ances granted earlier. As each traffic stream needs certain

G

9

A = 4 A = 4 <

= 7 J 4 J

goal of scheduling. The aggregate bandwidth of a link can 4

B >

9 amount of network resources (link bandwidth and router

B B B

9 > >

4 8 2 4 = A

3 3 be shared among multiple entities, such as different orga- 5

 buffer space) for transferring data from source to destina-

6

; =

3 3 3

4 < < 7 J

nizations, multiple protocols (TCP, UDP), or multiple ser- 5

:

U tion, admission control is used to control the network re-

3

J = 2

1 1

3 3

A < < 4 vices (FTP, telnet, real-time streams). An overloaded link 4

9 source allocation. The goal is to correctly compute the ad-

>

4 < 4 <

0 0

3

8 J A 4 4 should be shared in a controlled way, while an idle link can 5

9 mission region, since an algorithm that unnecessarily de-

9

4 ;

5 K

3 3

4 < 2 4 1

be used in any proportion. nies access to flo0 ws that could have been successfully ad-

>

; A 4 A

1

4 4

5 0

Although providing delay guarantee and rate guarantee, mitted 0 will underutilize network resource; while an algo-

B

9 €

3 V

6 6

3 3

4 < 7

J 4 8

0 0

are crucial for scheduling, scheduling needs to be kept sim- rithm that incorrectly admits too manK y flows will induce

6 9

3

?

; 7 ; 4 ; 4 4 J 1

ple since it needs to be performed at packet arrival rates. QoS 1 violations. ’

B

9

G

= 2 4 4 =

3

4 4 <

For example, at OC-48 rates, a scheduler only has 100 ns There 4 are three basic approaches for admission control:

>

3 D

>

G

; ; 8 4 8

per packet to make a scheduling decision. deterministic, statistic, 4 and measurement-based. The first

9 9

9

3 3

< ; = 4 ; = 4

0

4 ; 2 = 0

Scheduling can be performed on a per-flow basis or a two 5 use a priori estimation, while the later one is based

9

3 3

3

; < =

< 8 = < ;

per-traffic-class basis. A combination of these two results = on the current measurement of some criteria parameters.

>

4 4 4 =

1

4 4 < 0

in a hierarchical scheduling. There are variety of schedul- The deterministic approach 5 uses a worst-case calculation

>

I

> ?

4 4

0 K 1

ing disciplines [18, 31]. 0 which disallows any QoS violation. It is acceptable for

D V D B V

9 6 6 6 9

3

5 5 0

smooth traffic flo0 ws, but it is inefficient for bursty flows

3

4 4

0 5

F 6

3 2

Æ First Come First Serve (FCFS) is the simplest schedul- and leads to a lower resource utilization. Both statistical

4 8 4 4 4 ;

0

>

; = < 0

K and measurement-based approach allow a small probabil-

6 ? E

ing policy. It has no flow or class differentiation, no 3

= = 4 2 4 J

1 1

> A delay = or rate guarantee. ity of occasional QoS violation to achieve a high resource

5 utilization.

; 4 T 2 1

Ç Priority scheduling provides a separate queue for each

6 6

R

< 4 8

; priority class. Basically, it is a multiple-queue FCFS

> E

3

; T 0 6.2 Policy Control

scheduling discipline with the higher

D

9 E >

H

3 3

A = 4

4 < A < K

being serv2 ed first. It has a coarse granularity class dif- Policy [28] specifies the regulation of access to network re-

B B

6 E > 9

R Ž

7 = J A 4 = 4 2 <

ferentiation. But is has no delay or rate guarantee for sources and services based on administrati1 ve criteria. Poli-

< < 4 = 2

0 0 5 1 indi1 vidual flows. cies control which users, applications, or hosts should have

Ë 6

9

Ì R

Ë 4

Figure 6: PolicK y architecture Figure 7: Bandwidth broker

>

= 4 ; 2

K 0

3

4 J 4 4 <

5 0

access to 0 which resources and services and under what con- function of PDP and policy database, while edge routers

2 4

> >

= < 1

1 serve as PEPs.

6 6 9 9

ditions. Instead of configuring individual network devices, H

J 4 7 A

3

4 < 4 A

0 In its inter-domain role, a bandwidth broker negotiates 9

ISPs and corporate administrators would like to regulate >

4

0 5 0

3 3

; ;

0 1

the network through policK y infrastructure, which provide with its neighbor domains, sets up bilateral agreement with 3 3

2 = 4 4 < ;

9

3 3

4 4 2 1

0 each of them, and sends the appropriate configuration pa-

>

Ì

3

supports for allowing administrative intentions to be trans- 3

2

B D V

: 6 >

3 3

; =

0 rameters to the domain’s edge routers (Fig. 7). Bilateral

9 9

3 lated into differential packet treatment of traffic flows. 3

4 4 = <

Ë

> >

‡

3

4 ; 4

K agreement means that a bandwidth broke only needs to co- ?

Figure 6 depicts a typical policy architecture. Each do- >

= 4 ;

0

B

8 8 < = = 8 ; 2 0

K ordinate with its adjacent domains. End-to-end QoS is pro-

9 9 3

main may contain one or more policy servers whose func- 3

< = 4

1

>

3 3

; 4 <

K vided by the concatenation of these bilateral agreements >

tion is to make policy and configuration decisions for net- 3

4 4

0

E

G

3

2 ; 2 4 4 ;

K K

0 work elements. The policy server has access to a policy across domains, together with adequate intra-domain re-

4

>

3

= 4 4 4

0 source allocation.

> 9 9

database (possibly through LDAP or SQL) as well as au- Q

4 4 ;

>

3

4 4 ; 2

K Within a domain, a bandwidth broker performs resource 3

thorization and accounting databases. Each policy entry 3

4 4 < < =

E

3 3

J = < <

4 allocation through admission control. The choice of the

specifies a rule of “if certain condition happens, then take 3

4 =

< 4 = 4 4

certain action”. A human network operator 0 working at a intra-domain algorithm is independent of the inter-domain

A

‘

8 < 4 8 4 5

0 negotiation.

9 9 9

management console would use a GUI management appli- G

6 4 = 4

3 3 3

< ; 2 4 = K

0 The architecture of a bandwidth broker bears some sim-

6 6 R

cation which interfaces to the policy server through a set of H

3

< J 2

U U 0

Ž G

3 3

4 = 4

0 5

PolicK y API (PAPI). This allows the operator to update and ilarity to current Internet routing, in which BGP4 serves

3

4 ; <

K

6 >

3

8 ; < ; K

K as the standard inter-domain router protocol, many choices B

monitor policy changes in the policy database. 6

3

4 4 4 J 4 <

1

; 2 < = 4 < ; < K K are available for intra-domain routing, and the concatena-

The policy server consists of a central policy controller 3

= ;

>

4 4 = ; ; 4

K tion of AS-to-AS (Autonomous Systems) forwarding pro- >

(CPC) and a set of policy decision points (PDP). PDP’s are >

2 2

1 1

>

3

4 4 4

responsible for determining 0 which actions are applicable to vides end-to-end data delivery.

F 9

3

; 2 A < K

0 which packets. The CPC is to ensure global consistency be-

> 9

Ž G

3 3

8 2 4

O

Î tween decisions made by the PDP’s. The enforcement and Í

> 9

˜

2 2 = ; 4 4 ; 2 K

execution of policK y actions are done by policy enforcement 7 Routing and QoS

Ž

3

; 4 < ;

points (PEP). PEP’s are typically colocated 0 with packet-

B

9 6

Ž

?

 H

3 3

< 4 J

7 4 J 4 4 0

forward components, such as border routers. PDP’s inter- Up to no0 w, we address Internet routing and QoS as two

F ’

6 6

Ï

4

0 1 K

3 3

2 2 8 A

1 1

act with PEP’s via Common Open Policy Service (COPS) separate issues, Ho0 wever, there is evidence that merging

6 >

Ž

3 3

? 6 9

H

3

; <

0

J < J ;

[5]. PDP’s push configuration information down to the routing 0 with QoS can result in better performance. In this

3 3

9

3 3

4 4 T

0

2 4 < 2

1 0 1

PEP’s as well as respond to queries from the PEP’s. section, 0 we briefly review the efforts in this area, covering

I

3

< 4

traffic 2 engineering, constraint-based routing [36], and mul-

I

3 š š tiprotocol label switching (MPLS) [2].

6.3 Bandwidth Brokers

9 9

A bandwidth broker (BB) [26, 34] is 4 a logical resource 6

3 7.1 Traffic Engineering

2 4 J

8 management entity that allocates intra-domain resources

B

6 9 9 ? >

U U

3 3

4 4 4 ; 5

and arranges inter-domain agreements. A bandwidth bro- All QoS schemes try to pro1 vide differentiated services un-

> 9 > > 9

2 < < = A = 2 <

1 K

ker for each domain can be configured 0 with organizational der overload condition. They differ little from best-effort

B

6 : 6 :

H G

3 3 3 3

4 < = = 2 J 4 J 7

; policies. and controls the operations of edge routers. In the service if the load is light. There are two reasons for net-

9 9 >

3

= ; 4 = 2 = < 2

0 K 0 0 1 5 1 view of policy framework, a bandwidth broker includes the work overloading or congestion: usage demand exceeding

Ì 7

>

3

4 4 = 2 =

5 1 5

the a1 vailable network resource, or uneven distribution of

3 3 3

< < 2

traffic. In the first case, 0 we can either increase the network

9 ?

3

< =

capacity or limit 5 usage by QoS mechanisms. In the second

D

: > 9 E

G

< 4 8 J 2

case, load distrib5 ution and balancing may help. Traffic en-

D V

3 3

A 4 < <

gineering arranges traffic flo0 ws so that congestion caused

9 9

2 7 < 4 =

1 5 1 by 5 uneven network utilization can be avoided.

7.2 Constraint-based Routing

F 9 3

Current Internet routing is mainly based = on network topol-

3 3 3 3

?

= 2 ; 4

ogy. It tries to transfer each packet along the shortest 2

B F

> Figure 8: Server QoS

3 3 3

; path from the source to the destination. Constraint-based

9

3 3 3 2

routing is 4 an extension to the basic topology-based rout-

Ñ Ò O

6 9

H G

‹

; = 8 < ing. It J routes packets based on multiple constraints. The

6 8 End Host Support for QoS

3

7 ; 7

< constrains include network topology (shortest path), net-

6 :

? >

J 4 4 4 4

0 1 1

4 =

work resource availability information (mainly link avail- 0

V All QoS mechanisms discussed so far are operate within

9 ?

? 9

4 J 4 ; <

0 K

2 1

able bandwidth), flow QoS requirements, and policy con- routers. Ho0 wever, network QoS by itself is not sufficient

F E 9

3

> ? ?

J < ;

1

3

2 2

straints. Constraint-based routing can help to provide bet- to deli1 ver end-to-end QoS. End host support for QoS, in-

3

?

; 4 2

1 5

2 4 4 4 4 ;

ter performance and improve network utilization. But it is < cluding server QoS and application adaptation, also play

6

< < J

much more complex, may consume more network resource 4 an important role.

3 ; 4 and may lead to potential routing instability.

8.1 Server QoS

3

2 = 2 2 < 1

7.3 MPLS Empirical e1 vidence suggests that overloaded servers can

E 6

3

2 = ; 2 J

5 1

ha1 ve significant impact on user perceived response time.

B

?

U

Ð H Ð

> 9

3

= 4 4 2 2

1 1

2 <

MPLS offers an alternative to IP-level QOS. An MPLS Furthermore, FIFO scheduling done by servers can 5 un-

E E 6 9 :

> ? 9

3 3

; 4

4 2 1

packet has a header that is sandwiched between the link dermine anK y QoS improvements made by network since

: E : E

G Ð

9 6 > E

3

4 7

4 2 < ; 7

layer header and the network layer header. The MPLS a b5 usy server can indiscriminately drop high priority net-

E † :

?

3

< 4 4 < =

; 4 2

header contains a 20-bit label, a three-bit class of service 0 work packets. There is an increasing need for server QoS

3

3 3

4 4 4 2

8 ; = 2 ; 4 2 1

(COS) field, a three-bit label stack indicator, and an eight- mechanisms to pro1 vide overload protection and to enable

9

Q

B

>

3 3

3

2 4 ; 2 4

bit time to li1 ve (TTL) field. When a packet enters an MPLS tiered (or differentiated) service support.

>

?

3

3

4 4

0

A 2 4 2 2

domain, it is assigned an MPLS label which specifies the Figure 8 gi1 ves a simple scheme to enable server QoS

>

6 6

3 3 3 3

H

3 3

; ;

0

4 J 8

path the packet is to take while inside the MPLS domain. [3]. In this scheme, a request manager is 5 used to inter-

6 >

G Ð Ð

3 3

H

3 3

= 2

4 J < J 4 ;

Throughout the interior of the MPLS domain, each MPLS < cept all requests. It classifies the requests and places the

6 9

3 3 3

3 3

J ; =

T = 2 2

router switches the packet to the outgoing interface based requests in the 4 appropriate queue. To ensure that server is

3 3 3

9

= = ; A

= 2 4 < 5

only on its MPLS label. At the same time, the packet gets not o1 verloaded, admission control is used by request man-

: F

G

9

3 3

8 4 7 ;

0 0

< 4 4 < <

marked with a new label prior to transmission. The COS 4 ager. Request classification and admission control can be

9

3 3 3

3

< < T = =

5

= 4 4 = ; 4 ;

field is used to choose the correct service queue on the out- based on a 1 variety of policies. After the requests are put

>

>

3 3 3 3

3

A 2 A

4 T 4 ;

going interface. At the egress to the MPLS domain, the = on the appropriate queue, a scheduling process determines

3

9

3 3 3

2 4 ; =

1 0

= 4 2 4

MPLS header is removed and the packet is sent on its way the order in 0 which the requests are to be served, and feeds

3 3 3 3 3

5

J 2

using normal IP routing. the < chosen requests to the server. Similar to the scheduling

B

6 > 9

7 J ; < 4

MPLS is 4 a label-based message forwarding mechanism. in network routers, different policies can be adopted, such

>

: 6

R

4 ; T = 2

0

< 2 J 4

5 o 0

By 5 using labels, it can set up explicit routes within an as strict priority, weighted fair queuing, or earliest deadline

D

>

; <

MPLS domain. A ; packet’s forwarding path is completely first.

> 9

; < 4

determined by its MPLS label. If 4 a packet crosses all MPLS

> 9

4 2 2 ; < 2

o

Ó Ó

domains, an end-to-end explicit path can be established Ô

3

4 2 4 4 4 2

for the ; packet. Label also serves as a faster and efficient 8.2 Application Adaptation

B B

8 ; < 4

3 3 =

method for packet classification and forwarding. Instead of indicating requirements to the network 1 via re-

:

Ð

3

4 4 J 8 7 ;

4 8 4 < 4

MPLS also also to route multiple network layer proto- source J reservation mechanisms, applications can adapt

9

3

> :

< 4 < 4 4 2

0 5

3 3 3

J < ; 4 4 4

cols within the same network and can be used as an efficient their rate to the changing delays, packet loss and a1 vailable

3 3 3

9 6

2 3

tunneling mechanism to implement traffic engineering. bandwidth in the 7 network.

B

9 > >

Ž

3 3 3

= 2 8 ; < 4 4

0 0

For eo xample, the switching tables must be pushed down Playout delay compensation allow applications to func-

> >

3 3 3 3 3 3

4 < < 4 = 2 2 2 4

0 1 1

to the MPLS routers from a central controller, similar to a tion 0 with the lowest overall delay even as the network delay

B B

F 9 9 6

U

3 3

; 2 < T < < ; 4 T 4 ;

5 1

policK y server. Configuring these tables can be quite com- changes. A playout buffer is a queue for arriving packets

3 3

; ; 2 4 ; < 2 4 4

1 1 plex, 0 which leads to scalability problems. emptied at the playback rate. It converts a variable-delay

8

> 9 ’

S S

3

; 4 2 4 A 4 5

packet network into a fixed delay, and it has to be large [2] D. A0 wduche, J. Malcolm, J. Agogbua, M. O’Dell, and

>

S

3 3 3

< 2

2 enough to compensate for the delay jitter. J. McManus. Requirements for traffic engineering

F

: E 9

3

= 2

1

= 4 2 2 2

1 o

For loss adaptation, se1 veral techniques have been ex- over MPLS. Request for Comments (Informational)

†

H ‡ G

3

4 =

; 4 4

plored, such as redundant transmission, interlea1 ving, and 2702, Internet Engineering Task Force, September

B <

forward 2 error correction. 1999.

>

3

= = 4

Bandwidth 4 adaptation depends on the media. For audio, ” Q

4 2 2

3

4 < < 4 < 4 1 0 [3] Nina Bhatti and Rich Friedrich. Web server sup-

applications can change the audio codec, while video ap- B

• ×

3

B

6

;

3

< 4 J 4 T ; plications can adjust the frame rate, image size and quality. port for tiered services. IEEE Network, 13(5):64–71,

September/October 1999.

F

R C R Ð ‡ C Ø Q

4 1

Õ [4] S. Blake, D. Black, M. Carlson, E. Davies, Z. Wang,

B B

>

U

Q Q

2 4

9 Conclusions 4 and W. Weiss. An architecture for differentiated ser-

B

F † 

1 vice. Request for Comments (Informational) 2475,

Q

3 3

H ‡ G C

2 2 2 ; < = <

1 K =

We have surveyed the principal components of the current Internet Engineering T4 ask Force, December 1998.

B

? 6

H

4 J

Internet QoS 4 architecture. Scalability is a fundamental re-

B

? 6 6

H H

3

F

S R  C C Ï  

T 4 4

quirement for anK y Internet QoS scheme. It is an issue that [5] J. Boyle, R. Cohen, D. Durham, S. Herzog, R. Ra-

V

6 9 > 6

F

U

G

; 4 < ;

0

4 = ;

impacts both data path and control path, including flow jan, and A. Sastry. The COPS (common open policK y

>

F

4 T 8 7 < 4 1

and queue management, network device configuration, ac- service) ; protocol. Request for Comments (Proposed

9

< 4 4 8 4 ;

K =

counting and billing, authorization, monitoring, and policy Standard) 2748, Internet Engineering T4 ask Force,

3

S

A = <

2 enforcement. Aggregation is one common solution to scal- January 2000.

9

3

; < 4 ; = A

ing problems, b5 ut it comes at the price of looser guarantees

F F

S

4 < 4 < 1

and coarser monitoring and control. [6] B. Braden, D. Clark, J. Cro0 wcroft, B. Davie, S. Deer-

B B

>

R

‘

Ù S

= < ;

By separating of control policK y from data forwarding ing, D. Estrin, S. Floyd, V. Jacobson, G. Min-

F

< 2 4 = 2

0 1 1

mechanisms, we can have a set of relative stable mecha- shall, C. P4 artridge, L. Peterson, K. Ramakrishnan,

? 9 9

U

H

S Q

3 3

7 = = <

0 5 4

nisms on top of which Internet QoS can be built. At the S. Shenker, J. Wrocla0 wski, and L. Zhang. Recom-

3

< 2 4 = 4 4 < ;

0 K

= T 8 4 <

same time, we can easily adjust or add any control pol- 8 mendations on queue management and congestion

F

3

2 4 =

K 0 1 0

4 =

icy whenever needed with a simple re-configuration or re- a1 voidance in the internet. Request for Comments (In-

B

†

H ‡ G

3

;

K =

mapping from policy to mechanisms. All supporting mech- formational) 2309, Internet Engineering T4 ask Force,

9

U

4 <

anisms can be kept 5 unchanged. April 1998.

>

H

3

< 8 4 2

Since the Internet comprises multiple administrati1 ve do-

F

? ? 9 >  R C H

4 A <

mains, inter-domain QoS 4 and intra-domain QoS can be de- [7] R. Braden, D. Clark, and S. Shenker. Integrated ser-

6 6

9 

3

3

4 4 = 2

1 1 0

2 ;

signed separately. At the inter-domain le1 vel, pure bilateral vices in the internet architecture: an overview. Re-

B

F

H

9

Q

3

T

4 = 4 A 2

agreement based on traffic aggregate is 5 used. Within each quest for Comments (Informational) 1633, Internet

S

> > 9

4 =

4 = < < 4

domain, 1 variety of different choices can be adopted. The Engineering Task Force, June 1994.

B

> >

= ;

< concatenation of domain-to-domain data forwarding pro-

? >

 R ‡ ˆ Ø R Ï

2 2 4 1

1 vides end-to-end QoS delivery. [8] R. Braden, Ed., L. Zhang, S. Berson, S. Herzog, and

S

6 E 9

U

3 4 ; 8

Although important technical ; progress has been made, S. Jamin. Resource ReSerVation protocol (RSVP) –

F

9 > 9 ?

3

2

1 0

much 0 work needs to be done before QoS mechanisms will version 1 functional specification. Request for Com-

9 > 9

3

A ; 4 4

be 0 widely deployed. In general, pricing and billing are the ments (Proposed Standard) 2205, Internet Engineer-

6 9 ’

3 3

4 =

7 J 2 4

; primary issues that need to be resolved. Once services are ing Task Force, September 1997.

9 9

3 3 3

< 4

billed for, customers 0 will need to be able to monitor that

6

3

4 2

1 8

the ; purchased service is meeting specifications. [9] Lee Breslau and Scott Shenker. Best-effort ver-

9 9

Q

4 < 2 4

1

3

4 2 4 2

1 5

While adapti1 ve applications have been built to respond sus reservations: A simple comparative analysis.

Ú Û

3

; A 4

to < changes in network performance, integrating a mecha- ACM Computer Communication Review, 28(4):3–16,

3 3 3

4 ; < = 2 4 4 K

nism to adapt to price changes o1 ver time adds yet another September 1998.

> >

dimension. F C C G

3

; =

1

3 3

0 [10] David D. Clark. The design philosophy of the Ü

Incorporating wireless transmission into the Internet Ü

;

? 6 :

4 4 8

4 DARPA internet protocols. In SIGCOMM Sympo-

à Þ

adds additional QoS issues, such as mobile setup, limited â

9  Ý ß á  Ý

4 = 2

1 sium on Communications Architectures and Proto- F

bandwidth, and hand over. U ;

ß cols, pages 106–114, Stanford, California, August

F 6

U ã

1988. ACM. 4 also in Computer Communication Re-

U

Ú Û

Î view 18 (4), Aug. 1988.

ReferÖ ences

F

C C Q ‡

4 2 4 4

[11] Da1 vid D. Clark and Wenjia Fang. Explicit alloca-

9 >

3 3

= ; = ; 2 1

[1] P. Almquist. TK ype of service in the internet proto- tion of best-effort packet delivery service. IEEE/ACM

B Ë

F

U



×

< Ý

col suite. Request for Comments (Proposed Standard) Tr ansactions on Networking, 6(4):362–373, August

S = 1349, Internet Engineering T4 ask Force, July 1992. 1998.

ä 9

F

Q ”

4 4

[12] Da1 vid D. Clark, Scott Shenker, and Lixia Zhang. Sup- [23] Edward W. Knightly and Ness B. Shroff. Admission

4 4 A < T 4 ;

; porting real-time applications in an integrated ser- control for statistical qos: Theory and practice. IEEE

×

; 4 4

1 vices packet network: architecture and mechanism. Network, 13(2):20–29, March/April 1999.

Ü Ü Þ

H

Ý S

In SIGCOMM Symposium on Communications Ar- S

à

R

â

4

;

á Â Ý

ß [24] Martin May, Jean Bolot, Alain Jean-Marie, and >

chitectures and Protocols, pages 14–26, Baltimore, F

F

U U

; =

Ð Maryland, August 1992. ACM. Computer Commu- Christophe Diot. Simple performance models of dif-

3

† “

Ù ”

ã

Ý

=

Ú Û

å nication Review, Volume 22, Number 4. ferentiated services schemes for the internet. In Pro-

Ã

Ý á Ý

ß ceedings of the Conference on Computer Communi-

ë

”

F

C Ž  =

0

ß

4 4

[13] Constantinos Do1 vrolis and Parameswaran Ra- cations (IEEE Infocom), New York, March 1999.

>

< 2

1 ”

manathan. A case for relative differentiated services 4

B

>

•

3

; 8

4 [25] K. Nichols, S. Blake, F. Baker, and D. Black. Defi-

> 3

and the proportional differentiation model. IEEE =

× nition of the differentiated services field (DS field) in

B

E F

H H  3

Network, 13(5):26–34, September/October 1999. 4

the IPv4 and IPv6 headers. Request for Comments

†

H ‡ G

4

F 4

1 (Proposed Standard) 2474, Internet Engineering Task

C

[14] Constantinos Dovrolis, Dimitrios Stiliadis, and =

B

>

Ž  Ž

P4 arameswaran Ramanathan. Proportional differen- Force, December 1998.

>

3

4 ;

>

” Ù S 3

tiated services: Delay differentiation and packet 4 Û

Ú [26] K. Nichols, V. Jacobson, and L. Zhang. A two-bit dif- 3

scheduling. ACM Computer Communication Review, 4 ’

† ferentiated services architecture for the internet. Re-

B

F † H

29(4):109–120, October 1999. T quest for Comments (Informational) 2638, Internet

‡ G S

4 =

‘

Ü

A 4

Ý Engineering Task Force, July 1999.

[15] P. Ferguson and G. Huston. Quality of Service: Deliv-

×

à Ã

Ü

á Â Â

4 Ý

ering QoS in the Internet and the Corporate Network. Â

6 F

R ” æ ”

Q [27] Abhay Parekh. A Generalized Processor Sharing Ap-

= à

K 0 Ü

ì • ×

Ã

Ý Ý í Â

Wiley Computer Books, New York, NY, 1998. ê proach to Flow Control in Integrated Services Net-

3

4

Û

> S

Ù works. PhD thesis, Laboratory for Information and

4 4 2 C Ð H G 2

[16] Sally Floyd and Van Jacobson. Random early detec- Decision Systems, Massachusetts Institute = of Tech-

3

F

A < 4 = Ð

0 1

tion gateways for congestion avoidance. IEEE/ACM 7 U

× nology, Cambridge, Mass., February 1992. Ý

Tr ansactions on Networking, 1(4):397–413, August Ù

1993. [28] Raju Rajan, Dinesh V2 erma, Sanjay Kamat, Eyal Fel-

B B

U

Ï

4 ; 0

staine, and Shai Herzog. A policK y framework for

B

F 6 > 6 6

H ç

3

4 2 2 A 4

[17] Ian F= oster and C. Kesselman, editors. The Grid: integrated and differentiated services in the inter-

é

Ð

è × • • ×

7

Û Â á

Blueprint for  a New Computing Infrastructure. Mor- net. IEEE Network, 13(5):36–41, September/October

F

ç Ž

A gan Kaufmann Publishers, San Francisco, California, 1999.

F ‘ 

1998. Ž 4

[29] S. Shenker, C. P4 artridge, and R. Guerin. Specification

B

F



‘ ? 6 = A T =

 Ù Ž ;

4 of guaranteed quality of service. Request for Com-

† ‡

[18] R. Guerin and V. Peris. Quality-of-service in packet H

> 8

R

8 4

7 ments (Proposed Standard) 2212, Internet Engineer-

6

networks: Basic mechanisms and directions. Com- G

× 4 =

ê puter Networks, 31(3):169–189, February 1999. ing Task Force, September 1997.

‘

S Q

4 <

0

S Ï R Q Q S Q

2 4

0 [30] S. Shenker and J. Wroclawski. General characteri-

B

6

; A 7 2

[19] J. Heinanen, F. Baker, W. Weiss, and J. Wroclawski. Ÿ F

A zation parameters for integrated service network ele-

B

F 

Assured forwarding PHB group. Request for Com- 8

ments. Request for Comments (Proposed Standard) =

ments (Proposed Standard) 2597, Internet Engineer- 4

S = ing T4 ask Force, June 1999. 2215, Internet Engineering Task Force, September

1997.

Ù S ”

4 2 F

[20] V. Jacobson, K. Nichols, and K. Poduri. An ex- 4 F

; [31] Ion Stoica, Scott Shenker, and Hui Zhang. Core-

B B

U

T 4 pedited forwarding PHB. Request for Comments 1

4 stateless fair queueing: Achieving approximately fair

9 6 E

Þ 7

(Proposed Standard) 2598, Internet Engineering Task 4

S

= bandwidth allocations in high speed networks. ACM Û

Force, June 1999. Computer Communication ReÚ view, 28(4):118–130,

F

Ù S

4 4 = 4 < 1 September 1998.

[21] Van Jacobson. Congestion avoidance and control.

Þ

ã

H Ï Ø Ž

Ú Û

4 A

ACM Computer Communication Review, 18(4):314– 1 U

Ž [32] Ion Stoica and Hui Zhang. Providing guaranteed ser-

3

V

=

Þ

; 8

0 0

329, August 1988. Proceedings of the Sigcomm ’88 1

6 F

U vice without per flow management. ACM Computer

† ’

ã Û

Symposium in Stanford, CA, August, 1988. Communication ReÚ view, 29(4):81–94, October 1999.

S Ž R C S R G Ï ˆ C  2

[22] Sugih Jamin, Peter B. Danzig, Scott J. Shenker, 4 and [33] Benjamin Teitelbaum, Susan Hares, Larry Dunn, Ro-

9 6

U

ˆ Ø ”  Ù ”

4 < 4

Lixia Zhang. A 8 measurement-based admission con- betr Neilson, Raytheon Vishy Narayan, and Francis

3 3

4 A ; T 4

trol algorithm for integrated services packet networks. ReichmeK yer. Internet2 qbone: Building a testbed for

@ B

>

• × • × Ý IEEE/ACM Tr ansactions on Networking, 5(1):56–70, differentiated services. IEEE Network, 13(5):8–16, February 1997. September/October 1999.

10

’

Q S

3

2 4 4

[34] A. Terzis, L. Wang, J. Oga0 wa, and L. Zhang. A two- 3

3 tier resource management model for the internet. In Ý

PrÝ oceedings of Global Internet, December 1999.

S Q

3

= <

[35] J. Wrocla0 wski. Specification of the controlled-load

B

F

 2

7 network element service. Request for Comments

†

H ‡ G (Proposed Standard) 2211, Internet Engineering T4 ask

F= orce, September 1997.

” T

[36] Xipeng Xiao 4 and Lionel M. Ni. Internet qos: A

9 × big ; picture. IEEE Network, 13(2):8–18, March/April 1999.

11