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]