Subject: Re: What is the bad tspec?

From: "Chetan Pinto" <[email-masked]>
Date: Tue, 02 Jul 2002 21:40:21 -0700

>Hi,
>
>What is the unreasonable request for triggering bad Tspec?
It is one with invalid values for the fields of the Tspec
or a combination of valid ones which portends a bad set.

Few examples
(1) m should not be 0
(2) m must not be greater than M
(3) r must not be greater than p

>
>If I set the token bucket rate very large, it will send back the patherr
>msg with 'Requested bandwidth unavailable', it will not send the bad tspec.
>
>Thanks,
>
>Julia

############################################################
Chetan Francis Pinto
Phone : Res : 408-244-1352
############################################################

_________________________________________________________________
Chat with friends online, try MSN Messenger: http://messenger.msn.com

---

From: David Charlap <[email-masked]>
Date: Wed, 03 Jul 2002 13:29:39 -0400

> (1) m should not be 0

No.  Zero means "don't care" in all IntServ objects - including TSPEC, 
FLOWSPEC and ADSPEC.

Zero is legal for all fields.

> (3) r must not be greater than p

These make sense, as long as you keep in mind that M and p can be zero 
without violating these rules.

>> msg with 'Requested bandwidth unavailable', it will not send the bad 

Keep in mind that a huge value in the TSPEC may not cause a PathErr. 
Until the Resv message arrives from downstream, the actual size of the 
reservation could be any value between zero and the value of the TSPEC.

If the FLOWSPEC in the Resv is too large, then a PathErr is mandatory.

The TSPEC in a PathErr message is optional.  More specifically, the 
entire sender descriptor (SENDER_TEMPLATE, TSPEC and ADSPEC) is optional 
in PathErr.  IMO, the sender descriptor should be sent, because you 
can't uniquely identify a single LSP within a session without it.

A PathErr with a SENDER_TEMPLATE, but no TSPEC doesn't seem to be legal, 
according to my reading of RFC 2205.  (It violates the BNF description 
of a sender descriptor in section 3.1.3.)  I wouldn't reject the 
message, however, since the TSPEC can be determined by looking at the 
stored value.  (Part of being liberal in what you accept.)

-- David