[Sidrops] XML in RRDP (Was: mft/ee validity time window alignment issue)

Job Snijders <job@fastly.com> Fri, 09 July 2021 12:19 UTC

Return-Path: <job@fastly.com>
X-Original-To: sidrops@ietfa.amsl.com
Delivered-To: sidrops@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id EA52C3A1F55 for <sidrops@ietfa.amsl.com>; Fri, 9 Jul 2021 05:19:57 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.499
X-Spam-Level:
X-Spam-Status: No, score=-1.499 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, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, URIBL_SBL=0.5, URIBL_SBL_A=0.1] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=fastly.com
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 wsNPYnwvx3PZ for <sidrops@ietfa.amsl.com>; Fri, 9 Jul 2021 05:19:53 -0700 (PDT)
Received: from mail-ed1-x52b.google.com (mail-ed1-x52b.google.com [IPv6:2a00:1450:4864:20::52b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5A2D63A1F53 for <sidrops@ietf.org>; Fri, 9 Jul 2021 05:19:53 -0700 (PDT)
Received: by mail-ed1-x52b.google.com with SMTP id eb14so13604990edb.0 for <sidrops@ietf.org>; Fri, 09 Jul 2021 05:19:53 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastly.com; s=google; h=date:from:to:cc:subject:message-id:mime-version:content-disposition; bh=EKcQeLBiqTitRrOd4XSRqT6GyXyGcvc4VHFtIUuQNjQ=; b=rLyn8KZsBPwPgVhZNKp3o04O5JpxWiMvyaPw2wf01Lm43wSAGVY63n6BHd+LgIBGCP CPUc+tqiNFLFZVmJo5qxyBJkX+45aGZ96CrcbLOELFOqFPOIe7gkEclRNTBoAmabwpWt hw5qMpNzlxIxEw2qPa8tvryM/TbwOmzOxLeEM=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:mime-version :content-disposition; bh=EKcQeLBiqTitRrOd4XSRqT6GyXyGcvc4VHFtIUuQNjQ=; b=Qe4FxE1+9pnyALQwJnLfbYtHvC3Uf4x7EzYaHgu6xtW/kDFG8eTI4k/Hb/rUWXdmHb mzD2rkRkQmNnxOiE/RBLCN1f6fyfJ4FSW3O19VlQoFBAb9buhK1A3utVi0lZxxHuu2Zy nhXhsYmiFU4InLVhRkIxXKvU3tMCKwiw4jt77Ydcdrr+7vQLEvni5QIOr5WgyESIj2RG j006F7nHkbVxyqq0FxtaqylnqPhZcTdgq+KYTfnrKgsbOAKqtgWfaVV+jOkMORperaHS OwI6ykkJ2dZNuYVb63Fsq3Me+Oibb2Aka4oihdG5nMNwj7iRMKesldyV6CIV4R7zzGRM o6hA==
X-Gm-Message-State: AOAM53341vR8sPWckrOds9Vw8D7nZSbUp+0DuCeWNGQ//99rgoYbuCKf sVQjeJvcoEngXbbiafSyh9TGwA==
X-Google-Smtp-Source: ABdhPJyM4xxfJDn3DgIurNo3qIlyxy4H4toi3WGpC3AVfjcm3gjWCnmkfsPCXXGcDdlTBQgSoo0XFw==
X-Received: by 2002:a05:6402:42d2:: with SMTP id i18mr46006976edc.168.1625833190120; Fri, 09 Jul 2021 05:19:50 -0700 (PDT)
Received: from snel ([2a10:3781:276:0:21e:c2ff:fefb:f388]) by smtp.gmail.com with ESMTPSA id ja13sm2306150ejc.82.2021.07.09.05.19.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 09 Jul 2021 05:19:49 -0700 (PDT)
Date: Fri, 09 Jul 2021 14:19:48 +0200
From: Job Snijders <job@fastly.com>
To: Julian Reschke <julian.reschke@gmx.de>
Cc: sidrops@ietf.org
Message-ID: <YOg+5DAdpHPINTM8@snel>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
X-Clacks-Overhead: GNU Terry Pratchett
Archived-At: <https://mailarchive.ietf.org/arch/msg/sidrops/HKrjlj1k_Tw4QsniVJ2FvL26cFE>
Subject: [Sidrops] XML in RRDP (Was: mft/ee validity time window alignment issue)
X-BeenThere: sidrops@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: A list for the SIDR Operations WG <sidrops.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/sidrops>, <mailto:sidrops-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/sidrops/>
List-Post: <mailto:sidrops@ietf.org>
List-Help: <mailto:sidrops-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sidrops>, <mailto:sidrops-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 09 Jul 2021 12:19:58 -0000

On Fri, Jul 09, 2021 at 01:31:01PM +0200, Julian Reschke wrote:
> Am 09.07.2021 um 12:59 schrieb Job Snijders:
> > ... > If we are looking to decrease traffic, I'd first remove XML from RRDP as
> > that appears a 50% bloat compared to using DER as container :-)
> > ...
> 
> 1) Even with Content-Coding gzip?

Supporting gzip encoding is not a requirement for RPKI RPs. But indeed,
it helps reduce transfer size:

    https://rrdp.ripe.net/c85a5e87-ad1a-4b5a-b73f-8325877826fd/3059/snapshot.xml
    gzip encoded transfer: 67.9M
    non-gzip transfer: 141M

However, if we jokingly entertain 'tar' as a container format instead of
XML, the raw DER data can be gzip compressed to 57.5M! ~ 20% reduction :-)

My beef with the XML in RRDP is more than just the size: the requirement
to have to link a full blown XML parser library into an RP
implementation, while each RP already has a DER decoder, is bloat of
some sorts. XML in RRDP is merely used as a very expensive field
separator.

I know the original RRDP author was not specifically attached to XML,
and perhaps it was useful in the proof-of-concept phase. In the next
version of RRDP I'd recommend to get rid of the XML dependency.

> 2) How many RRDP requests are currently 304s, or could be 304s if
> clients and servers would take advantage of it?

Probably the majority. As far as I know most RPs implemented support for
'If-Modified-Since'.

A quick'n'dirty inspection of my publication webserver access log
searching for '304' requests shows that the most RPs support this
functionality:

    Apache-HttpClient/4.3.6 (java 1.5)   <-- unsure which RP this is
    OpenBSD rpki-client
    Routinator/0.8.0 - 0.10.0-dev
    fort/1.4.0 - 1.5.0

OctoRPKI & RIPE NCC's Validator don't appear to have If-Modified-Since
support.

Kind regards,

Job