rfc-4820

Padding Chunk and Parameter for the Stream Control Transmission Protocol (SCTP)

M. Tuexen, R. Stewart, P. Lei
date2007-03 streamIETF areawit wgtsvwg statusPROPOSED STANDARD pages6 canonicalhttps://www.rfc-editor.org/rfc/rfc4820 doi10.17487/RFC4820
This document defines a padding chunk and a padding parameter and describes the required receiver side procedures. The padding chunk is used to pad a Stream Control Transmission Protocol (SCTP) packet to an arbitrary size. The padding parameter is used to pad an SCTP INIT chunk to an arbitrary size. [STANDARDS-TRACK]

Extracted elements (18)

design-rationale §3

The PAD chunk type 0x84 has its two highest-order bits set to 10, which per SCTP chunk processing rules causes unknown receivers to discard the chunk and continue processing — ensuring backward compatibility without requiring explicit recognition of the PAD chunk type.

sctp

design-rationale §1

The primary use case for the PAD chunk is path MTU discovery, as described in RFC 4821 (Packetization Layer Path MTU Discovery), enabling SCTP to probe path MTU by sending packets of arbitrary sizes.

sctp

interoperability-note §3

The processing behavior for the PAD chunk (discard and continue) is identical to the required behavior for any unknown chunk with the same highest-order two bits (10) in the chunk type, ensuring interoperability with SCTP implementations that predate RFC 4820.

sctp

normative-requirement §3 SHOULD

The Flags field of the PAD chunk SHOULD be set to zero on transmit and MUST be ignored on receipt.

sctp

normative-requirement §3 MUST

The PAD chunk Type field MUST be set to 0x84 for all PAD chunks.

sctp

normative-requirement §4 MUST NOT

The PAD parameter MAY be included only in the INIT chunk and MUST NOT be included in any other chunk.

sctp

normative-requirement §4 MUST

The PAD parameter type MUST be set to 0x8005.

sctp

normative-requirement §3 MUST

The Padding Data in the PAD chunk MUST be ignored by the receiver.

sctp

normative-requirement §3 MUST

The receiver of the PAD chunk MUST discard this chunk and continue processing the rest of the chunks in the packet.

sctp

normative-requirement §4 MUST

The receiver of the PAD parameter MUST silently discard this parameter and continue processing the rest of the INIT chunk.

sctp

normative-requirement §4 MUST NOT

The size of the generated COOKIE parameter in the INIT-ACK MUST NOT depend on the existence of the PAD parameter in the INIT chunk, and a receiver of a PAD parameter MUST NOT include the PAD parameter within any State Cookie parameter it generates.

sctp

protocol-element §3

The PAD chunk (type 0x84) is an SCTP chunk used to pad an SCTP packet to an arbitrary size. An SCTP packet MAY contain multiple PAD chunks.

sctp

protocol-element §4

The PAD parameter (type 0x8005) is an SCTP INIT chunk parameter used to pad an INIT chunk to an arbitrary size. An INIT chunk MAY contain multiple PAD parameters.

sctp

registry §5.1

IANA assigned chunk type 132 (0x84) to the Padding Chunk (PAD) in the SCTP CHUNK TYPES table at sctp-parameters, with RFC 4820 as the reference.

sctp, registry

registry §5.2

IANA assigned parameter type 32773 (0x8005) to the Padding parameter in the SCTP INIT Chunk Parameter Types table at sctp-parameters, with RFC 4820 as the reference.

sctp, registry

security-consideration §6

This document does not add any additional security considerations beyond those given in RFC 2960 (SCTP base specification). Inappropriate usage of the PAD parameter or PAD chunk can result in wasted bandwidth.

sctp, security

wire-format §3

The PAD chunk has a 1-byte Type field set to 0x84, a 1-byte Flags field, a 2-byte Length field (value = padding data length + 4), and a variable-length Padding Data field. The chunk pads an SCTP packet by 4 to 65536 bytes in steps of 4 bytes.

sctp

wire-format §4

The PAD parameter has a 2-byte Parameter Type field set to 0x8005, a 2-byte Parameter Length field (value = padding data length + 4), and a variable-length Padding Data field. It is used to pad an SCTP INIT chunk.

sctp