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, . [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, . [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, . [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, . [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . 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, . [rfc8489] "[Reference Not Found!]". Hallam-Baker Expires 30 December 2023 [Page 6]