Re: An IETF repository for working code in our protocols?

Bron Gondwana <> Thu, 20 August 2020 01:34 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 01DED3A1013 for <>; Wed, 19 Aug 2020 18:34:09 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -2.097
X-Spam-Status: No, score=-2.097 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (2048-bit key) header.b=xFVjEh/R; dkim=pass (2048-bit key) header.b=Nrc6P2Il
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id F0H_RXcRRanR for <>; Wed, 19 Aug 2020 18:34:06 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id C59A83A1011 for <>; Wed, 19 Aug 2020 18:34:06 -0700 (PDT)
Received: from compute1.internal (compute1.nyi.internal []) by mailout.nyi.internal (Postfix) with ESMTP id 278E05C00CF for <>; Wed, 19 Aug 2020 21:34:06 -0400 (EDT)
Received: from imap7 ([]) by compute1.internal (MEProxy); Wed, 19 Aug 2020 21:34:06 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=; h=mime-version:message-id:in-reply-to :references:date:from:to:subject:content-type; s=fm3; bh=Sm2Xnpx RnpLda1VJDUjDl61tPPVbC6LjpMtuNKx54xs=; b=xFVjEh/R9JJ1hkXp4BqAFJH k3JPixuZ9F7WSF1eaeiDzzg/OPRe5GFWTmfjrTMtbu6NDVa7NPJjBPC2vz3d3mVN A2G9cE+e9GDnwwlWheRBEsM/8CeT/+P4kbTQ6O7EtyzxQpqM5z/rt65iBRSN3E7o Cdm8HjN9unBoRhjPESt38wLg+9qo90PuUTSs8AGhlulXSHtC3Z75G/EfCjQZPRcL Z7MQLDfPuPVutlyh+e3PqWgaXEb1vFyObtTCTHZ6Ge+ihbvFku72gUemAVkLjdsq JQ2beUjsjgj5kuOYTjxAg2+x/JB6wgYAwxInEcxWrQHR8Uukt2E8vNMH23tW0Pg= =
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=; h=content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; bh=Sm2Xnp xRnpLda1VJDUjDl61tPPVbC6LjpMtuNKx54xs=; b=Nrc6P2IlJ7HREvZy/NYOer JYwQWy7MCegD/wpgibqv3i1z6nWqtBazr2hT9vXrcQyWUoT6Gnz0HdZlLhhHOMSU aQ9hA2WC9qvTaJdiz4Ey1KmzvxqF44tfy9ecsTm/q+Zyj2hfOC4Jj6NMKrGwQpoc BPlBUSO2wvIuy3csuiDc1+YtRkXr8Va4XL7hrBn1osiR1JCc5cr1CEUgHowIJHyv jMa8KDXF/2NGhDagruPnS9GcIaf2TPGIa/aI0C303aanvnCGvOvoCEpRtlE+yLuF S80S9lalzgVIu5oljz90REla//ss3ONbfl9aIgWLLJsYHM56KTp54PF2JWiJ2deA ==
X-ME-Sender: <xms:DdM9XzAPc9BbSz72czGISdzOCaR0fecOXnwaQQFMxdy_bxb5HA83vg>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduiedruddtledgfeekucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpefofgggkfgjfhffhffvufgtsegrtd erreerredtnecuhfhrohhmpedfuehrohhnucfiohhnugifrghnrgdfuceosghrohhnghes fhgrshhtmhgrihhlthgvrghmrdgtohhmqeenucggtffrrghtthgvrhhnpefgkeeitefgle ffieehveevvdfflefguedvgfeivdefhedugfetleffffehgffhleenucffohhmrghinhep ghhithhhuhgsrdgtohhmpdhivghtfhdrohhrghdpihgvvggvrdhorhhgpdgrtghmrdhorh hgpdhmnhhothdrnhgvthenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgr ihhlfhhrohhmpegsrhhonhhgsehfrghsthhmrghilhhtvggrmhdrtghomh
X-ME-Proxy: <xmx:DdM9X5iz2Aglkf99YPqUU43bgf53fufgRUOZ05U7w_HuhW-OxdQD5A> <xmx:DdM9X-lfH80RohDU5OoGQ3xGpGTXRZO9wEXLBmQUmxhANI99jBRqpA> <xmx:DdM9X1yYNkTzEY-5NpcirQtrrjDll9MouI78YKuvLS5UpZZlWm5gXA> <xmx:DtM9X-DsJsm1FvaEbu25k-Hn6qc4qgGB93M0TdtgDRsjoW08-vGnhg>
Received: by mailuser.nyi.internal (Postfix, from userid 501) id C827218014A; Wed, 19 Aug 2020 21:34:05 -0400 (EDT)
X-Mailer: Webmail Interface
User-Agent: Cyrus-JMAP/3.3.0-214-g5a29d88-fm-20200818.002-g5a29d882
Mime-Version: 1.0
Message-Id: <>
In-Reply-To: <>
References: <> <>
Date: Thu, 20 Aug 2020 11:33:45 +1000
From: "Bron Gondwana" <>
Subject: Re: An IETF repository for working code in our protocols?
Content-Type: multipart/alternative; boundary=f88cab9bade9425db647bb50c9bf6223
Archived-At: <>
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Working Group Chairs <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Thu, 20 Aug 2020 01:34:09 -0000

