Internet DRAFT - draft-hallambaker-mesh-presence
draft-hallambaker-mesh-presence
Network Working Group P. M. Hallam-Baker
Internet-Draft ThresholdSecrets.com
Intended status: Informational 28 June 2023
Expires: 30 December 2023
Mathematical Mesh 3.0 Part XI: Mesh Presence Service
draft-hallambaker-mesh-presence-02
Abstract
https://mailarchive.ietf.org/arch/browse/mathmesh/
(http://whatever)Discussion of this draft should take place on the
MathMesh mailing list (mathmesh@ietf.org), which is archived at .
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on 30 December 2023.
Copyright Notice
Copyright (c) 2023 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/
license-info) in effect on the date of publication of this document.
Please review these documents carefully, as they describe your rights
and restrictions with respect to this document.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Definitions . . . . . . . . . . . . . . . . . . . . . . . . . 2
Hallam-Baker Expires 30 December 2023 [Page 1]
Internet-Draft Mesh Presence Service June 2023
2.1. Related Specifications . . . . . . . . . . . . . . . . . 3
2.2. Defined Terms . . . . . . . . . . . . . . . . . . . . . . 3
2.3. Requirements Language . . . . . . . . . . . . . . . . . . 3
2.4. Implementation Status . . . . . . . . . . . . . . . . . . 3
3. Message Format . . . . . . . . . . . . . . . . . . . . . . . 3
4. Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . 3
4.1. Client Initiated . . . . . . . . . . . . . . . . . . . . 4
4.1.1. Subscribe . . . . . . . . . . . . . . . . . . . . . . 4
4.1.2. Unsubscribe . . . . . . . . . . . . . . . . . . . . . 4
4.1.3. Status . . . . . . . . . . . . . . . . . . . . . . . 4
4.1.4. DNS Proxy . . . . . . . . . . . . . . . . . . . . . . 4
4.2. Service Initiated . . . . . . . . . . . . . . . . . . . . 4
4.2.1. Publish . . . . . . . . . . . . . . . . . . . . . . . 4
5. UDP Transport Binding . . . . . . . . . . . . . . . . . . . . 5
5.1. Service to Client Message . . . . . . . . . . . . . . . . 5
5.2. Client to Service Message . . . . . . . . . . . . . . . . 5
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 5
8. Normative References . . . . . . . . . . . . . . . . . . . . 5
9. Informative References . . . . . . . . . . . . . . . . . . . 6
1. Introduction
Mesh Presence Protocol (MPP) is a UDP publish/subscriber protocol.
Devices subscribed to an event notification service associated with
an account receive UDP notification of events posted to that channel.
This service may be used to provide subscribing devices with
immediate of an event without the need for polling.
Uses of the presence service include notifying a device that an
inbound synchronous communication session has been requested, receipt
of an asynchronous message, updates to a Mesh catalog, etc.
MPP provides NAT traversal capabilities similar to those provided by
STUN . Combining these capabilities with a presence service avoids
the need for a separate service. [rfc8489]
All MPP packets are encapsulated as RUD datagrams. Messages from the
client to the service are limited to a single packet. Messages from
the service to the client may contain between 1 and 16 packets.
2. Definitions
This section presents the related specifications and standards....
Hallam-Baker Expires 30 December 2023 [Page 2]
Internet-Draft Mesh Presence Service June 2023
2.1. Related Specifications
The Mesh Callsign registry is a component part of the Mathematical
Mesh [draft-hallambaker-mesh-architecture] and makes use of the data
formats and service formats described therein. In particular:
Uniform Data Fingerprint [draft-hallambaker-mesh-udf]. Describes the
UDF format used to represent cryptographic nonces, keys and
content digests in the Mesh and the use of Encrypted Authenticated
Resource Locators (EARLs) and Strong Internet Names (SINs) that
build on the UDF platform.
Data at Rest Encryption [draft-hallambaker-mesh-dare]. Describes the
cryptographic message and append-only sequence formats used in
Mesh applications and the Mesh Service protocol.
JSON-BCD Encoding [draft-hallambaker-jsonbcd]. Describes extensions
to the JSON serialization format to allow direct encoding of
binary data (JSON-B), compressed encoding (JSON-C) and extended
binary data encoding (JSON-D). Each of these encodings is a
superset of the previous one so that JSON-B is a superset of JSON,
JSON-C is a superset of JSON-B and JSON-D is a superset of JSON-C.
2.2. Defined Terms
This document makes use of the terms defined in
[draft-hallambaker-mesh-architecture].
2.3. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].
2.4. Implementation Status
The implementation status of the reference code base is described in
the companion document [draft-hallambaker-mesh-developer].
The examples in this document were created on 28-Jun-23 5:01:01 PM.
Out of 250 examples, 50 failed.
3. Message Format
4. Protocol
Hallam-Baker Expires 30 December 2023 [Page 3]
Internet-Draft Mesh Presence Service June 2023
4.1. Client Initiated
Client initiated messages MAY be sent via either Web Service
transport or UDP transport.
4.1.1. Subscribe
The
4.1.1.1. Request
4.1.1.2. Responses
4.1.2. Unsubscribe
4.1.2.1. Request
4.1.2.2. Response
4.1.3. Status
The status interaction requests that the service resend the last
publication message sent.
4.1.3.1. Request
The Status Response message
4.1.3.2. Response
4.1.4. DNS Proxy
4.1.4.1. Request
4.1.4.2. Response
4.2. Service Initiated
Service initiated messages MUST be sent via UDP transport
4.2.1. Publish
The publish message is
Hallam-Baker Expires 30 December 2023 [Page 4]
Internet-Draft Mesh Presence Service June 2023
4.2.1.1. Status
Serial Serial number of the status response.
IP Endpoint The IP Endpoint from which the last UDP communication
from the client was received.
DateTime The current date and time in ticks and leap seconds.
Store Status A list of status values for stores that have been
updated.
4.2.1.2. Acknowledgement
The acknowledgement message acknowledges receipt of a Status message.
5. UDP Transport Binding
5.1. Service to Client Message
5.2. Client to Service Message
6. IANA Considerations
This document requires no IANA actions.
7. Acknowledgements
8. Normative References
[draft-hallambaker-jsonbcd]
Hallam-Baker, P., "Binary Encodings for JavaScript Object
Notation: JSON-B, JSON-C, JSON-D", Work in Progress,
Internet-Draft, draft-hallambaker-jsonbcd-23, 23 October
2022, <https://datatracker.ietf.org/doc/html/draft-
hallambaker-jsonbcd-23>.
[draft-hallambaker-mesh-architecture]
Hallam-Baker, P., "Mathematical Mesh 3.0 Part I:
Architecture Guide", Work in Progress, Internet-Draft,
draft-hallambaker-mesh-architecture-21, 23 October 2022,
<https://datatracker.ietf.org/doc/html/draft-hallambaker-
mesh-architecture-21>.
[draft-hallambaker-mesh-dare]
Hallam-Baker, P., "Mathematical Mesh 3.0 Part III : Data
At Rest Encryption (DARE)", Work in Progress, Internet-
Hallam-Baker Expires 30 December 2023 [Page 5]
Internet-Draft Mesh Presence Service June 2023
Draft, draft-hallambaker-mesh-dare-16, 23 October 2022,
<https://datatracker.ietf.org/doc/html/draft-hallambaker-
mesh-dare-16>.
[draft-hallambaker-mesh-udf]
Hallam-Baker, P., "Mathematical Mesh 3.0 Part II: Uniform
Data Fingerprint.", Work in Progress, Internet-Draft,
draft-hallambaker-mesh-udf-17, 23 October 2022,
<https://datatracker.ietf.org/doc/html/draft-hallambaker-
mesh-udf-17>.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/rfc/rfc2119>.
9. Informative References
[draft-hallambaker-mesh-developer]
Hallam-Baker, P., "Mathematical Mesh: Reference
Implementation", Work in Progress, Internet-Draft, draft-
hallambaker-mesh-developer-10, 27 July 2020,
<https://datatracker.ietf.org/doc/html/draft-hallambaker-
mesh-developer-10>.
[rfc8489] "[Reference Not Found!]".
Hallam-Baker Expires 30 December 2023 [Page 6]