Internet DRAFT - draft-borgonovo-qos-ds

draft-borgonovo-qos-ds



Internet  Engineering Task  Force                     Flaminio Borgonovo
INTERNET-DRAFT                                            Antonio Capone
Expires: February 1999                                      Luigi Fratta
                                                          Mario Marchese
                                                         Chiara Petrioli                              
                                                  Politecnico  di Milano       
                                                            29 July 1998  



   End-to-end QoS provisioning mechanism for Differentiated Services
                   <draft-borgonovo-qos-ds-00.txt>


Status of this Memo

   This  document  is  an Internet-Draft.  Internet-Drafts  are  working   
   documents  of the Internet Engineering Task Force (IETF), its  areas,   
   and  its working groups. Note that other groups may  also  distribute   
   working  documents  as  Internet-Drafts.  Internet-Drafts  are  draft 
   documents  valid  for  a maximum of six months and  may  be  updated, 
   replaced,  or  obsoleted  by  other documents  at  any  time.  It  is 
   inappropriate to use Internet-Drafts as reference material or to cite 
   them other than as ``work in progress.''

   To  view the entire list of current Internet-Draft, please check  the 
   ``1id-abstracts.txt'' listing contained in the Internet-Drafts Shadow 
   Directories   on  ftp.is.co.za  (Africa),   ftp.nordu.net   (Northern 
   Europe),  ftp.nis.garr.it (Southern Europe),  munnari.oz.au  (Pacific 
   Rim), ftp.ietf.org (US East Coast), or ftp.isi.edu (US West Coast).


Abstract

   This document presents an end-to-end mechanism to guarantee bandwidth 
   and delay into the Differentiated Services mechanism to constant rate 
   traffic  such  as  voice and video. The  mechanism  requires  network 
   routers  to  be able to serve packets according to three  classes  of 
   priority.  The needed call admission control is performed by an  end-
   to-end  signaling  procedure that implicitly looks for  the  required 
   bandwidth and seizes it, if available. Short delays are guaranteed by 
   the  regular  structure of constant rate traffic. No  entities  other 
   than  source  and destination are involved  and  multicast  operation 
   comes  at no further cost, which makes the mechanism  fully  scalable 
   and integrable into the existing Internet. 


1. Introduction

   The transport mechanism capable of guaranteeing demanding Quality  of 
   Service  (QoS)  requirements  is under  discussion  in  the  INTERNET 
   community.  The  Differentiated  Services  architecture  [1]  is  the 
   approach  that has recently gained more credit. The goal is to  offer 
   an  alternative to carry voice, video and multimedia with respect  to 
   classic Telephone/ISDN and ATM networks. The basic problem is how  to 
   guarantee  bandwidth,  delay and packet dropping  probability,  in  a 

Borgonovo                       Expires:02/99                   [Page 1]                    
                                                                       
