[Cbor] Using packed CBOR in BIRD's custom protocol
Maria Matejka <maria.matejka@nic.cz> Wed, 07 June 2023 10:35 UTC
Return-Path: <maria.matejka@nic.cz>
X-Original-To: cbor@ietfa.amsl.com
Delivered-To: cbor@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0C36FC151092 for <cbor@ietfa.amsl.com>; Wed, 7 Jun 2023 03:35:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.095
X-Spam-Level:
X-Spam-Status: No, score=-2.095 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_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=nic.cz
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id KlraKz3MhZnx for <cbor@ietfa.amsl.com>; Wed, 7 Jun 2023 03:35:09 -0700 (PDT)
Received: from mail.nic.cz (mail.nic.cz [217.31.204.67]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BD9E1C151084 for <cbor@ietf.org>; Wed, 7 Jun 2023 03:35:09 -0700 (PDT)
Received: from [IPV6:2001:1488:fffe:6:ffff:ffff:ffff:31] (unknown [IPv6:2001:1488:fffe:6:ffff:ffff:ffff:31]) by mail.nic.cz (Postfix) with ESMTPSA id 437D11C1382 for <cbor@ietf.org>; Wed, 7 Jun 2023 12:35:05 +0200 (CEST)
Authentication-Results: mail.nic.cz; auth=pass smtp.auth=maria.matejka@nic.cz smtp.mailfrom=maria.matejka@nic.cz
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=nic.cz; s=default; t=1686134106; bh=5LEoVLx3oPZ3BWXzJmAmJyf7q7vYQHTN5HExNJKr/4E=; h=Date:To:From:Subject:From:Reply-To:Subject:To:Cc; b=jmECO1QO2veIHazzFRiNk/uCY3wkoRYcNO5noGHAH2NLsTHxwWDyhO3BVkx1F+TkF rwNAVfb54oqbmYcYfkfpUQZbHkc07Ip68uInsjrlaY9S2fcn8YSu0uNRQlznUVXYvp zoQS626yj8bFJSOF1JQHnuEKqE34a9fVrblNYRxI=
Content-Type: multipart/alternative; boundary="------------obbTH9Oh0U0R428EgM83fri0"
Message-ID: <25a4a6ed-5b00-c900-c9c6-b83dd45b4003@nic.cz>
Date: Wed, 07 Jun 2023 12:35:02 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0
To: cbor@ietf.org
Content-Language: en-US, cs
From: Maria Matejka <maria.matejka@nic.cz>
X-Virus-Scanned: clamav-milter 0.103.7 at mail
X-Virus-Status: Clean
X-Rspamd-Server: mail
X-Rspamd-Pre-Result: action=no action; module=multimap; Matched map: WHITELISTED_IP
X-Rspamd-Queue-Id: 437D11C1382
X-Spamd-Bar: /
X-Spamd-Result: default: False [-0.10 / 20.00]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; ARC_NA(0.00)[]; WHITELISTED_IP(0.00)[2001:1488:fffe:6:ffff:ffff:ffff:31]; FROM_HAS_DN(0.00)[]; ASN(0.00)[asn:25192, ipnet:2001:1488::/32, country:CZ]
X-Rspamd-Action: no action
Archived-At: <https://mailarchive.ietf.org/arch/msg/cbor/5LWgnhxCZBdfFJQF9nZ_gXXfLWY>
Subject: [Cbor] Using packed CBOR in BIRD's custom protocol
X-BeenThere: cbor@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "Concise Binary Object Representation \(CBOR\)" <cbor.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cbor>, <mailto:cbor-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cbor/>
List-Post: <mailto:cbor@ietf.org>
List-Help: <mailto:cbor-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cbor>, <mailto:cbor-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 07 Jun 2023 10:40:23 -0000
Hello! We're planning to implement a machine-friendly protocol for common and generic communication between BIRD and the surroundings, like GUIs and CLIs or automation machinery. (Currently, everybody is parsing our CLI, which is an awful mess.) We decided to go with CBOR and I'd like to consult with you whether our way is reasonable, and also ask some questions, as we're newbies in this area, if you don't mind. We're definitely going for the packed CBOR as our data can easily get annoyingly big if not packed. Yet we typically don't know the actual contents of the dictionary when starting to pack – and we don't like caching the data either before sending it to generate the dictionary to the beginning. Is there any possibility to send dictionary updates? I'm quite confused by the wording of section 3 of draft-ietf-cbor-packed-08 – at least my concerns are partially relieved by the Appendix A. I'm reading it this way – when we have anything to pack, we open a new 113-tag enclosing the rest of the message … and as soon as we find something more to add to the dictionary, we *nest* the 113-tags and we put the new values to the end of the dictionary by explicitly marking them by their tags. Is this a valid understanding of that section? Or should we better go for value-sharing by Marc A. Lehmann with tags 28 and 29 in this kind of setup? For the in-socket format, I'm also missing a possibility to explicitly say "the following object (data item) is exactly N bytes long" to allow for easier data management – shall we define this functionality and register it as a tag? And also we're going to encode routing information (like BGP attributes) which may need a standardized representation, yet it's just a map (in case of one route) or a map of maps (full RIB). I think that in this case, it doesn't deserve a tag, yet it may be handy to write an informational RFC about that. Is this the right way to go? Thank you for helping us. -- Maria Matejka | BIRD Team Leader | CZ.NIC, z.s.p.o.
- [Cbor] Using packed CBOR in BIRD's custom protocol Maria Matejka
- Re: [Cbor] Using packed CBOR in BIRD's custom pro… Carsten Bormann
- Re: [Cbor] Using packed CBOR in BIRD's custom pro… Carsten Bormann
- Re: [Cbor] Using packed CBOR in BIRD's custom pro… Michael Richardson
- Re: [Cbor] Using packed CBOR in BIRD's custom pro… Wolf McNally
- Re: [Cbor] Using packed CBOR in BIRD's custom pro… Maria Matejka
- Re: [Cbor] Using packed CBOR in BIRD's custom pro… Maria Matejka
- Re: [Cbor] Using packed CBOR in BIRD's custom pro… Carsten Bormann
- Re: [Cbor] Using packed CBOR in BIRD's custom pro… Carsten Bormann
- Re: [Cbor] Using packed CBOR in BIRD's custom pro… Michael Richardson
- Re: [Cbor] Using packed CBOR in BIRD's custom pro… Vadim Goncharov