Re: [core] Interest in defining CoAP over Unix Domain sockets?

Jon Shallow <> Wed, 14 December 2022 15:09 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 8C1DFC1522A7 for <>; Wed, 14 Dec 2022 07:09:36 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -6.899
X-Spam-Status: No, score=-6.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id Pos6CEvKyhHN for <>; Wed, 14 Dec 2022 07:09:33 -0800 (PST)
Received: from ( []) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 278C4C1524C8 for <>; Wed, 14 Dec 2022 07:09:32 -0800 (PST)
Received: from [] (helo=N01332) by with esmtp (Exim 4.92.3) (envelope-from <>) id 1p5TNy-0004yz-9K; Wed, 14 Dec 2022 15:09:30 +0000
From: Jon Shallow <>
To: 'Carsten Bormann' <>
References: <004601d90ee3$dd59df80$980d9e80$> <>
In-Reply-To: <>
Date: Wed, 14 Dec 2022 15:09:09 -0000
Message-ID: <014a01d90fce$043349d0$0c99dd70$>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQI0eiyo13tkLZMJo+2rfTYfx7famQFWV2EZravxh2A=
Content-Language: en-gb
Archived-At: <>
Subject: Re: [core] Interest in defining CoAP over Unix Domain sockets?
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "Constrained RESTful Environments \(CoRE\) Working Group list" <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 14 Dec 2022 15:09:36 -0000

Hi Carsten,

> I agree that this would be useful practical addition.
> While interoperability would be limited to a single system, different software
> does need to interact on a system, so having a common specification for doing
> this is useful.


> > Defining what a Unix Domain CoAP URI looks like for a client to parse is the
> > more contentious area
> The important consideration is that this needs to be compatible with the URI
> standard RFC 3986 (STD 66 [1]), so various libraries that might process the URI
> before it gets to the CoAP implementation are not confused.  (This will also
> enable compatibility with draft-ietf-core-href [2].)


> For one useful analogy, Jupyter seems to allow
> http+unix://%2Ftmp%2Ftest.sock/ [3].
> I think Jupyter’s syntax is compatible with STD 66, while brackets are not
> (these are used for IPv6 or IPvFuture, and we probably don’t want to declare
> UNIX domain sockets as IPv4711).

At least someone is taking the plunge.  Understood about the brackets - the usage of %2F is just about human parseable.

> I’m thinking about a way to shoe this into the existing URI-schemes, e.g., by
> saying that an initial / (percent-encoded %2F) in a reg-name triggers a switch to
> UNIX domain.
> This would save adding four more URI schemes, but does smell a bit hacky.

While the initial %2F is unlikely to break parsers, I think I would prefer it to only be triggered if there was a +unix in the scheme to assume that a Unix domain is being specified.