INTERNET-DRAFT       <draft_borgonovo_qos_ds_00.txt>        29 July 1998


   datagram  network  architecture where the only service  is  the  Best 
   Effort packet transmission. 

   In  this  contribution  we  consider  only  approaches  that  can  be 
   completely  implemented at the IP level and do not assume  any  lower 
   level QoS guarantee capability. In this context, an existing approach 
   is represented by RSVP (Resource reSerVation Protocol) [2][3]. 

   RSVP  is a signaling mechanism among routers and hosts that  includes 
   support to ``flows'' of packets with different QoS and the ability to 
   dedicate end-to-end capacity to real-time traffic by means of hop-by-
   hop  resource  reservation  protocols.  In  practice,  this  solution 
   changes  the  entire network architecture by relying on  the  virtual 
   circuit  connection mechanism, the paradigm of the  telephony  world, 
   today  extended  to the B-ISDN. During the set-up  phase,  needed  to 
   install a virtual circuit, the network nodes cooperate, using complex 
   protocols,  to  determine a path within the network  and  to  reserve 
   network  resources such as bandwidth and buffers. The  implementation 
   of  such  a  signaling  and its related  features  over  the  layered 
   structure  of a pure datagram network will require large  investments 
   because  of  the  heavy software and  hardware  modifications  to  be 
   introduced in the already worldwide installed networks. 

   A  much  simpler  alternative is represented  by  the  Differentiated 
   Services approach. The basic idea is to use the IPv4  header TOS bits 
   or  the  IPv6 Traffic Class  octet, the "DS  byte" to  designate  the 
   "per-hop  behaviors"  that  packets are  to  receive.  By   carefully 
   aggregating a multitude of QoS-enabled flows into a reasonable number 
   of  differentiated  services offered by the network it is  no  longer 
   necessary  to recognize and store information about  each  individual 
   flow  in the core routers. Though some signaling mechanism is  needed 
   to  manage  the service assignment to individual flows,  the  network 
   mechanism  still  remains purely datagram and scales  well.  However, 
   since the control on packets is performed hop-by-hop, it is not  easy 
   to design a suitable call acceptance policy that is able to guarantee 
   end-to-end QoS.

   As  the result of our research work in this field we have gained  the 
   belief  that if one only wants to enforce QoS control over  constant-
   rate or almost-constant-rate streams, simple procedures based on non-
   preemptive  priority  mechanisms  and  simple  end-to-end   signaling 
   procedures are effective. One such procedure has been investigated in 
   the  framework of deflection networks, i.e., data networks with  very 
   small or no queuing at nodes [4].

   The  Bandwidth Guaranteed Service (BGS) mechanism, presented in  this  
   document,  guarantees  constant  rate  traffic  bandwidth  and  delay 
   requirements in datagram networks such as the Internet. BGS is  based 
   on three priority levels. It integrates and completes the DS approach 
   and  allows  a  QoS  control as  in  RSVP,  without  adding  explicit 
   signaling  protocols. No entities other than source  and  destination 
   are involved and multicast operation is obtained at no further  cost,  
Borgonovo                       Expires:02/99                   [Page 2]                    
                                                                       
INTERNET-DRAFT       <draft_borgonovo_qos_ds_00.txt>        29 July 1998


   which makes the mechanism fully scalable.

   The   document is organized as follows. In Section 2 we present  BGS, 
   its  call  setup  and call acceptance  procedures,  while  Section  3 
   illustrates  its  behavior  by  means  of  some  preliminary  results 
   obtained by simulation. 

2. The BGS mechanism

   In  the  following we assume connections with  constant  rate  packet 
   traffic.  The jitter introduced by the network is eliminated  at  the 
   destination user by storing the packets in a play-out buffer which is 
   emptied at the constant nominal rate, starting with a delay D_b after 
   the  reception  of  the first packet of  the  connection.  With  this 
   technique the total delivery delay experienced by packets is constant 
   and equal to 

   W = D_b+d_1                                                       (1)

   where  d_1  is the network delay suffered by the first packet.  If  a 
   packet  is  delayed  more  than W, it is  useless  and  is   dropped. 
   Therefore the QoS guaranteed traffic requires, besides the  bandwidth 
   B,  also  a  maximum packet delay W  and  a  maximum  packet-dropping 
   percentage gamma. 

   The BGS mechanism requires that each packet in the network belongs to 
   one of the three following priority classes. 

   Class  0:  (lowest  priority)  if the  packet  requests  best  effort 
   service;

   Class  1:  (intermediate priority) if the packet is a  scout  packet, 
   used in the set-up procedure as defined below;

   Class  2: (highest priority) if the packet belongs to a constant  ate 
   flow that has been granted guaranteed service.

   The  priority information is carried in the TOS field and is used  by 
   the routers to serve all packets according to a non-preemptive  head-
   of-the-line  priority  scheme. Class 1 and 2 packets  have  the  same 
   constant length. 

   The set-up procedure operates end-to-end and is activated when a  new 
   connection, characterized by the bandwidth B and the maximum  allowed 
   transfer delay W, is requested. 

   Upon   reception  of a connection request C_j  addressed  to  NODE_B, 
   NODE_A immediately starts transmitting scout packets at the rate  r_j 
   corresponding to the requested bandwidth.

   The  scout  packets do not carry data traffic in the  payload,  since 
   they are used to perform "bandwidth scouting and seizing" within  the  
