<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.39 (Ruby 3.2.3) -->
<?rfc comments="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-kolomytsev-pshmp-overview-00" category="info" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title abbrev="PSHMP">Proactive Self-Healing Mesh Protocol (PSHMP)</title>
    <seriesInfo name="Internet-Draft" value="draft-kolomytsev-pshmp-overview-00"/>
    <author initials="A." surname="Kolomytsev" fullname="Alexander Kolomytsev">
      <organization>Independent Researcher</organization>
      <address>
        <email>giro.pandemik@gmail.com</email>
      </address>
    </author>
    <date year="2026" month="August"/>
    <area>Internet</area>
    <workgroup/>
    <keyword>self-healing</keyword>
    <keyword>overlay</keyword>
    <keyword>mesh</keyword>
    <keyword>decentralized</keyword>
    <keyword>transport</keyword>
    <abstract>
      <?line 35?>

<t>This document describes the Proactive Self-Healing Mesh Protocol (PSHMP), a decentralized overlay transport architecture designed to improve resilience and availability in distributed IP networks.</t>
      <t>PSHMP operates as an L4-oriented overlay above existing IP infrastructure. It continuously evaluates path quality and proactively reconstructs routes before degradation becomes service-impacting.</t>
      <t>The architecture combines decentralized topology discovery, adaptive path selection, batch acknowledgements, and transport abstraction to provide reliable communication under unstable network conditions without requiring modifications to underlying IP routing.</t>
      <t>This document presents the protocol architecture, design principles, and an overview of an experimental implementation. It does not specify an Internet Standard.</t>
    </abstract>
  </front>
  <middle>
    <?line 45?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Distributed systems increasingly operate across heterogeneous, partially unreliable, and dynamically changing network environments. Traditional recovery mechanisms typically react only after packet loss or path failure has already occurred. As a result, recovery latency is often measured in seconds and depends on routing convergence or application-level timeouts.</t>
      <t>PSHMP proposes a different approach. Participating nodes continuously evaluate the quality of available paths and proactively rebuild overlay routes when degradation is detected, aiming to restore connectivity before complete failure occurs.</t>
      <t>The protocol is designed as a decentralized L4-oriented overlay. It does not replace or modify IP routing (L3). Instead, it constructs and maintains an adaptive mesh of transport-level paths above the existing network.</t>
    </section>
    <section anchor="design-goals">
      <name>Design Goals</name>
      <t>The primary design goals of PSHMP are:</t>
      <ul spacing="normal">
        <li>
          <t>Proactive route recovery based on continuous quality estimation</t>
        </li>
        <li>
          <t>Fully decentralized operation without mandatory central control</t>
        </li>
        <li>
          <t>Independence from specific underlying transport protocols</t>
        </li>
        <li>
          <t>Efficient control-plane traffic</t>
        </li>
        <li>
          <t>Compatibility with existing IP infrastructure</t>
        </li>
        <li>
          <t>Scalability to large numbers of participating nodes</t>
        </li>
        <li>
          <t>Minimal deployment requirements</t>
        </li>
      </ul>
    </section>
    <section anchor="architectural-overview">
      <name>Architectural Overview</name>
      <t>PSHMP is implemented as an overlay transport layer. Nodes form a dynamic mesh and exchange topology and quality information.</t>
      <t>The architecture consists of the following logical components:</t>
      <ul spacing="normal">
        <li>
          <t>Node Manager</t>
        </li>
        <li>
          <t>Path Quality Evaluation (K-Factor)</t>
        </li>
        <li>
          <t>Path Selection and Chain Relay</t>
        </li>
        <li>
          <t>Self-Healing Engine</t>
        </li>
        <li>
          <t>Gossip-based Synchronization</t>
        </li>
        <li>
          <t>DHT-based Fallback Discovery</t>
        </li>
        <li>
          <t>Batch Acknowledgement Subsystem</t>
        </li>
        <li>
          <t>Adaptive Transport Abstraction</t>
        </li>
      </ul>
    </section>
    <section anchor="overlay-operation">
      <name>Overlay Operation</name>
      <t>Each node periodically exchanges topology and quality information with a subset of peers. Multiple candidate paths are maintained concurrently. When the quality of an active path falls below a configurable threshold, traffic is redirected to an alternative path that has already been evaluated.</t>
      <t>This approach reduces recovery latency compared with purely reactive failover mechanisms.</t>
    </section>
    <section anchor="path-quality-evaluation-k-factor">
      <name>Path Quality Evaluation (K-Factor)</name>
      <t>PSHMP uses a composite metric called K-Factor to estimate path and node stability. The metric may incorporate:</t>
      <ul spacing="normal">
        <li>
          <t>packet loss</t>
        </li>
        <li>
          <t>round-trip time</t>
        </li>
        <li>
          <t>jitter</t>
        </li>
        <li>
          <t>optional node health indicators</t>
        </li>
      </ul>
      <t>The resulting value is intended to reflect the likelihood of future degradation rather than instantaneous connectivity alone. Implementations may use different weighting functions according to deployment requirements.</t>
    </section>
    <section anchor="proactive-recovery">
      <name>Proactive Recovery</name>
      <t>Recovery is organized into logical phases:</t>
      <ol spacing="normal" type="1"><li>
          <t>Degradation detection</t>
        </li>
        <li>
          <t>Alternative path selection</t>
        </li>
        <li>
          <t>Route activation</t>
        </li>
        <li>
          <t>Retirement of the degraded path</t>
        </li>
      </ol>
      <t>Prototype measurements have shown average recovery times on the order of several hundred milliseconds under the evaluated conditions. Actual performance depends on network topology and configuration.</t>
    </section>
    <section anchor="decentralized-coordination">
      <name>Decentralized Coordination</name>
      <t>PSHMP does not require a permanently available central controller. Topology and quality information are disseminated using gossip-style synchronization. When coordinators are unavailable, DHT-based mechanisms allow peer discovery and basic operation to continue.</t>
      <t>Optional consensus mechanisms (for example Raft) may be used in deployments that require stronger consistency for control-plane state.</t>
    </section>
    <section anchor="control-traffic-optimization">
      <name>Control Traffic Optimization</name>
      <t>To reduce overhead, PSHMP aggregates acknowledgements. Receivers transmit cumulative acknowledgements together with lists of missing fragments (Gap List) instead of acknowledging every packet individually.</t>
      <t>Prototype evaluations indicate that this approach can substantially reduce control traffic compared with traditional per-packet acknowledgement strategies.</t>
    </section>
    <section anchor="transport-abstraction">
      <name>Transport Abstraction</name>
      <t>PSHMP is intentionally transport-independent. Implementations may operate over:</t>
      <ul spacing="normal">
        <li>
          <t>UDP</t>
        </li>
        <li>
          <t>DTLS</t>
        </li>
        <li>
          <t>WebRTC Data Channels</t>
        </li>
        <li>
          <t>other suitable bidirectional transports</t>
        </li>
      </ul>
      <t>The choice of underlying transport is considered an implementation detail.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>Security mechanisms are considered orthogonal to the core routing and recovery architecture. Possible approaches include:</t>
      <ul spacing="normal">
        <li>
          <t>DTLS / TLS</t>
        </li>
        <li>
          <t>message authentication (e.g., HMAC)</t>
        </li>
        <li>
          <t>rate limiting</t>
        </li>
        <li>
          <t>admission control</t>
        </li>
      </ul>
      <t>This document does not mandate a specific security framework.</t>
    </section>
    <section anchor="scalability-considerations">
      <name>Scalability Considerations</name>
      <t>The architecture is intended to support deployments ranging from small groups of nodes to several thousand participants. Prototype testing has demonstrated operation with more than five thousand simulated nodes. No hard architectural limit is defined.</t>
    </section>
    <section anchor="implementation-status-and-structure">
      <name>Implementation Status and Structure</name>
      <t>An experimental implementation of PSHMP exists in the Go programming language. The implementation validates the architectural concepts described in this document and currently exceeds 13,000 lines of code.</t>
      <t>The codebase is organized into the following primary packages:</t>
      <ul spacing="normal">
        <li>
          <t><tt>pkg/node</tt> — Node lifecycle and management</t>
        </li>
        <li>
          <t><tt>pkg/probing</tt> — K-Factor calculation and active probing</t>
        </li>
        <li>
          <t><tt>pkg/chain</tt> — Chain Relay and path construction</t>
        </li>
        <li>
          <t><tt>pkg/healing</tt> — Self-Healing Engine</t>
        </li>
        <li>
          <t><tt>pkg/gossip</tt> — Decentralized state dissemination</t>
        </li>
        <li>
          <t><tt>pkg/dht</tt> — DHT-based fallback discovery</t>
        </li>
        <li>
          <t><tt>pkg/ack</tt> — Batch ACK and Gap List handling</t>
        </li>
        <li>
          <t><tt>pkg/coordinator</tt> — Optional coordination, sharding and Raft support</t>
        </li>
        <li>
          <t><tt>pkg/transport</tt> — Transport abstraction (UDP, WebRTC, DTLS)</t>
        </li>
      </ul>
      <t>The implementation has been used for both emulation-based testing (up to 5,000 nodes) and limited real-network experiments.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC768">
          <front>
            <title>User Datagram Protocol</title>
            <author fullname="J. Postel" initials="J." surname="Postel"/>
            <date month="August" year="1980"/>
          </front>
          <seriesInfo name="STD" value="6"/>
          <seriesInfo name="RFC" value="768"/>
          <seriesInfo name="DOI" value="10.17487/RFC768"/>
        </reference>
        <reference anchor="RFC8446">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="August" year="2018"/>
            <abstract>
              <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol. TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
              <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961. This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8446"/>
          <seriesInfo name="DOI" value="10.17487/RFC8446"/>
        </reference>
      </references>
    </references>
    <?line 170?>

