Subject: Re: C,D values for guaranteed service

From: Roch Guerin <[email-masked]>
Date: Thu, 07 Jan 1999 06:41:59 -0500

(changed the cc: to Int-Serv from RSVP as this is the more appropriate
list).

Mukul Chawla wrote:
 
> I am looking for some examples of what parameters a network element ( say,
> a router ) would adverstise in the C and D values of an ADSPEC, any leads
> ? This is with reference to the guaranteed service class. 

There is mention of at least one example, WFQ, that is weaved in the
text of the RFC.

- on p. 16 
   For weighted fair queueing in a datagram environment, D is set to the
   link MTU divided by the link bandwidth, to account for the
   possibility that a packet arrives just as a maximum-sized packet
   begins to be transmitted, and that the arriving packet should have
   departed before the maximum-sized packet.

- on p. 17 
   So, for instance, for datagramized weighted fair queueing, C
   s set to M to account for packetization effects."

For other examples, you'll have to go and look at individual scheduling
algorithms to see how they deviate from a perfect fluid flow model.

> Also, does the
> guaranteed service require lossless delivery ?? 

It says so in the draft right at the beginning, i.e., "End-to-End
Behavior" on p. 3.

> If so, then I couldnt use
> a leaky bucket, I would have to use a token bucket, right ??

Not sure I understand the question.  the lossless behavior is a property
of the network elements *given* that the traffic sent by the source
conforms to the trafic envelope specified in the TSpec (see p. 10). 
Clearly, if you pick the wrong TSpec you will loose data through
policing at the source, but that is beyond the service specification.

> Also, if I am a network element that performs reshaping, will I modify
> the C_sum value ?? 

Yup.  It resets it to 0.  That is why you have the two terms Ctot and
Csum.  This is spelled out on pp. 8-9.

> And if I am a network element that does no buffering
> and no reshaping, what would I do to the C_sum and C_total values ??

If you do no buffering then you probably don't support GS.  If you don't
do any reshaping, then just increase Csum and Ctot by your local C
parameter.

All this is explained in the RFC.  I would suggest you give it another
careful read.

Roch

---

From: Mukul Chawla <[email-masked]>
Date: Mon, 25 Jan 1999 10:36:55 -0500 (EST)

In the GS spec ( RFC 2212 ); it is stated that a "flow's level of service
is characterized at each network element by bandwidth R and buffer size
B". My question is : What is the p_r ( peak rate in the TSpec ) used for
?? It appears (r,b) completely specifies a token bucket, while R provides
the flows allocated bandwidth; where is p_r used then ??

Any pointer's are welcome, we are in the process of implementing some
network elements that use RSVP.

Thanks,
Mukul

---

From: Roch Guerin <[email-masked]>
Date: Mon, 25 Jan 1999 14:14:51 -0500

Mukul,

As stated in the RFC the peak rate is part of the TSpec definition which
is used for conformance checking (see p. 10).
In addition, the peak rate allows you to compute tighter end-to-end
delay bounds and buffer requirements at network elements, e.g., see p. 3
of the RFC and p. 16 (in the section on guideline to implementors).

Roch

---

From: welkin <[email-masked]>
Date: Wed, 27 Jan 1999 15:49:05 +0900

hi!
we want to test RSVP's reservation state
but we meet some problem
we have 2 linux-box with multi-homed router

eth0:165.246.10.1
eth1:165.246.20.1
eth2:165.246.30.1
eth3:165.246.40.1
                             RT
                +---------------------------+
                +eth0  eth1  eth2  eth3         +
                +---------------------------+
                    |
                    |
    +--------------------+        rt1
    +            eth0            +
    +                               +
    +                               +       eth0:165.246.10.2
    +            eth1            +        eth1:165.246.50.1
     +--------------------+
                    |
                    |
      +--------------------+

we want to test reservation-state  from rt1 to RT
RT is sender,rt1 is receiver

RT>rsvpd -D -d 15 -l 7
.....................
.......
T1>dest udp 165.246.10.2/10000
T1: rapi_session => sid= 1, fd= 34
T1>sender 100001 [t 1280 256 1280 64 128]
rapi_sender() OK
T1> 03:34:42.051|  API Reg  *S        165.246.10.2/10000[17]    <API
pid=4219 As
id=1
   Register sender: super.inha.net/10001  T=[1.28K(256) 1.28KB/s 64 128]
03:34:42.057|  Rcv API  PATH      165.246.10.2/10000[17]    <API ttl=/63
  PATH: Sess: 165.246.10.2/10000[17]    R: 30000   PHOP: <(API) LIH=0>
        super.inha.net/10001  T=[1.28K(256) 1.28KB/s 64 128]
                Adspec( 0 hop InfBW 0us 65535B, G={br!}, CL={br!})

No Route

03:34:42.062 >>>>>>>>>>  Internal STATE: <<<<<<< 114987 <<<<<<
 Sess: 165.246.10.2/10000[17]    Refresh intervals: Path R= 30000  Resv R=0
   Sender: super.inha.net/10001   PHOP: <(API)>   TTD: 272487
     In_if 3=>API  Outlist 0x0   flags *PE  ip_ttl 63
     T=[1.28K(256) 1.28KB/s 64 128]   Adspec( 0 hop InfBW 0us 65535B,
G={br!}, C
L={br!})

   ------------- End of Dest state dump ---------------
=============================================
receiver
rt1>rsvpd -D -d 15 -l 7
...........................
.............
T1>dest udp 165.246.10.2/10000
T1: rapi_session => sid= 1, fd= 26
"after sender call"
T1> reserve ff 165.246.10.1/10001 [cl 1280 256 64 128]
T1> 03:43:45.315  API: req 4 from ?? pid= 3402Asid= 1

and have no response
somthing wrong?
thanks
-welkin