Borgonovo                       Expires:02/99                   [Page 3]                    
                                                                       
INTERNET-DRAFT       <draft_borgonovo_qos_ds_00.txt>        29 July 1998


   network.  To  this purpose they only include  set-up  information  to 
   signal  to the receiving NODE_B the request for an incoming call  and 
   the related service quality parameters.

   Upon  receiving  the  first scout packet,  NODE_B  starts  performing 
   bandwidth  measures  and  delay evaluations  to  verify  whether  QoS 
   requirements are met. If the outcome is positive NODE_B sends a  call 
   acceptance  packet  to  NODE_A.  Otherwise,  either  it  rejects  the 
   connection or starts a bandwidth negotiation procedure with NODE_A. 

   As far as NODE_A is concerned, it keeps on transmitting scout packets 
   until either a time-out occurs or a response from NODE_B is received. 
   If  the  time  out expires or the response is negative  the  call  is 
   aborted, meaning that the bandwidth has not been found. If a positive 
   response  is  received, the connection set-up phase ends  and  NODE_A 
   replaces   scout  packets  with  data  packets.  The   bandwidth   is 
   automatically released when packets transmission ends. 

   The  priority scheme adopted guarantees that new connections can  not 
   steal  bandwidth  to  already  established ones.  In  fact,  if  some 
   constant bandwidth connections have already been admitted, as soon as 
   new connections attempt to steal bandwidth on a link, old connections 
   are  delayed, a queue builds up and the priority mechanism  cuts  out 
   the newly arrived scout packets. 


2.1 Call acceptance procedure 

   The   call  acceptance  procedure  is  directly  performed   by   the 
   destination  node  and  is very simple:  a  new  guaranteed-bandwidth 
   connection is accepted only if the connection parameters measured  on 
   the N scout packets satisfy the QoS constraints.

   First, a test of significance on the Hypothesis H0 that the bandwidth 
   requirement  is satisfied is performed on the sample X_1,  X_2,  ..., 
   X_(N-1),  where X_i is the interarrival time between scout  packet  i 
   and  i+1.  Under the hypothesis H0 we have E[X]=T,  being  $1/T$  the 
   packet  constant rate of each flow. So, the test can be exploited  on 
   the sample average 

   M_X = (X_1+X_2+...+X_(N-1))/(N-1)                                 (2)

   which  is  assumed  to be normally distributed  with  average  T  and 
   variance

   S2_x =[(X_1-T)*(X_1-T)+...+(X_(N-1)-T)*(X_(N-1)-T)]/(N-1)         (3)

   So,  for a given confidence level alpha, a threshold  T_alpha  exists 
   such  that  if  M_X < T_alpha the hypothesis  H_0  is  accepted.  The 
   threshold value can be obtained as 

   T_alpha = T + xi_alpha * sqrt(S2_x/(N-1))                         (4)
Borgonovo                       Expires:02/99                   [Page 4]                    
                                                                       