<section anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The author would like to thank all reviewers and practitioners working on resilient and decentralized networking architectures.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA5VZ23IctxF9ZxX/AeW8kKrdNSUrjs2nMNS1LFmKyJQfUqkE
O4PdRYgZjAcYUuunfES+MF+ScxrAzCxJ2UmVStqZARp9OX26G1oul8dH0UZn
ztVXH3uvq2hvjboybrN8Y7Sz7Va9N2Gn8C36yjt18vHqzfuPp18dH+n1uje3
3Mc3eFH7qtUNJNW93sTljXe+2cdgbpdd2DXd0t+a/taau+XZGRbriJXPzp59
uzz77viowuPW9/tzZduNPz46PrJdf65iP4T47Ozs+7NnOLA3Gse9baPpWxNx
4p3vb7a9Hzq8xuON2eNNfX58pNRSBRqxS0akN1TA6X16aGBW+lWbyrSxx8Jf
TJ1e4akNne8jNQlRt/XftfOtEY3M8VFnz9Vf4ZCFCljUm03Ar32TflS+aSAw
/I2b9RB3vk8q8S8FA8O5ulipH0b/pPfJdxfOfMZxpn/w3fdb3dpfdLS+PVdv
saYz+KuN6pMJRvfVzvRppWm0dedqa3u/6iissTd/3PLlCrpRq9b3jWaoRbFP
ry6fPX36/bm4He6/9+0P335Xfn73/Pm3smy5XCq9DvBTJT663tmgAICBlsOj
oert2gQVd0b9P7haKH0YjxK0KSSKptpoqjj0hkfZbYt10SvbdD2Wqx7vnDVt
ZRSsV/oWlus1XsU9vK9qC73teojY9fajApSIo7CiHaKF8p3pAcigNP606t3z
pe8hL87U0WueZD5DFo2BHHiu15A8iGIr9TYCCS2+Dn4Ibq/MrXaDSO103Kmf
By0KUcOueAjLeoNdSUxQwDY3rA2CQlu3va4FAHiFUOJTYE5VZgnbKaLdrlI4
zKGbsHhtW6w/dG70HVC23dMnFU3bIwC17iRaoiayCCJw4kKtdax2Slc3rb9z
pt4aQflCLJhFJ6OCSiImjIitGRNn9dqJJs3Q2iqZMQjUBxgsH3Ms6LjackFQ
dxYJNEQI+HmwPX3d+NpusoDAM0SI2+c40GeTH+aw7AAMqiyo7Ary5n5aZDzh
q20r2zmT7QMKCn0pv+Gj+QyQWMrVjshz4g5RSmJfe3i79VGFzlR2w0CrQl3q
ipSi+3pVcqmxde0Mn37HVb2vB3Eh37yY4TXsQzRNANgqsGGAnYBMhitC0/sQ
1M7gFL81rQHwFghjH612WDe0JQrJqHoPzoEj+a3a6XZLD5YQmPYW/NFKjFfq
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
zg2ro/8CEfgVf4wcAAA=

-->

</rfc>
