rfc-7220

Description Option for the Port Control Protocol (PCP)

M. Boucadair, R. Penno, D. Wing
date2014-05 streamIETF areaint wgpcp statusPROPOSED STANDARD pages6 canonicalhttps://www.rfc-editor.org/rfc/rfc7220 doi10.17487/RFC7220
This document extends the Port Control Protocol (PCP) with the ability to associate a description with a PCP-instantiated mapping. It does this by defining a new DESCRIPTION option.

Extracted elements (15)

design-rationale §1

Querying the PCP server to retrieve the description text of an existing mapping is explicitly out of scope, keeping the option's semantics simple: descriptions are write-only hints set at mapping creation or renewal time.

design-rationale §3

Support for the DESCRIPTION option is optional for both servers and clients to allow flexible deployment without mandating storage or processing overhead. Servers signal non-support or non-acceptance simply by omitting the option from the response rather than returning an error code.

interoperability-note §1

The DESCRIPTION option can be used in interworking scenarios where a UPnP IGD Control Point proxies through a PCP Interworking Function (RFC 6970) to a PCP server, allowing description text to propagate across the proxy boundary.

normative-requirement §3 SHOULD

A PCP server SHOULD be able to store at least 128 bytes for a description. The server MUST send the stored value back to the PCP client in the DESCRIPTION option in the response, truncating it if the full value cannot be stored.

normative-requirement §4 SHOULD

Administrators of PCP servers SHOULD configure a maximum description length that does not lead to exhausting storage resources in the PCP server.

security

normative-requirement §3 MUST NOT

If the DESCRIPTION option is not included in the PCP client request, the PCP server MUST NOT include the DESCRIPTION option in the associated response.

normative-requirement §3 MUST

If the PCP client request contains invalid DESCRIPTION options (e.g., the content is not a legal UTF-8 string), the PCP server MUST ignore the request and MUST NOT return a DESCRIPTION option in the response.

normative-requirement §2 MUST

The Description field MUST carry UTF-8 encoded (RFC 3629) description text. The description text MUST NOT be null terminated, and implementations MUST NOT rely on the presence of a NUL character in the wire data to identify the end of the text.

privacy-consideration §4

If the PCP client and PCP server are not under the same administrative entity, the DESCRIPTION option can leak privacy-related information. PCP clients SHOULD NOT include user identifiers, locations, or names in the description text.

privacy, security

protocol-element §3

A PCP client sends an empty DESCRIPTION option (Length set to 0) to erase the description text associated with a mapping. The PCP server confirms successful erasure by returning the empty DESCRIPTION option in the response.

protocol-element §3

The DESCRIPTION option (Code 128) is optional for both PCP servers and clients and MAY be included in a PCP MAP/PEER request to associate a human-readable description with the requested mapping. A PCP server MAY ignore it; rejection is signaled by omitting the option from the response.

protocol-element §3

To update the description text of an existing mapping, the PCP client sends a MAP/PEER renewal request containing a DESCRIPTION option with the new text. The server validates as for a normal refresh, then replaces the old description and returns the (possibly truncated) new value in the response.

registry §5

IANA has allocated code point 128 for the DESCRIPTION option in the 'PCP Options' registry (optional-to-process range) at http://www.iana.org/assignments/pcp-parameters, as defined in Section 2.

registry

security-consideration §4

PCP-related security considerations from RFC 6887 apply. Administrators SHOULD configure a maximum description length to prevent storage exhaustion on the PCP server.

security

wire-format §2

The DESCRIPTION option (Option Code 128) has a 1-octet Option Code field, 1-octet Reserved field, 2-octet Length field, and a variable-length Description field carrying up to 1016 octets of UTF-8 text. It is valid for MAP and PEER opcodes and may appear at most once per message.

pcp, registry