INTERNET-DRAFT       <draft_borgonovo_qos_ds_00.txt>        29 July 1998


   where  xi_alpha is the standard normal deviate that is exceeded  with 
   probability 1 - alpha. The difference

   Delta B = 1/T - 1/T_alfa                                          (5)   

   represents the resolution power of the measure. 

   The   precision  of  the  estimate  increases  with  the  number   of 
   statistically independent samples. In a network that carries periodic 
   packet streams, delay samples can be considered independent if  taken 
   at  a  distance  larger than the transmission  period  T_max  of  the 
   connection  with  the lowest admissible bandwidth. Thus,  the  set-up 
   period  is determined in time rather than by the number of  signaling 
   packets. By doing this we guarantee that the measure captures all the 
   existing  traffics, including the slowest.

   For example, if we assume that the lowest bandwidth corresponds to 32 
   Kb/s  with 640 bit packets, the packet transmission time is 20 ms  so 
   that  a  measure  period  of  1-2 seconds  is  needed  to  collect  a 
   reasonable number (50-100) of samples. 

   The  measure indicated above may be critical since, due to the  error 
   (5), the connection could be accepted even if the required  bandwidth 
   slightly  exceeds the available one. In this case, more traffic  than 
   the  capacity  is accepted and all connections would be  affected.  A 
   simple  way  to avoid this unwanted phenomenon is to scout  for  more 
   bandwidth  than  needed  in  the set-up phase, and  to  turn  to  the 
   required bandwidth once the call is accepted. With this  modification 
   links  can not be used up to their capacity, but the unused  fraction 
   can be kept very small.

