Re: [Rtg-yang-coord] Floating point

Benoit Claise <bclaise@cisco.com> Thu, 15 January 2015 08:21 UTC

Return-Path: <bclaise@cisco.com>
X-Original-To: rtg-yang-coord@ietfa.amsl.com
Delivered-To: rtg-yang-coord@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id AFA791B2BAF for <rtg-yang-coord@ietfa.amsl.com>; Thu, 15 Jan 2015 00:21:07 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.445
X-Spam-Level:
X-Spam-Status: No, score=-5.445 tagged_above=-999 required=5 tests=[BAYES_20=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FF_IHOPE_YOU_SINK=2.166, HTML_MESSAGE=0.001, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01, USER_IN_DEF_DKIM_WL=-7.5] autolearn=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id fnR1PB328OvS for <rtg-yang-coord@ietfa.amsl.com>; Thu, 15 Jan 2015 00:21:05 -0800 (PST)
Received: from bgl-iport-3.cisco.com (bgl-iport-3.cisco.com [72.163.197.27]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 01B881B2BAD for <Rtg-yang-coord@ietf.org>; Thu, 15 Jan 2015 00:21:03 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=27959; q=dns/txt; s=iport; t=1421310064; x=1422519664; h=message-id:date:from:mime-version:to:cc:subject: references:in-reply-to; bh=ljgpVM07eMOt8dKbAfGZJ3Klw4OZU5/Lu5GMXMOU6I4=; b=kqJG9v+WYpitdv4r8P4Su9w8vYWCINwwEt2c8wrtIoVFtff4IVPC0nxe 7g54cu3BE+tXc0JYtxzn9tFs9umEoT5Af4hfVYQwe9k8+i5mCGf9OvBXU L6ja9OP1xjvT5TOderT/FNlnG133IZC7ibw7ZkCL8n8bUscYsdO/f5Vx3 s=;
X-IronPort-AV: E=Sophos; i="5.09,402,1418083200"; d="scan'208,217"; a="14766301"
Received: from vla196-nat.cisco.com (HELO bgl-core-4.cisco.com) ([72.163.197.24]) by bgl-iport-3.cisco.com with ESMTP; 15 Jan 2015 08:21:02 +0000
Received: from [10.61.95.101] (ams3-vpn-dhcp8038.cisco.com [10.61.95.101]) by bgl-core-4.cisco.com (8.14.5/8.14.5) with ESMTP id t0F8Kkeb008971; Thu, 15 Jan 2015 08:20:49 GMT
Message-ID: <54B7785D.8070309@cisco.com>
Date: Thu, 15 Jan 2015 09:20:45 +0100
From: Benoit Claise <bclaise@cisco.com>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.7.0
MIME-Version: 1.0
To: Qin Wu <bill.wu@huawei.com>, "Acee Lindem (acee)" <acee@cisco.com>, Martin Bjorklund <mbj@tail-f.com>
References: <CABCOCHThwQXPYZqK_gapK4ycGfkNUrfgL_81FZU1watVm8pM=A@mail.gmail.com> <20141221213240.GA34831@elstar.local> <D0BCC95F.AC81%acee@cisco.com> <20141222.100038.719440000332847338.mbj@tail-f.com> <D0D20519.B275%acee@cisco.com> <54B061CB.2090108@cisco.com> <B8F9A780D330094D99AF023C5877DABA8469FB63@nkgeml501-mbs.china.huawei.com>
In-Reply-To: <B8F9A780D330094D99AF023C5877DABA8469FB63@nkgeml501-mbs.china.huawei.com>
Content-Type: multipart/alternative; boundary="------------020703000705060001090107"
Archived-At: <http://mailarchive.ietf.org/arch/msg/rtg-yang-coord/3IOBC19vA0rj8sFYnz3cnT5tjxE>
Cc: "Rtg-yang-coord@ietf.org" <Rtg-yang-coord@ietf.org>, "j.schoenwaelder@jacobs-university.de" <j.schoenwaelder@jacobs-university.de>, "ietfc@btconnect.com" <ietfc@btconnect.com>, "andy@yumaworks.com" <andy@yumaworks.com>, "akatlas@gmail.com" <akatlas@gmail.com>
Subject: Re: [Rtg-yang-coord] Floating point
X-BeenThere: rtg-yang-coord@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: "\"List to discuss coordination between the Routing related YANG models\"" <rtg-yang-coord.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtg-yang-coord>, <mailto:rtg-yang-coord-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/rtg-yang-coord/>
List-Post: <mailto:rtg-yang-coord@ietf.org>
List-Help: <mailto:rtg-yang-coord-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtg-yang-coord>, <mailto:rtg-yang-coord-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 15 Jan 2015 08:21:07 -0000

Hi Qin,

Thanks Qin, this WIKI contains a lot of valuable information.

Let me rephrase my point: documenting this issue is a good first step, 
but that doesn't mean that it will magically be solved :-)

Regards, Benoit
>
> This is an open issue with YANG language . We have recorded it with 
> other open issues in the yang coordinator wiki page.
>
> http://trac.tools.ietf.org/area/rtg/trac/wiki/RtgYangCoord#
>
> Regards!
>
> -Qin
>
> *? ??:*Rtg-yang-coord [mailto:rtg-yang-coord-bounces@ietf.org] *? ? 
> *Benoit Claise
> *? ???:*2015?1?10?7:19
> *???:*Acee Lindem (acee); Martin Bjorklund
> *??:*Rtg-yang-coord@ietf.org; ietfc@btconnect.com; 
> j.schoenwaelder@jacobs-university.de; andy@yumaworks.com; 
> akatlas@gmail.com
> *??:*[Rtg-yang-coord] Floating point (was: Fwd: Last Call: 
> <draft-ietf-ospf-te-metric-extensions-08.txt> (OSPF Traffic 
> Engineering (TE) Metric Extensions) to Proposed Standard)
>
> Dear all,
>
> I discussed the floating point situation with the NETMOD chairs.
> Let me try to summarize the situation.
>
> There are two main options:
>   
> 1. The NETMOD WG last time once decided not to add IEEE floating point types to the base type system. The routing experts, or whoever needs the floating point types, should come and articulate why they believe this decision was wrong to make the NETMOD
> folks change their opinion. Practically, that means writing a YANG module defining IEEE float/double typedefs.
>   
> 2. We try to understand which concrete types are needed for traffic engineering and routing purposes and we define specific typedefs such as
>   
>    typedef probability {
>       type unit decimal64 {
>          fraction-digits 18;  // need to discuss precision needed
>          range "0 .. 1";
>       }
>       description
>         "[to be written, need to discuss which precision is needed]";
>    }
>   
>    typedef quality {
>       type unit decimal64 {
>          fraction-digits 18;  // need to discuss precision needed
>          range "0 .. 1";
>       }
>       description
>         "[to be written, need to discuss which precision is needed]";
>    }
>   
>    typedef bandwidth {
>       type uint64;
>       // perhaps restrict range to avoid Y59 issues.
>       // 2^^56    would still allow for ~72 peta bits per second
>       unit "bits per second"
>       description
>         "[to be written]";
>    }
>   
>    These could be additions to the common typedefs we have.
>
> So basically, my message is: if you want the solution 1, the ball is 
> your court.
>
> Regards, Benoit
>
>       
>
>       
>
>     On 12/22/14, 4:00 AM, "Martin Bjorklund"<mbj@tail-f.com>  <mailto:mbj@tail-f.com>  wrote:
>
>       
>
>         "Acee Lindem (acee)"<acee@cisco.com>  <mailto:acee@cisco.com>  wrote:
>
>               
>
>               
>
>             On 12/21/14, 4:32 PM, "Juergen Schoenwaelder"
>
>             <j.schoenwaelder@jacobs-university.de>  <mailto:j.schoenwaelder@jacobs-university.de>  wrote:
>
>               
>
>                 On Sun, Dec 21, 2014 at 08:23:46AM -0800, Andy Bierman wrote:
>
>                     On Sun, Dec 21, 2014 at 4:57 AM, Juergen Schoenwaelder
>
>                     <j.schoenwaelder@jacobs-university.de>  <mailto:j.schoenwaelder@jacobs-university.de>  wrote:
>
>                           
>
>                         It is not a big deal. I just wanted to point out that what RSVP
>
>             and TE
>
>                         protocols do is, from a viewpoint of accuracy and efficiency,
>
>             somewhat
>
>                         questionable.
>
>                       
>
>                     It is a big deal to add a base type.  It can only be used in the new
>
>                     language version which will not be available in tools for a long
>
>             time,
>
>                     and could create compatibility issues.
>
>                   
>
>                 Yes, and note that I did not write 'base type'.
>
>                   
>
>                     However, a typedef can be added now and will work with YANG 1.0.
>
>                   
>
>                 Exactly.
>
>                   
>
>                 I still remain unconvinced that IEEE floats are technically the
>
>                 correct solution for token buckets and the like. I doubt that the
>
>                 Linux netlink interface into the kernel uses floats. But then TE must
>
>                 decide whether they like to see a float, even though they may give a
>
>                 false sense of precision.
>
>               
>
>             I agree that IEEE Float-32 is not an optimal choice for representation
>
>             of
>
>             bandwidth and other integrated services values in RSVP. My point was
>
>             that
>
>             this was the choice that was made (although I didn¹t articulate this
>
>             very
>
>             well).
>
>           
>
>         Ok, it is clear that the protocol uses floats internally.  Does it
>
>         follow that the configuration model has to use floats as well?  Or
>
>         would decimal64 work?
>
>       
>
>     I doubt that configuration API for Traffic Engineering bandwidth are
>
>     floating point. However, we have been modeling the IGP Link State
>
>     Databases in the operational state.
>
>       
>
>     Thanks,
>
>     Acee
>
>       
>
>       
>
>           
>
>         For the interested reader, the following mail threads may be useful to
>
>         read.  Background: from the start YANG had floats, but we removed them
>
>         when we couldn't get them to work nicely.
>
>           
>
>         http://www.ietf.org/mail-archive/web/netmod/current/msg01855.html
>
>           
>
>         http://www.ietf.org/mail-archive/web/netmod/current/msg02216.html
>
>           
>
>           
>
>         /martin
>
>       
>
>     _______________________________________________
>
>     Rtg-yang-coord mailing list
>
>     Rtg-yang-coord@ietf.org  <mailto:Rtg-yang-coord@ietf.org>
>
>     https://www.ietf.org/mailman/listinfo/rtg-yang-coord
>
>
>
> _______________________________________________
> Rtg-yang-coord mailing list
> Rtg-yang-coord@ietf.org
> https://www.ietf.org/mailman/listinfo/rtg-yang-coord