{
  "$schema": "/api/schemas/documents.schema.json",
  "apiVersion": "1.1.0",
  "lastModified": "2026-10-17T00:35:22.831Z",
  "sourcePath": "src/main/data/docs",
  "docId": "RFC6621",
  "document": {
    "abstract": "This document describes a Simplified Multicast Forwarding (SMF) mechanism that provides basic Internet Protocol (IP) multicast forwarding suitable for limited wireless mesh and mobile ad hoc network (MANET) use. It is mainly applicable in situations where efficient flooding represents an acceptable engineering design trade-off. It defines techniques for multicast duplicate packet detection (DPD), to be applied in the forwarding process, for both IPv4 and IPv6 protocol use. This document also specifies optional mechanisms for using reduced relay sets to achieve more efficient multicast data distribution within a mesh topology as compared to Classic Flooding. Interactions with other protocols, such as use of information provided by concurrently running unicast routing protocols or interaction with other multicast protocols, as well as multiple deployment approaches are also described. Distributed algorithms for selecting reduced relay sets and related discussion are provided in the appendices. Basic issues relating to the operation of multicast MANET border routers are discussed, but ongoing work remains in this area and is beyond the scope of this document. This document defines an Experimental Protocol for the Internet community.",
    "abstract$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML abstract",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
      "updated": "2026-10-16T20:44:22.488Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "authors": [
      {
        "name": "Joseph P. Macker"
      }
    ],
    "authors$meta": {
      "confidence": "high",
      "note": "Parsed from Datatracker doc page article:author (profile full names)",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
      "updated": "2026-10-16T20:44:22.488Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "docId": "RFC6621",
    "docId$meta": {
      "confidence": "high",
      "note": "Derived from RFC number or Datatracker identifier",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
      "updated": "2026-10-16T20:44:22.488Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "docLabel": "IETF RFC 6621",
    "docLabel$meta": {
      "confidence": "high",
      "note": "Constructed from provider and document identifier",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
      "updated": "2026-10-16T20:44:22.488Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "docNumber": "6621",
    "docNumber$meta": {
      "confidence": "high",
      "note": "Parsed from RFC info page report metadata",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
      "updated": "2026-10-16T20:44:22.488Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "docTitle": "Simplified Multicast Forwarding",
    "docTitle$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML title",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
      "updated": "2026-10-16T20:44:22.488Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "docType": "Experimental",
    "docType$meta": {
      "confidence": "high",
      "note": "Mapped from Datatracker std_level or RFC status text",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
      "updated": "2026-10-16T20:44:22.488Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "doi": "10.17487/RFC6621",
    "doi$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML doi",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
      "updated": "2026-10-16T20:44:22.488Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "href": "https://doi.org/10.17487/RFC6621",
    "href$meta": {
      "confidence": "high",
      "note": "Derived from DOI (https://doi.org/<doi>)",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
      "updated": "2026-10-16T20:44:22.488Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "keywords": [
      "Routing",
      "Flooding",
      "Optimized Flooding",
      "Cinema Digital Sound",
      "Connected Dominating Set",
      "Duplicate Packet Detection",
      "Hash-based Packet Detection",
      "Multipoint Relays",
      "MPR-CDS",
      "Edge Mobility",
      "Mobile Ad Hoc Networks",
      "Meshes"
    ],
    "keywords$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML keywords",
      "originalValue": [
        "Routing",
        "Flooding",
        "Optimized Flooding",
        "Cinema Digital Sound",
        "Connected Dominating Set",
        "Duplicate Packet Detection",
        "Hash-based Packet Detection",
        "Multipoint Relays",
        "MPR-CDS",
        "E-CDS",
        "Edge Mobility",
        "Mobile Ad Hoc Networks",
        "Meshes"
      ],
      "overridden": true,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
      "updated": "2026-10-17T00:35:22.831Z",
      "version": "extractDocs.js@commit:e15f05a0bdbb"
    },
    "pages": "55",
    "pages$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML page-count",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
      "updated": "2026-10-16T20:44:22.488Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "publicationDate": "2012-05-01",
    "publicationDate$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML date",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
      "updated": "2026-10-16T20:44:22.488Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "publisher": "IETF",
    "publisher$meta": {
      "confidence": "high",
      "note": "Static: provider",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
      "updated": "2026-10-16T20:44:22.488Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "references": {
      "bibliographic": [
        "RFC2501",
        "RFC3684",
        "RFC3973",
        "RFC4601",
        "orphan/RFC6621/h:edafee66",
        "orphan/RFC6621/h:6e6cd90d",
        "orphan/RFC6621/h:a8de05b5",
        "orphan/RFC6621/h:00d75f20",
        "orphan/RFC6621/h:28088b8c",
        "orphan/RFC6621/h:c7ed2c4a",
        "orphan/RFC6621/h:8aeb005a",
        "orphan/RFC6621/h:1c2b60cc",
        "orphan/RFC6621/h:39a5ef30",
        "orphan/RFC6621/h:61552201"
      ],
      "bibliographic$meta": {
        "confidence": "medium",
        "flag": "MIXED_REF_LAYOUT_RISK anchored=30 proseBlocks=36 skippedAnchorBlocks=32",
        "note": "Parsed from RFC HTML references/informative sections",
        "originalValue": [],
        "reviewRequired": true,
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
        "updated": "2026-10-16T20:44:22.488Z",
        "version": "extractDocs.js@commit:2c3b1db1b97b"
      },
      "normative": [
        "RFC791",
        "RFC2119",
        "RFC2460",
        "RFC2644",
        "RFC2780",
        "RFC3174",
        "RFC3626",
        "RFC4291",
        "RFC4302",
        "RFC5226",
        "RFC5444",
        "RFC5614",
        "RFC5771",
        "RFC6130",
        "orphan/RFC6621/h:536fe129"
      ],
      "normative$meta": {
        "confidence": "high",
        "note": "Parsed from RFC HTML normative references sections",
        "originalValue": [],
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
        "updated": "2026-10-16T20:44:22.488Z",
        "version": "extractDocs.js@commit:2c3b1db1b97b"
      }
    },
    "resolvedHref": "https://www.rfc-editor.org/info/rfc6621/",
    "resolvedHref$meta": {
      "confidence": "high",
      "note": "Final URL resolved via URL redirect verification",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
      "updated": "2026-10-16T20:44:22.488Z",
      "version": "extractDocs.js@commit:2c3b1db1b97b"
    },
    "status": {
      "active": true,
      "active$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
        "updated": "2026-10-16T20:44:22.488Z",
        "version": "extractDocs.js@commit:2c3b1db1b97b"
      },
      "errataExist": true,
      "errataExist$meta": {
        "confidence": "high",
        "note": "Derived from presence of errata links on RFC/Datatracker pages",
        "originalValue": null,
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
        "updated": "2026-10-16T20:44:22.488Z",
        "version": "extractDocs.js@commit:2c3b1db1b97b"
      },
      "errataUrl": [
        "https://www.rfc-editor.org/errata/rfc6621",
        "https://www.rfc-editor.org/errata_search.php?rfc=6621",
        "https://www.rfc-editor.org/rfc/inline-errata/rfc6621.html"
      ],
      "errataUrl$meta": {
        "confidence": "high",
        "note": "Parsed from errata links on RFC/Datatracker pages",
        "originalValue": [],
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
        "updated": "2026-10-16T20:44:22.488Z",
        "version": "extractDocs.js@commit:2c3b1db1b97b"
      },
      "latestVersion": true,
      "latestVersion$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
        "updated": "2026-10-16T20:44:22.488Z",
        "version": "extractDocs.js@commit:2c3b1db1b97b"
      },
      "statusNote": "Experimental",
      "statusNote$meta": {
        "confidence": "high",
        "note": "Mapped from Datatracker doc.json std_level",
        "originalValue": null,
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
        "updated": "2026-10-16T20:44:22.488Z",
        "version": "extractDocs.js@commit:2c3b1db1b97b"
      },
      "superseded": false,
      "superseded$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc6621/",
        "updated": "2026-10-16T20:44:22.488Z",
        "version": "extractDocs.js@commit:2c3b1db1b97b"
      }
    }
  }
}