2.2 The delay issue

   Since  packets  are dropped when their delay  overcame  the  required 
   threshold,  it is important, for the effectiveness of the scheme,  to 
   derive some conservative peak delay estimate to be used at the set up 
   phase.  To  this purpose we use an nD/D/1 queuing model where  the  n 
   sources  generate service requests at a constant  inter-arrival  time 
   equal to T [5][6]. 

   To  obtain a conservative estimate under any network load  condition, 
   we  evaluate the delay suffered when the utilization factor is  close 
   to one.

   Using   the approach in [5], we have considered three cases in  which 
   the  channel capacity is M = 25,50,100 connections of the same  rate. 
   The  average waiting plus transmission delay suffered by the  packets 
   of a connection when all connections are active is shown in Table  I. 
   The  delays  are  expressed  in  transmission  time  units  (m),   in 
   interarrival time units (m'), in milliseconds (m'') assuming T=30  ms 
   (which can model 32 Kb/s voice channels and 1000 bit packets), and in 
   milliseconds (m''') assuming T=1 ms (which can model 1 Mb/s  channels 
Borgonovo                       Expires:02/99                   [Page 5]                    
                                                                       
INTERNET-DRAFT       <draft_borgonovo_qos_ds_00.txt>        29 July 1998


   and 1000 bit packets). 


                            Table I.
   ---------------------------------------------------------
   |  M  |  m(D)  |  s(D)  |  m'(T)  |  m"(ms)  |  m"'(ms) |
   |     |        |        |         |(T=30 ms) | (T=1 ms) |
   ------------------------------------------------------- -
   |  25 |  3.51  |  1.52  |  0.140  |   4.21   |  0.140   |
   |  50 |  4.88  |  2.09  | 0.0977  |   2.93   | 0.0977   |
   | 100 |  6.85  |  2.79  | 0.0685  |   2.05   | 0.0685   |
   ------------------------------------------------------- -

   Column  two  shows  that, for any  link  bandwidth,  absolute  delays 
   decrease  when  the size of connections increases. For  the  case  in 
   which  sources  have  different, though constant,  rates  no  general 
   solution  exists. However, it is expected that the replacing of  some 
   lower  rate connections with an equivalent high rate connection  will 
   not  impair  performance since the high rate connection  generates  a 
   more  regular arrival pattern than the slower  connections  replaced. 
   This conjecture is substantiated by our simulation results, therefore 
   we  assume  that  in  an  environment  with  mixed  rate  sources   a 
   conservative delay bound is attained by assuming that all connections 
   are of the smallest allowed rate. 

   Column  four shows that if delay is measured in  interarrival  times, 
   the  delay  decreases as the number of  connections  increases.  This 
   means  that if a lower bound to the capacity of the path is used  for 
   delay evaluations, an upper bound is guaranteed.

   Finally,  a conservative estimate on the connection end-to-end  delay 
   can be attained by assuming that delays add hop-by-hop as independent 
   random  variables.  Also  this assumption  is   conservative  as  the 
   pipeline  effect along the connection path reduces the queuing  delay 
   at  nodes other than the first. Thus, the peak delay evaluation of  a 
   connection with k hops can be attained assuming a normal distribution 
   for the total delay. 

   Table  II  shows three examples of peak delay evaluations  using  the 
   values in Table I. The first two are based on a minimum allowed  rate 
   of  33  packet/sec  (e.g.  voice  channels at  32  kb/s  with  30  ms 
   interarrival  time),  and  assuming that at least either  100  or  25 
   connections can be accommodated along an 8 hop path. 

   The  third  is based on a minimum allowed rate of 1 Mb/s  with  1  ms 
   interarrival  time,  representing the case for voice  trunk  channels 
   within  a provider domain, and assuming that at least 25  connections 
   can be accommodated along an 8 hop path. 

   The  results  shown refer only to class 2 traffic.  Class  1  traffic 
   (scout  packets) has very little influence on the delay since it  can 
   delay  class 2 packets for at most one transmission time, because  of 
Borgonovo                       Expires:02/99                   [Page 6]                    
                                                                       
INTERNET-DRAFT       <draft_borgonovo_qos_ds_00.txt>        29 July 1998


   the  non-preemptive priority. Class 0 packets may alter the  analysis 
   shown  if  they  are  allowed a size  considerably  larger  than  the 
   constant rate packets.

                              Table II.
   - --------------------------------------------------------------
   |   rate  | mean delay | Standard deviation | 0.999 percentile |
   | capacity|    (ms)    |       (ms)         |       (ms)       |
   - --------------------------------------------------------------
   | 32 kb/s |            |                    |                  |   
   |  (100)  |    16.4    |        1.58        |        21.2      |   
   | 32 kb/s |            |                    |                  |   
   |  (25)   |    33.7    |        5.17        |        49.3      |   
   |  1 Mb/s |            |                    |                  |
   |  (25)   |    1.12    |        0.172       |        1.64      |
   ----------------------------------------------------------------

   The set-up procedure uses the values indicated in Table I to evaluate 
   the 0.999 percentile, which depends on the number of hops  traversed, 
   and to determine whether the delay QoS is met. 

   Note,  however, that due to the strong correlation among  packets  of 
   the same connection, the fraction 0.001 does not represent the packet 
   dropping  probability suffered by any connection, but  it  represents 
   the fraction of connections that suffer loss of packets.

3. Measures 

   Preliminary simulation results have been obtained by simulating an  8 
   node network, interconnected by a unidirectional and homogeneous ring 
   structure.  Equal  rate  traffic  is  generated  at  any  nodes,  and 
   destination nodes are chosen either 1 or 8 hops apart in the ratio 12 
   to  1,  so that at any node a consistent fraction of  traffic  (about 
   60%) is renewed. With this structure the complexity of the simulation 
   environment is kept low while observing sufficiently long paths  with 
   limited pipeline effect, a most critical condition.


                            Table III.
   -------------------------------------------------------------------  
   | connection |pck.dropping|     delay thresholds (ms)    | average| 
   |   rate     |   classes  |                              | delay  |
   |    1 Mb/s  |            | 1 |  1.1|  1.2|  1.3| 1.4|1.5|  1.11  |
   |   32 Kb/s  |            |30 |  33 |  36 |  39 | 42 | 45|  33.3  |
   | -----------------------------------------------------------------
   |            | 0 - 0.001  | 0 |0.084|0.167|0.417|0.75| 1 |        |
   |            |0.001-0.01  | 0 |   0 |   0 |   0 |  0 | 0 |        |
   |            |0.01 - 0.1  | 0 |   0 |   0 |   0 |  0 | 0 |        |
   |            |  0.1 - 1   | 1 |0.916|0.833|0.583|0.25| 0 |        |
   -----------------------------------------------------------------


Borgonovo                       Expires:02/99                   [Page 7]                    
                                                                       
INTERNET-DRAFT       <draft_borgonovo_qos_ds_00.txt>        29 July 1998


   In  our simulations the network has been loaded one connection  at  a 
   time,  until saturation is reached, using the call  set-up  mechanism 
   described in the previous sections. In Table III we report, for a few 
   delay   thresholds,  the  percentage  of  8  hop   connections   that 
   experienced a packet dropping probability (i.e. a delay greater  than 
   the  threshold) within the class indicated in the first  column.  The 
   average  delay  is reported in the last column. The capacity  of  the 
   links is assumed 25 times the bandwidth required by each connection. 

   The bimodal behavior of the distribution in Table III confirms that a 
   connection  is either good or bad. Furthermore, the  delay  threshold 
   with no packet dropping is within the bound given in Table II.



4. References

   [1]  K.  Nichols, V. Jacobson, L. Zhang, ``A  Two-bit  Differentiated 
   Services  Architecture for the Internet'', IETF Internet Draft,  Nov, 
   1997.

   [2]  R. Braden, L. Zhang, S. Berson, S. Herzog, S. Jamin,  ``Resource 
   ReSerVation Protocol (RSVP)-Version 1 Functional  Specification''IETF 
   Request For Comments 2205, Sep. 1997.

   [3]  P.P  White, ``RSVP and Integrated Services in  the  Internet:  A 
   Tutorial'',  IEEE  Communication  Magazine,  vol.  35,  no.  5,   May 
   1997,pag. 100.

   [4] F. Borgonovo and L. Fratta, `` Deflection Networks: Architectures 
   for Metropolitan and Wide Area Networks'', Computer Networks and ISDN 
   Systems, Vol. 24, No. 2, April 1992, pp.171-183. 

   [5]  A.  E. Eckberg, "The single server queue with  periodic  arrival 
   process  and deterministic service time", IEEE Trans. on Comm.,  Vol. 
   COM-27, pp. 556-562, 1979.

   [6]  G. Ramamurthy, B. Sengupta, "Delay analysis of the packet  voice 
   multiplexer  by the SD_i/D/1 queue", IEEE Trans. on Comm., Vol.  COM-
   39, no. 7, July 1991.












Borgonovo                       Expires:02/99                   [Page 8]                    
                                                                       
INTERNET-DRAFT       <draft_borgonovo_qos_ds_00.txt>        29 July 1998

5. Authors' Addresses

   Flaminio Borgonovo
   Dipartimento di Elettronica e Informazione
   Politecnico di Milano
   P.zza L. da Vinci 32,
   20133 MILANO, Italy
   Email: borgonov@elet.polimi.it
   Fax: +39 02 2399 3413
   http://www.elet.polimi.it/people/borgonov/

   Luigi Fratta
   Dipartimento di Elettronica e Informazione
   Politecnico di Milano
   P.zza L. da Vinci 32,
   20133 MILANO, Italy
   Email: fratta@elet.polimi.it
   Fax: +39 02 2399 3413
   http://www.elet.polimi.it/people/fratta/

   Antonio Capone 
   Dipartimento di Elettronica e Informazione
   Politecnico di Milano
   P.zza L. da Vinci 32,
   20133 MILANO, Italy
   Email: capone@elet.polimi.it
   Fax: +39 02 2399 3413
   http://www.elet.polimi.it/people/capone/
   
   Mario Marchese
   Dipartimento di Elettronica e Informazione
   Politecnico di Milano
   P.zza L. da Vinci 32,
   20133 MILANO, Italy
   Email: mmarches@elet.polimi.it
   Fax: +39 02 2399 3413

   Chiara Petrioli
   Dipartimento di Elettronica e Informazione
   Politecnico di Milano
   P.zza L. da Vinci 32,
   20133 MILANO, Italy
   Email: chiara@cerbero.elet.polimi.it
   Fax: +39 02 2399 3413