I'm more interested in the IETF maintaining a repository of working test cases and test suites.  Test suites are much more valuable to new people coming along trying to implement the spec, and even just good examples and test cases can help development significantly, but don't necessarily have to be spelled out inside the RFC because they take up lots of space and the RFC formatting is not conducive to things like precise whitespace and line endings!


On Thu, Aug 20, 2020, at 11:30, Mark Nottingham wrote:
> Hi Vijay,
> Just my .02 - I'd be wary of an IETF repository of such code, as that would convey too much authority on it. It would also create a fair amount of overhead (especially for long-term maintenance).
> I also don't think that it's necessary, once a protocol is successful; after broad deployment, people don't need to go searching for implementations. It *is* useful when a project is starting, to help early implementers find each other, though. 
> In the WGs I participate in, we often use wiki pages to track early implementations; e.g.:
> *
> *
> Cheers,
> > On 20 Aug 2020, at 1:10 am, Vijay Gurbani <> wrote:
> > 
> > All: I was reviewing a draft [1] as part of Gen-ART.  In the draft, there is a section pertaining to "Implementation Status" as dictated by RFC 7942.  I found this section to be very interesting in that it captures the running code corresponding to the I-D, but RFC 7942 does not appear to provide the means to retain this section upon publication as a RFC.  (To be sure, it does not mandate that the section be removed, just suggests it.  However, most I-D authors simply will end up asking the RFC editor to remove the section, as [1] does.)
> > 
> > I think that is rather counter productive.  After all, we standardize protocols so that others can write programs that implement the protocols, and I see a lot of value in preserving any running code.  In the particular case of the I-D I reviewed, there were two implementations, both from reputable organizations (APNIC and the Italian National Research Council).  By simply deleting the "Implementation Status" section when the I-D was published as an RFC, it seems that good, quality implementations that folks spent time on would be lost, perhaps not irrevocably, but for most practical purposes, the code would be orphaned.
> > 
> > I am wondering whether the IETF should preserve some of this running code as an archive.  The IETF makes no guarantees of the correctness of the code, just provides a repository where code can be linked to a particular RFC to allow implementers to bootstrap themselves, if needed.  This repository will also contain the contact of the original author of the code.  The repository is sort of like an IANA registry of IETF working code corresponding to an RFC.  The authors of the I-D can be the "expert" and suggest which implementations they consider worthy of archival.  The boilerplate of implementations is given in Section 2 of RFC 7942 [2].  We would have to spec out an IANA-registry like process to do so, but I think that the ends will justify the means.
> > 
> > I note that organizations like IEEE have evolved to provide a repository where authors of published papers can park their datasets for reproducibility (see IEEE DataPort [3]).  The 2017 ACM Task Force on Data, Software, and Reproducibility in Publication also recommended that, "The ACM Digital Library will need to interoperate with a number of recommended data repositories and software curation platforms..." [4]..  So this idea of the IETF maintaining a software repository is not entirely unheard of.
> > 
> > I apologize for taking your time if this has been discussed before; if not, it is worth some discussion.
> > 
> > [1]
> > [2]
> > [3]
> > [4]
> > 
> > Thank you,
> > 
> > - vijay
> --
> Mark Nottingham

  Bron Gondwana, CEO, Fastmail Pty Ltd