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

Esko Dijk <esko.dijk@iotconsultancy.nl> Fri, 16 December 2022 12:01 UTC

Return-Path: <esko.dijk@iotconsultancy.nl>
X-Original-To: core@ietfa.amsl.com
Delivered-To: core@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 038CBC1522CD for <core@ietfa.amsl.com>; Fri, 16 Dec 2022 04:01:07 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.099
X-Spam-Level:
X-Spam-Status: No, score=-7.099 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_HI=-5, RCVD_IN_MSPIKE_H2=-0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_PASS=-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=iotconsultancy.nl
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 UnXC3mZ6PnXH for <core@ietfa.amsl.com>; Fri, 16 Dec 2022 04:01:01 -0800 (PST)
Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04on2094.outbound.protection.outlook.com [40.107.6.94]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 49716C1522BB for <core@ietf.org>; Fri, 16 Dec 2022 04:00:59 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=L9l38BNoZjD7QZmxRWu2d5ezyDS/A6mYOnNxGm+7N94Zqxp8jj8Y3w3Whn+fNqHbC6jZlYFOtY43hZpIwysdKiHUXLE4zc/oyKClpOV6tBsIkcfBeRtfvsCIsj/RA6hNZS83CD3+vzdDetuA1h8zAjG7U32T/JiaiGqBH4YU+LTbrMI+MXSKsC83txBR7xNad2soe5HDgIq+Xemf57Wog/CTOjGsOaWXiNqY4SRwWQh5RkCW18623EdhfAb8HZvPZ2ekObMfkJHtPOrjO2NUaiYhobtkbUonYtzTUj1NvrzTrB0smYEyUmAju6o2EVaqmEcOPw9kA03FMDpP5kX0qg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=5H2KRt7QrLLO5UVVyisgWh69oNDfqB+UIDf4H51fb4g=; b=UGe03aQGXRCvTX3Kvv1WfOg5hGXTfVK8JsmPQ/qNryHqdBL2H9KThcLn0gRYLWG8Cdn/fmwA7htSFPNkkMyD3fvZAJ8wy5P2uLmZbDg4jA1gQMxc8R8z9vjK+L0lghX8CNXtbq1uuNtQbiXABwFeMCWHybWy6vLuwLvVBHc1YEgBevbXSfkq4XPnhjnCmE22z9rCdP72jpUcPzcxnPAp/haaMBKTMaOOdPH+dZJ9vavZzaRrryTqdOKbGPVqyM+XUMxQZCeVP6WDTYDoPriIbkpDdcprv4WCwOxdEtOdgjU2idcCGVXafM+VpVf29NW8NhtMqIRQOXeGLowHZ0xdSg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=iotconsultancy.nl; dmarc=pass action=none header.from=iotconsultancy.nl; dkim=pass header.d=iotconsultancy.nl; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iotconsultancy.nl; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5H2KRt7QrLLO5UVVyisgWh69oNDfqB+UIDf4H51fb4g=; b=Y9zy9nMB8ARXSmWRM/OGrubcgkd6BP1COCEU6Vxzf24ZF3ffKm6Yg6WOAdBKxyJPNDNBDV0NXQobQ1+WajaTp0KVRfQodH0/QDPrpeCe/8vdBbZyWOWabrzBnyStfzD+iInGYo12aiRCSzCHlUQfj0iljQEE0QmmF7x6VRYXehk=
Received: from DU0P190MB1978.EURP190.PROD.OUTLOOK.COM (2603:10a6:10:3b9::20) by GV1P190MB1875.EURP190.PROD.OUTLOOK.COM (2603:10a6:150:62::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5924.11; Fri, 16 Dec 2022 12:00:56 +0000
Received: from DU0P190MB1978.EURP190.PROD.OUTLOOK.COM ([fe80::7f21:781:e808:be2]) by DU0P190MB1978.EURP190.PROD.OUTLOOK.COM ([fe80::7f21:781:e808:be2%9]) with mapi id 15.20.5924.012; Fri, 16 Dec 2022 12:00:56 +0000
From: Esko Dijk <esko.dijk@iotconsultancy.nl>
To: Michael Richardson <mcr@sandelman.ca>, Carsten Bormann <cabo@tzi.org>, Jon Shallow <supjps-ietf@jpshallow.com>, "core@ietf.org WG (core@ietf.org)" <core@ietf.org>
Thread-Topic: [core] Interest in defining CoAP over Unix Domain sockets?
Thread-Index: AdkO49fbjJ0CUpB7S4ehQgS5OqB0NQA0zJuAAAW+coAABK/9AAAQonUAAAT1IYAAGfhOgAAokA4A
Date: Fri, 16 Dec 2022 12:00:56 +0000
Message-ID: <DU0P190MB197805BF4E0CBE19A3CA9C78FDE69@DU0P190MB1978.EURP190.PROD.OUTLOOK.COM>
References: <004601d90ee3$dd59df80$980d9e80$@jpshallow.com> <E270AC49-755E-4275-9F69-2D08B542E537@tzi.org> <014a01d90fce$043349d0$0c99dd70$@jpshallow.com> <016701d90fe0$c49d3bb0$4dd7b310$@jpshallow.com> <15065.1671067180@localhost> <D1FE0244-A7A0-4B41-BA65-A5D1C3A32523@tzi.org> <20211.1671120313@localhost>
In-Reply-To: <20211.1671120313@localhost>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=iotconsultancy.nl;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: DU0P190MB1978:EE_|GV1P190MB1875:EE_
x-ms-office365-filtering-correlation-id: f2eff724-c322-4767-1add-08dadf5d3070
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: UomzU5epOAV9rTLot4AG9HP1WR8EZB7Is8krgdj4q6T4RXiXGPxUaxzZwMvErdlg2S8tjJJFxA5JK81U9bDJ2IXrOZcIMNgvkJllDac8ycbuBzJJdv69Ugb6NmdXA+RO/E0JhU6oRGyznSbXT4hJRWMsTUJ7n3bZwN4xHVRsM1t/ae4/GxhDJ/jTxr03VaPgZzo7f0Fn/gGeQZiBKhujpz5kfjd8jFG1RuX3u1BU3g2qdMht7jkeXeoo+6QkWPth0mrW7O40LfevwNpbHHs8VI1e4RdV0hZ1eR4toJsNSyM22YK31YxYsvKe8QFkNXsdpD9EIg1QN7lvs+m6EyFaC/diy7fYI6czm2EnhbDnS3et2Ocpvi39s7PFqsg+Vvpkuw+Q3qCU7k54hZXzM9B5nudyJo8FSh6HTE8lCSGhtRniJLppxu2HDM8DW6/NX7s6ZrONkBoPqNAm9gnaUpVg0ODDXBSumpJeGUFv/8gToKoFrjdwrDI96Q7iu0kaQHGRUJH4uBbVekyI4NMKFHNpzpaplg/sDnj1nc5lC40XY8LOwneYbmQnOUMq8ANUga+uuHbedKHuoXuaqxKB3ZvKnLnnN6uojFfIvvU1ln+/XybYl+wdtSPbCgBW5svQXwDzijMkVYtuExj0Uy3x0nFqRHLlNvXt5AeFYw1Xn0gfifvcRf5XYEc/Fh/Fbfb60sumj3ctzTzGyVmeSI0T3Ceb1atjcmBtp8iQpbO9Qvb0AWQ=
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU0P190MB1978.EURP190.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFS:(13230022)(366004)(396003)(346002)(136003)(39830400003)(376002)(451199015)(83380400001)(186003)(86362001)(316002)(478600001)(110136005)(38070700005)(55016003)(6506007)(122000001)(9686003)(38100700002)(33656002)(7696005)(53546011)(44832011)(8676002)(966005)(5660300002)(52536014)(64756008)(66446008)(2906002)(66556008)(41300700001)(66476007)(76116006)(71200400001)(66946007)(8936002); DIR:OUT; SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: cldS4dARUkIxLOdtJOwZIu6PXv+jYFzNSlk+Ex2sn5fMyZt/1+m97UzTF7u3GBI8fIXhqJoER6N4NTR3DueNL03KH1ElnBbzBLmOS+Y0R9eOxlHF5ydsJ650DpwgGz0hXZyfIBiKbhWeN44mWRuftjrF7NEYurgz4DvaEK3sqcz+q91qYianoeVWa+kVdmflZpt7n/VxwxIfBD76XjUOr9EVBnygeXl3N54VOBZQBwuauAyC5j5S23s1tPHrY+rn2UlUDiY9tLBWxwe1om7mO5rNOlBsko3m5RuLBPUVyF1JVLXmB8nLQ2iUS2D3jhrAQKpTbBmpbnMH4tTrCdZoFADbPEFWe02RNY8OZWurUZtVGQj8oBvjgj/gH+0XkHgcIOgVpvOj5lFeYCNKn95++70NZllH7AAUkhvpdHO3gWXfreckxkesVKAWHOrKUWYznhYlz7f4IQJMHoed/nJninki6TbxsAOZ+UAl+P1VJIruyJnOxRSwjmyzL+KOgrlH4m7wRVVHUN3tT1lNVqQ3ShnWYMlUdKtXiH+PKU+uhXAiZLJbuQTIhtfaAYxcrfWEX3Scx8CNLLMo6NgySxKnMj3amGH6ZLg08DaQg4pYb6qSf17Bi2IQftr1UvPuSBHUTHXlPYL8mSh86bhBJ/N57Maa+KQHpeTCimgULUT7PrQFY/0dRmQlcD327+jo2H3zXcJAovhidlX0L23CPiaRAkqkcUk0pIsqYoFyDO2ifR3ZHfto6UemNPWuguy3dwFow0mEYB+48B7aQhG26ZrfHHP2VBGpT372j/dUhybERpeVsqDPfC0No2C/o461qaK/DoDPsiuAcikt0IodanLi+awR+YCiR5vdhaJ8oIYrTzG9deWMpPik1XEX/LG88eGpTlQrEraZdlAPskKDvK3gfxvQ5OQMWJMlpG4Zk4VAxCSYX3L3HIzAPMSgBRxfnI1evQwNJdhfcFwcozsc0kDqA4TDgXGujc+q6cY53xZR6GRtSo1s/1Kja7nA1pMyQg4NKXWuAamsSqjC7Tr/zSy+wjmiWdGJOoOvU3KOLA/mGq9DDkXv6+WpL33XUhYCG/m1NEuHstPoHONC9Ngs9/csegib+wtvCbwhv9ECtdMfuMF9xBDaABlJyfR+sOj3C8yK1F0ExqJRwf5OhSbvhHiIupS8AknGleGlIG1vjko7b/Acq1QUJE4rSIhUYpuDaGvSRaaaMSDupN/z7au5VWb0vF9surodL1JYVSj+Ns19/pPchAU8Ug4SqxXwq7orjK8h/7LAo3IxYCONSiQrWIYXRwNjo4FzBqSfddWK/oolYG72AUMryjNQVUdYduKzgeE4E1GxrWAxxVrLLAbFOOiY1e2pgmy+BxjMLih1DJ9BuSfTw3VjXQ8U7338cQshGmxlyBcGQ0IrnfEj0cdr3byrVNg4z62OChV4oUnIvNABDVHXAifYw5i3FqYKv/w62B7E0I4Fz+xVFo0kLHXgLG6F9e587VzANAzyyPykWziPV3mmQ4Fcb9GSbURP6rg5F/LzC9bsBsNQE4ktxOqihSPMXh6ZXgCLn31GANQYrsM8KFrXYGT6kqP4VV9G1pkLTMKabYyUAOawtEiWqNYt9EE2AJZePOqVERAwHL6LYF8z2ndFsB6OeOzsKusCUNPu58ha2TkTFJONYRBxMhxbkHKF4A==
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: iotconsultancy.nl
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: DU0P190MB1978.EURP190.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-Network-Message-Id: f2eff724-c322-4767-1add-08dadf5d3070
X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Dec 2022 12:00:56.3483 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 58bbf628-15d2-46bc-820b-863b6774d44b
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: s64odBHOdgWrVvUrIqij7VaSFCNdLFQYXo5h4Y2Kai4ZFeecJNAO9tqA7mmiveWgBZ5n5DST2j8bIZwzydkeJuPBcsynoIS51Tx2htzJ6rE=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1P190MB1875
Archived-At: <https://mailarchive.ietf.org/arch/msg/core/NaveDJ2kXzTJ0IZFVYLVafZRS_M>
Subject: Re: [core] Interest in defining CoAP over Unix Domain sockets?
X-BeenThere: core@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "Constrained RESTful Environments \(CoRE\) Working Group list" <core.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/core>, <mailto:core-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/core/>
List-Post: <mailto:core@ietf.org>
List-Help: <mailto:core-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/core>, <mailto:core-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 16 Dec 2022 12:01:07 -0000

There is also the option to re-use the RFC 8075 URI embedding scheme.  (Section 5.4.1.1 and 5.4.2.1 have examples)
This is the syntax of a CoAP proxy server, but it can be used also for regular CoAP servers.

It could look like this then:

coap+unix:///some/local/abspath/coap:///another/path

Or, when doing CoAP over TCP:

coap+unix:///some/local/path/coap+tcp:///another/path

So then only one new additional scheme would be required.

In the above proposal the host component is not included, since it's not needed, as the host is the socket listener process itself. This follows the section 5.4.2 of RFC 8075 approach. In case we want a hostname for clarity or future extendibility reasons, it may look like e.g.:

coap+unix:///some/local/abspath/coap://-/another/path
coap+unix:///some/local/abspath/coap://[::1]/another/path
coap+unix:///some/local/abspath/coap+tcp://[::1]/another/path

And if the socket endpoint is able to operate as a CoAP reverse proxy then URIs like below can also be used:
coap+unix:///some/local/abspath/coaps://myserver.example.com/another/path

Esko

PS this works based on the constraint that your Unix path segment cannot equal a Coap scheme name plus ':' character.
Some percent-encoding may be needed like for the square brackets.

-----Original Message-----
From: core <core-bounces@ietf.org> On Behalf Of Michael Richardson
Sent: Thursday, December 15, 2022 17:05
To: Carsten Bormann <cabo@tzi.org>; Jon Shallow <supjps-ietf@jpshallow.com>; core@ietf.org WG (core@ietf.org) <core@ietf.org>
Subject: Re: [core] Interest in defining CoAP over Unix Domain sockets?

Carsten Bormann <cabo@tzi.org> wrote:
    >> coap+unix:///some/local/path/another/path

    > Which part is the socket path, and which part is the URI path?

Oh. Yes.  I wasn't thinking that there would ever be a URI path, because in
Jon's use case, he is always just proxying to some servers.
But, of course there are other use cases.



_______________________________________________
core mailing list
core@ietf.org
https://www.ietf.org/mailman/listinfo/core