[
  {
    "flag": "NS",
    "bit": 8,
    "description": "Nonce Sum (historic) — the experimental ECN-nonce flag from RFC 3540, which RFC 8311 moved to Historic. IANA now assigns this bit to AE (Accurate ECN, RFC 9768), used by AccECN to feed back congestion-marking counts."
  },
  {
    "flag": "CWR",
    "bit": 7,
    "description": "Congestion Window Reduced — set by the sender to indicate that it received a TCP segment with the ECE flag set and reduced its congestion window in response (RFC 3168)."
  },
  {
    "flag": "ECE",
    "bit": 6,
    "description": "ECN-Echo — when the SYN flag is also set it indicates ECN capability; otherwise it signals to the sender that network congestion has been detected (RFC 3168)."
  },
  {
    "flag": "URG",
    "bit": 5,
    "description": "Urgent — indicates that the Urgent Pointer field is significant and the segment contains urgent data that should be prioritized ahead of the normal data stream."
  },
  {
    "flag": "ACK",
    "bit": 4,
    "description": "Acknowledgment — indicates that the Acknowledgment Number field is valid; set in all segments after the initial SYN to acknowledge received data."
  },
  {
    "flag": "PSH",
    "bit": 3,
    "description": "Push — requests that buffered data be pushed to the receiving application immediately rather than waiting for the buffer to fill."
  },
  {
    "flag": "RST",
    "bit": 2,
    "description": "Reset — abruptly terminates the connection, used to refuse a connection attempt or reset an existing connection due to an error condition."
  },
  {
    "flag": "SYN",
    "bit": 1,
    "description": "Synchronize — initiates a TCP connection and synchronizes sequence numbers between sender and receiver; used in the three-way handshake."
  },
  {
    "flag": "FIN",
    "bit": 0,
    "description": "Finish — indicates that the sender has finished sending data and wishes to terminate the connection gracefully; used in the four-way connection teardown."
  }
]
