{
  "$schema": "/api/schemas/documents.schema.json",
  "apiVersion": "1.1.0",
  "lastModified": "2026-10-16T19:29:42.588Z",
  "sourcePath": "src/main/data/docs",
  "docId": "RFC5562",
  "document": {
    "abstract": "The proposal in this document is Experimental. While it may be deployed in the current Internet, it does not represent a consensus that this is the best possible mechanism for the use of Explicit Congestion Notification (ECN) in TCP SYN/ACK packets. This document describes an optional, experimental modification to RFC 3168 to allow TCP SYN/ACK packets to be ECN-Capable. For TCP, RFC 3168 specifies setting an ECN-Capable codepoint on data packets, but not on SYN and SYN/ACK packets. However, because of the high cost to the TCP transfer of having a SYN/ACK packet dropped, with the resulting retransmission timeout, this document describes the use of ECN for the SYN/ACK packet itself, when sent in response to a SYN packet with the two ECN flags set in the TCP header, indicating a willingness to use ECN. Setting the initial TCP SYN/ACK packet as ECN-Capable can be of great benefit to the TCP connection, avoiding the severe penalty of a retransmission timeout for a connection that has not yet started placing a load on the network. The TCP responder (the sender of the SYN/ACK packet) must reply to a report of an ECN-marked SYN/ACK packet by resending a SYN/ACK packet that is not ECN-Capable. If the resent SYN/ACK packet is acknowledged, then the TCP responder reduces its initial congestion window from two, three, or four segments to one segment, thereby reducing the subsequent load from that connection on the network. If instead the SYN/ACK packet is dropped, or for some other reason the TCP responder does not receive an acknowledgement in the specified time, the TCP responder follows TCP standards for a dropped SYN/ACK packet (setting the retransmission timer). This memo 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/rfc5562/",
      "updated": "2026-10-16T18:55:33.509Z",
      "version": "extractDocs.js@commit:a6ae1efef02e"
    },
    "authors": [
      {
        "name": "Aleksandar Kuzmanovic"
      },
      {
        "name": "Amit Mondal"
      },
      {
        "name": "Sally Floyd"
      },
      {
        "name": "Dr. K. K. Ramakrishnan"
      }
    ],
    "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/rfc5562/",
      "updated": "2026-10-16T18:55:33.509Z",
      "version": "extractDocs.js@commit:a6ae1efef02e"
    },
    "docId": "RFC5562",
    "docId$meta": {
      "confidence": "high",
      "note": "Derived from RFC number or Datatracker identifier",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5562/",
      "updated": "2026-10-16T18:55:33.509Z",
      "version": "extractDocs.js@commit:a6ae1efef02e"
    },
    "docLabel": "IETF RFC 5562",
    "docLabel$meta": {
      "confidence": "high",
      "note": "Constructed from provider and document identifier",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5562/",
      "updated": "2026-10-16T18:55:33.509Z",
      "version": "extractDocs.js@commit:a6ae1efef02e"
    },
    "docNumber": "5562",
    "docNumber$meta": {
      "confidence": "high",
      "note": "Parsed from RFC info page report metadata",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5562/",
      "updated": "2026-10-16T18:55:33.509Z",
      "version": "extractDocs.js@commit:a6ae1efef02e"
    },
    "docTitle": "Adding Explicit Congestion Notification (ECN) Capability to TCP's SYN/ACK Packets",
    "docTitle$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML title",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5562/",
      "updated": "2026-10-16T18:55:33.509Z",
      "version": "extractDocs.js@commit:a6ae1efef02e"
    },
    "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/rfc5562/",
      "updated": "2026-10-16T18:55:33.509Z",
      "version": "extractDocs.js@commit:a6ae1efef02e"
    },
    "doi": "10.17487/RFC5562",
    "doi$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML doi",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5562/",
      "updated": "2026-10-16T18:55:33.510Z",
      "version": "extractDocs.js@commit:a6ae1efef02e"
    },
    "href": "https://doi.org/10.17487/RFC5562",
    "href$meta": {
      "confidence": "high",
      "note": "Derived from DOI (https://doi.org/<doi>)",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5562/",
      "updated": "2026-10-16T18:55:33.509Z",
      "version": "extractDocs.js@commit:a6ae1efef02e"
    },
    "keywords": [
      "ECN"
    ],
    "keywords$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML keywords",
      "originalValue": [
        "Ecn-capable"
      ],
      "overridden": true,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5562/",
      "updated": "2026-10-16T19:29:42.588Z",
      "version": "extractDocs.js@commit:75b379398159"
    },
    "pages": "33",
    "pages$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML page-count",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5562/",
      "updated": "2026-10-16T18:55:33.509Z",
      "version": "extractDocs.js@commit:a6ae1efef02e"
    },
    "publicationDate": "2009-06-01",
    "publicationDate$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML date",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5562/",
      "updated": "2026-10-16T18:55:33.509Z",
      "version": "extractDocs.js@commit:a6ae1efef02e"
    },
    "publisher": "IETF",
    "publisher$meta": {
      "confidence": "high",
      "note": "Static: provider",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5562/",
      "updated": "2026-10-16T18:55:33.509Z",
      "version": "extractDocs.js@commit:a6ae1efef02e"
    },
    "references": {
      "bibliographic": [
        "IETF.draft-ietf-tcpm-ecnsyn-06",
        "RFC2309",
        "RFC2581",
        "RFC3042",
        "RFC3360",
        "RFC3390",
        "RFC4987",
        "orphan/RFC5562/h:9dd21cdf",
        "orphan/RFC5562/h:acbc6745",
        "orphan/RFC5562/h:92bc6ace",
        "orphan/RFC5562/h:9518258c",
        "orphan/RFC5562/h:1984f0b9",
        "orphan/RFC5562/h:ed66bf74",
        "orphan/RFC5562/h:6d14d46a",
        "orphan/RFC5562/h:def326db",
        "orphan/RFC5562/h:6982bd04",
        "orphan/RFC5562/h:03175718",
        "orphan/RFC5562/h:b22dbab2",
        "orphan/RFC5562/h:2dd91f4c"
      ],
      "bibliographic$meta": {
        "confidence": "medium",
        "flag": "MIXED_REF_LAYOUT_RISK anchored=22 proseBlocks=29 skippedAnchorBlocks=26",
        "note": "Parsed from RFC HTML references/informative sections",
        "originalValue": [],
        "reviewRequired": true,
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5562/",
        "updated": "2026-10-16T18:55:33.510Z",
        "version": "extractDocs.js@commit:a6ae1efef02e"
      },
      "normative": [
        "RFC793",
        "RFC2119",
        "RFC2988",
        "RFC3168"
      ],
      "normative$meta": {
        "confidence": "high",
        "note": "Parsed from RFC HTML normative references sections",
        "originalValue": [],
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5562/",
        "updated": "2026-10-16T18:55:33.510Z",
        "version": "extractDocs.js@commit:a6ae1efef02e"
      }
    },
    "resolvedHref": "https://www.rfc-editor.org/info/rfc5562/",
    "resolvedHref$meta": {
      "confidence": "high",
      "note": "Final URL resolved via URL redirect verification",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5562/",
      "updated": "2026-10-16T18:55:33.510Z",
      "version": "extractDocs.js@commit:a6ae1efef02e"
    },
    "status": {
      "active": true,
      "active$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5562/",
        "updated": "2026-10-16T18:55:33.510Z",
        "version": "extractDocs.js@commit:a6ae1efef02e"
      },
      "errataExist": false,
      "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/rfc5562/",
        "updated": "2026-10-16T18:55:33.510Z",
        "version": "extractDocs.js@commit:a6ae1efef02e"
      },
      "latestVersion": true,
      "latestVersion$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5562/",
        "updated": "2026-10-16T18:55:33.510Z",
        "version": "extractDocs.js@commit:a6ae1efef02e"
      },
      "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/rfc5562/",
        "updated": "2026-10-16T18:55:33.510Z",
        "version": "extractDocs.js@commit:a6ae1efef02e"
      },
      "superseded": false,
      "superseded$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5562/",
        "updated": "2026-10-16T18:55:33.510Z",
        "version": "extractDocs.js@commit:a6ae1efef02e"
      }
    }
  }
}