{
  "$schema": "/api/schemas/documents.schema.json",
  "apiVersion": "1.1.0",
  "lastModified": "2026-10-13T19:00:58.552Z",
  "sourcePath": "src/main/data/docs",
  "docId": "RFC5740",
  "document": {
    "abstract": "This document describes the messages and procedures of the Negative- ACKnowledgment (NACK) Oriented Reliable Multicast (NORM) protocol. This protocol can provide end-to-end reliable transport of bulk data objects or streams over generic IP multicast routing and forwarding services. NORM uses a selective, negative acknowledgment mechanism for transport reliability and offers additional protocol mechanisms to allow for operation with minimal a priori coordination among senders and receivers. A congestion control scheme is specified to allow the NORM protocol to fairly share available network bandwidth with other transport protocols such as Transmission Control Protocol (TCP). It is capable of operating with both reciprocal multicast routing among senders and receivers and with asymmetric connectivity (possibly a unicast return path) between the senders and receivers. The protocol offers a number of features to allow different types of applications or possibly other higher-level transport protocols to utilize its service in different ways. The protocol leverages the use of FEC-based (forward error correction) repair and other IETF Reliable Multicast Transport (RMT) building blocks in its design. This document obsoletes RFC 3940. [STANDARDS-TRACK]",
    "abstract$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML abstract",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5740/",
      "updated": "2026-10-13T18:22:45.145Z",
      "version": "extractDocs.js@commit:6d30695438dd"
    },
    "authors": [
      {
        "name": "Brian Adamson"
      },
      {
        "name": "Carsten Bormann"
      },
      {
        "name": "Mark J. Handley"
      },
      {
        "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/rfc5740/",
      "updated": "2026-10-13T18:22:45.145Z",
      "version": "extractDocs.js@commit:6d30695438dd"
    },
    "docId": "RFC5740",
    "docId$meta": {
      "confidence": "high",
      "note": "Derived from RFC number or Datatracker identifier",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5740/",
      "updated": "2026-10-13T18:22:45.145Z",
      "version": "extractDocs.js@commit:6d30695438dd"
    },
    "docLabel": "IETF RFC 5740",
    "docLabel$meta": {
      "confidence": "high",
      "note": "Constructed from provider and document identifier",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5740/",
      "updated": "2026-10-13T18:22:45.145Z",
      "version": "extractDocs.js@commit:6d30695438dd"
    },
    "docNumber": "5740",
    "docNumber$meta": {
      "confidence": "high",
      "note": "Parsed from RFC info page report metadata",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5740/",
      "updated": "2026-10-13T18:22:45.145Z",
      "version": "extractDocs.js@commit:6d30695438dd"
    },
    "docTitle": "NACK-Oriented Reliable Multicast (NORM) Transport Protocol",
    "docTitle$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML title",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5740/",
      "updated": "2026-10-13T18:22:45.145Z",
      "version": "extractDocs.js@commit:6d30695438dd"
    },
    "docType": "Standard",
    "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/rfc5740/",
      "updated": "2026-10-13T18:22:45.145Z",
      "version": "extractDocs.js@commit:6d30695438dd"
    },
    "doi": "10.17487/RFC5740",
    "doi$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML doi",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5740/",
      "updated": "2026-10-13T18:22:45.145Z",
      "version": "extractDocs.js@commit:6d30695438dd"
    },
    "href": "https://doi.org/10.17487/RFC5740",
    "href$meta": {
      "confidence": "high",
      "note": "Derived from DOI (https://doi.org/<doi>)",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5740/",
      "updated": "2026-10-13T18:22:45.145Z",
      "version": "extractDocs.js@commit:6d30695438dd"
    },
    "keywords": [
      "Multicast",
      "Reliable Multicast",
      "Transport",
      "Forward Error Correction",
      "Packet Erasure Coding"
    ],
    "keywords$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML keywords",
      "originalValue": [
        "Multicast",
        "Reliable Multicast",
        "Transport",
        "Negative-acknowledgment",
        "Forward Error Correction",
        "Packet Erasure Coding",
        "Group Communication"
      ],
      "overridden": true,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5740/",
      "updated": "2026-10-13T19:00:58.552Z",
      "version": "extractDocs.js@commit:8ad844f404e0"
    },
    "pages": "96",
    "pages$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML page-count",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5740/",
      "updated": "2026-10-13T18:22:45.145Z",
      "version": "extractDocs.js@commit:6d30695438dd"
    },
    "publicationDate": "2009-11-01",
    "publicationDate$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML date",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5740/",
      "updated": "2026-10-13T18:22:45.145Z",
      "version": "extractDocs.js@commit:6d30695438dd"
    },
    "publisher": "IETF",
    "publisher$meta": {
      "confidence": "high",
      "note": "Static: provider",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5740/",
      "updated": "2026-10-13T18:22:45.145Z",
      "version": "extractDocs.js@commit:6d30695438dd"
    },
    "references": {
      "bibliographic": [
        "RFC2357",
        "RFC2974",
        "RFC3048",
        "RFC3269",
        "RFC3453",
        "RFC3547",
        "RFC3550",
        "RFC3711",
        "RFC3830",
        "RFC3940",
        "RFC4535",
        "RFC4566",
        "RFC5445",
        "orphan/RFC5740/h:8b5e6fb7",
        "orphan/RFC5740/h:1df9fb3b",
        "orphan/RFC5740/h:e1bdbae9",
        "orphan/RFC5740/h:872610b8",
        "orphan/RFC5740/h:20803421",
        "orphan/RFC5740/h:5122970f",
        "orphan/RFC5740/h:71224993",
        "orphan/RFC5740/h:372d039c",
        "orphan/RFC5740/h:40a4b33a"
      ],
      "bibliographic$meta": {
        "confidence": "medium",
        "flag": "MIXED_REF_LAYOUT_RISK anchored=31 proseBlocks=38 skippedAnchorBlocks=34",
        "note": "Parsed from RFC HTML references/informative sections",
        "originalValue": [],
        "reviewRequired": true,
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5740/",
        "updated": "2026-10-13T18:22:45.145Z",
        "version": "extractDocs.js@commit:6d30695438dd"
      },
      "normative": [
        "RFC1112",
        "RFC2119",
        "RFC4301",
        "RFC4303",
        "RFC4607",
        "RFC4654",
        "RFC5052",
        "RFC5226",
        "RFC5401"
      ],
      "normative$meta": {
        "confidence": "high",
        "note": "Parsed from RFC HTML normative references sections",
        "originalValue": [],
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5740/",
        "updated": "2026-10-13T18:22:45.145Z",
        "version": "extractDocs.js@commit:6d30695438dd"
      }
    },
    "resolvedHref": "https://www.rfc-editor.org/info/rfc5740/",
    "resolvedHref$meta": {
      "confidence": "high",
      "note": "Final URL resolved via URL redirect verification",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5740/",
      "updated": "2026-10-13T18:22:45.145Z",
      "version": "extractDocs.js@commit:6d30695438dd"
    },
    "status": {
      "active": true,
      "active$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5740/",
        "updated": "2026-10-13T18:22:45.145Z",
        "version": "extractDocs.js@commit:6d30695438dd"
      },
      "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/rfc5740/",
        "updated": "2026-10-13T18:22:45.145Z",
        "version": "extractDocs.js@commit:6d30695438dd"
      },
      "errataUrl": [
        "https://www.rfc-editor.org/errata/rfc5740",
        "https://www.rfc-editor.org/errata_search.php?rfc=5740"
      ],
      "errataUrl$meta": {
        "confidence": "high",
        "note": "Parsed from errata links on RFC/Datatracker pages",
        "originalValue": [],
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5740/",
        "updated": "2026-10-13T18:22:45.145Z",
        "version": "extractDocs.js@commit:6d30695438dd"
      },
      "latestVersion": true,
      "latestVersion$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5740/",
        "updated": "2026-10-13T18:22:45.145Z",
        "version": "extractDocs.js@commit:6d30695438dd"
      },
      "statusNote": "Proposed Standard",
      "statusNote$meta": {
        "confidence": "high",
        "note": "Mapped from Datatracker doc.json std_level",
        "originalValue": null,
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5740/",
        "updated": "2026-10-13T18:22:45.145Z",
        "version": "extractDocs.js@commit:6d30695438dd"
      },
      "superseded": false,
      "superseded$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5740/",
        "updated": "2026-10-13T18:22:45.145Z",
        "version": "extractDocs.js@commit:6d30695438dd"
      },
      "supersedes": [
        "RFC3940"
      ],
      "supersedes$meta": {
        "confidence": "high",
        "note": "Parsed from RFC index XML",
        "originalValue": [],
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5740/",
        "updated": "2026-10-13T18:22:45.145Z",
        "version": "extractDocs.js@commit:6d30695438dd"
      }
    }
  }
}