Subject: Re: [Teas] [netmod] Typedefs for bandwidth

From: Italo Busi <[email-masked]>
Date: Fri, 14 May 2021 10:08:00 +0000

Reshad, Juergen,

Actually, there is some on-going discussion within TEAS because some packet technology-specific YANG modules are not using the bandwidth-ieee-float32 but prefers using some uint type:

https://github.com/tsaad-dev/te/issues/116

The ietf-te-packet-types already defines bandwidth-kbps, bandwidth-mbps and bandwidth-gbps but during the discussion of this open issue it was pointed out that it would be desirable to specify both the bandwidth and the units (Kbps/Mbps/Gbps)

Italo

> -----Original Message-----
> From: Juergen Schoenwaelder [mailto:[email-masked]]
> Sent: giovedì 13 maggio 2021 19:25
> To: Reshad Rahman <reshad=[email-masked]>
> Cc: [email-masked]' <[email-masked]>
> Subject: Re: [netmod] Typedefs for bandwidth
> 
> On Thu, May 13, 2021 at 11:57:26AM -0400, Reshad Rahman wrote:
> > Hi,
> >
> >
> >
> > Has there been any discussions wrt adding new  bandwidth types e.g. the
> bandwidth-xxx types in draft-ietf-teas-yang-te-types? I see RFC8294 has
> bandwidth-ieee-float32 but it doesn’t have units (Kbps/Mbps/Gbps).
> >
> 
> The description of bandwidth-ieee-float32 says:
> 
>           The units are octets per second.
> 
> Note that draft-ietf-teas-yang-te-types has been published as RFC 8776 in June
> 2020, it should be safe to use these definitions.
> 
> /js
> 
> --
> Juergen Schoenwaelder           Jacobs University Bremen gGmbH
> Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> Fax:   +49 421 200 3103         <https://www.jacobs-university.de/>
>

---

From: Juergen Schoenwaelder <[email-masked]>
Date: Fri, 14 May 2021 12:48:20 +0200

I assume it is best to settle this in teas. Form a programmatic point
of view, you likely want to have a single unit. Even if you go for bps
(bits per second), a uint64 still allows you to express quite big data
rates (I think 16777216 terra bits per second but please check
yourself). From a human point of view, having a notation that supports
different units may be desirable. But if you have multiple
representations, this surely increases implementation cost and it gets
you into answer questions whether there should be a canonical format
or a way to decide which unit is selected. Writing constraints in when
or must statements will also become much more fun.

Whether you really need the range of a floating point number, I can't
tell. Perhaps check what the realistic smallest and biggest bandwidth
is that you need to represent. Generally, floating point numbers seem
to be a no-brainer for management application writers but I have been
told that they are less frequently found in line cards or OS kernels.

/js

---

From: "Acee Lindem (acee)" <[email-masked]>
Date: Fri, 14 May 2021 12:27:11 +0000

I'd be all for using some unsigned integer quantity. I think it was a mistake for using IEEE floating point in the first place. This floating point nonsense was carried over to Traffic Engineering (TE) from early work done on transport area on RSVP. For example, https://www.rfc-editor.org/rfc/rfc2210.txt and we've been stuck with it ever since... 

Thanks,
Acee

On 5/14/21, 6:08 AM, "netmod on behalf of Italo Busi" <[email-masked] on behalf of [email-masked]> wrote:

    Reshad, Juergen,

    Italo

    > 2020, it should be safe to use these definitions.

    _______________________________________________
    netmod mailing list
    [email-masked]
    https://www.ietf.org/mailman/listinfo/netmod

---

From: Don Fedyk <[email-masked]>
Date: Fri, 14 May 2021 19:52:41 +0000

+1 The floating point format is really non-intuitive. We have used uint64 bit rates. 
Cheers
Don

-----Original Message-----
From: netmod <[email-masked]> On Behalf Of Acee Lindem (acee)
Sent: Friday, May 14, 2021 8:27 AM
To: Italo Busi <[email-masked]>; 'Juergen Schoenwaelder' <[email-masked]>; Reshad Rahman <reshad=[email-masked]>
Cc: [email-masked]' <[email-masked]>; [email-masked]
Subject: Re: [netmod] Typedefs for bandwidth

Thanks,
Acee

    Reshad, Juergen,

    Italo