Re: QSPEC TMOD and packet header overhead

Gerald Ash <[email protected]>
Newsgroups gmane.ietf.nsis
Message-ID <[email protected]>
Hi Bernd,
   
  The example and text look good, thanks!
   
  I agree that it would be worthwhile to include this as an appendix/example in the QSPEC (after all, you and Roland did all the work :-).
   
  Thanks again,
  Regards,
  Jerry


Bernd Schloer <[email protected]> wrote:
  Hi Jerry,

based on Roland's work I have written a numerical example how
the TMOD parameter could be used. Is this of interest for the QSPEC
draft to include?

Best regards,
Bernd

An example VoIP application that uses RTP [RFC 1889] and the
G.711 Codec [ITU-T Rec. G.711] the TMOD-1 parameter could be
set as follows:

In the simplest case the Minimum Policed Unit m is the sum of the
IP-, UDP- and RTP- headers + payload. The IP header in the IPv4
case has a size of 20 bytes (40 bytes if IPv6 is used). The UDP
header has a size of 8 bytes and RTP uses a 12 byte header. The
G.711 Codec specifies a bandwidth of 64 kbit/s (8000 bytes/s).
Assuming RTP transmits voice datagrams every 20ms, the payload
for one datagram is 8000 bytes/s * 0.02 s = 160 bytes.

IPv4+UDP+RTP+payload: m=20+8+12+160 bytes = 200 bytes
IPv6+UDP+RTP+payload: m=40+8+12+160 bytes = 220 bytes

The Rate r specifies the amount of bytes per second. 50 datagrams
are sent per second.

IPv4: r = 50 1/s * m = 10,000 bytes/s
IPv6: r = 50 1/s * m = 11,000 bytes/s

The bucket size b specifies the maximum burst. In this example a
burst of 10 packets is used.

IPv4: b = 10 * m = 2000 bytes
IPv6: b = 10 * m = 2200 bytes

A number of extra headers (e.g. for encapsulation) may be included
into the datagram. A non exhaustive list is given below. For
additional headers m, r and b have to be set accordingly.

Protocol Header Size
--------------------------+-----------
GRE [RFC 1701] | 8 bytes
GREIP4 [RFC 1702] | 4-8 bytes
IP4INIP4 [RFC 2003] | 20 bytes
MINENC [RFC 2004] | 8-12 bytes
IP6GEN [RFC 2473] | 40 bytes
IP6INIP4 [RFC 4213] | 20 bytes
IPSec [RFC 4301,RFC 4303] | variable
--------------------------+-----------

Gerald Ash wrote:
> Hi Roland,
> 
> See comments below.
> 
>>> However, as stated at the beginning of Section 5.2 (QSPEC Parameter
>>> Coding):
>>>
>>> "The references in the following sections point to the normative
>>> procedures for processing the QSPEC parameters and
>>> sub-parameters."
>>> 
>>> In the case of TMOD-1 and TMOD-2, the normative references are RFC
>>> 2210 and RFC 2215. In particular, Section 3.1 in RFC 2210 and
> >> Section 3.6 in RFC 2215 give the necessary guidance on setting the
> >> token bucket parameters.
> 
>> Yes, they do, but actually there is no TMOD in RFC 2210. So even if the
>> match is somewhat obvious, it would be probably better to be more exact
>> and point to the SENDER_TSPEC definition in RFC 2210 or the
>> TOKEN_BUCKET_TSPEC definition in RFC 2215.
> 
> Yes I agree that the match between TMOD and TSPEC is pretty obvious. However it can be made even more explicit with specific references to TSPEC (Section 3.1 in RFC 2210 and Section 3.6 in RFC 2215), as you suggest.
> 
>>> IMO the QSPEC document isn't the place to give detailed examples of
>>> how to set these QSPEC parameters, or any other QSPEC parameters,
> >> beyond what is contained in the normative references.
> 
>> IMHO, an example in the appendix would be nice.
> 
> Well, the token bucket algorithm has been around for a long time (even before RSVP of course) so there are ample examples and implementations of its use. IMO it would not be appropriate (and perhaps a bit odd) for the QSPEC to include a tutorial on token bucket.
> 
> While RFCs 2210 and 2215 are the applicable normative description of the TSPEC/TMOD parameters, there are no numerical examples there of its use. So perhaps we could include a reference or 2 to some examples of token bucket implementation. Maybe that would help? A couple of references I'm aware of with numerical examples of token bucket implementation include
> 
> http://www.amazon.com/Computer-Networks-Approach-Kaufmann-Networking/dp/0123705487/
> 
> http://www.amazon.com/Traffic-Engineering-Optimization-Integrated-Networks/dp/0123706254/
> 
> Perhaps you could suggest an appropriate reference as well?
> 
> OTOH, I couldn't find any RFCs with numerical examples of TSPEC/TMOD implementation (do you know of any?), so that might be a justification to include one or two examples in QSPEC (such as the ones you constructed). 
> 
> Does anyone else have a comment on this?
> 
>> Shouldn't we copy the missing text from RFC 2210 or RFC 2215 since the
>> current description is incomplete without those RFCs?
> 
> I'm not sure what 'missing text' you suggest to copy. Once again, the intent of the statement at the beginning of QSPEC Section 5.2 ("The references in the following sections point to the normative procedures for processing the QSPEC parameters and sub-parameters.") is intended to avoid copying normative text into the QSPEC document for each QSPEC parameter. More generally, that is also the purpose of a normative reference in any RFC.
> 
> Do you want to suggest specific text to bring into QSPEC?
> 
> Regards,
> Jerry
       
---------------------------------
Be a better friend, newshound, and know-it-all with Yahoo! Mobile.  Try it now.

_______________________________________________
nsis mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/nsis
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.