PCP Working Group M. Boucadair
Internet-Draft France Telecom
Intended status: Standards Track R. Penno
Expires: November 22, 2013 D. Wing
Cisco
May 21, 2013

PCP Description Option
draft-ietf-pcp-description-option-01

Abstract

This document extends Port Control Protocol (PCP) with the ability to associate a description with a PCP-instantiated mapping. It does so by defining a new DESCRIPTION option.

Requirements Language

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119].

Status of This Memo

This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at http://datatracker.ietf.org/drafts/current/.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."

This Internet-Draft will expire on November 22, 2013.

Copyright Notice

Copyright (c) 2013 IETF Trust and the persons identified as the document authors. All rights reserved.

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.


Table of Contents

1. Introduction

This document extends the base PCP [RFC6887] with the ability to associate a human-readable description with a PCP-instantiated mapping. It does so by defining a new DESCRIPTION option.

This PCP option can be used in both simple scenarios with a PCP client and PCP server, as well as in more complex scenarios where an interworking function is used to proxy between a UPnP IGD Control Point and a PCP server [I-D.ietf-pcp-upnp-igd-interworking].

Querying the PCP server to get the description text of an existing mapping is out of scope.

2. Format

The format of the DESCRIPTION option is shown in Figure 1.

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | DESCRIPTION   |  Reserved     |           Length              |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                           Description                         |
   :                                                               :
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      
     This Option:

      Option Name: Description Option (DESCRIPTION)
      Number: <to be assigned in the optional-to-process range>
      Purpose: Used to associate a text description with a mapping
      Valid for Opcodes: MAP, PEER
      Length: Variable
      May appear in: request. May appear in response only if it 
                     appeared in the associated request.
      Maximum occurrences: 1

Figure 1: Description Option

This option can be used by a user (or an application) to indicate a description associated with a given mapping such as "FTP server", "My remote access to my CP router", "Camera", "Network attached storage serve", etc.

3. Behavior

The DESCRIPTION option is optional to be supported by PCP servers and PCP clients.

This option (Code TBA, Figure 1) MAY be included in a PCP MAP/PEER request to associate a description with the requested mapping.

The PCP server MAY be configurable to accept the DESCRIPTION option. If the PCP server does not support the DESCRIPTION option or it is configured to ignore it, received DESCRIPTION options MUST be ignored by the PCP server and a DESCRIPTION option MUST NOT be included in the response. The PCP server MUST store the content of the DESCRIPTION option only if it supports the DESCRIPTION option and if it is configured to accept handling DESCRIPTION options it receives.

If the PCP client does not receive a DESCRIPTION option in a response to a request enclosing a DESCRIPTION option, this means the PCP server does not support that Option. If the DESCRIPTION option is not included in the request, the PCP server MUST NOT include the DESCRIPTION option in the associated response.

The maximum length SHOULD be configurable in the PCP server. The configured maximum length MUST NOT exceed 1016 octets. The suggested maximum length is 128 octets. If a PCP client includes a DESCRIPTION option with a length exceeding the maximum length supported by the PCP server, only the portion of the Description field fitting that maximum length is stored by the PCP server and returned to the PCP client in the response.

If the PCP server receives a DESCRIPTION option having a length which does not exceed the maximum value configured, the PCP server MUST record the complete sequence of the description text and MUST send back to the PCP client the same DESCRIPTION option as the one included in the request. If the description text carried in the DESCRIPTION option is null terminated, the exact description text, including Null characters, MUST be returned by the PCP server.

Invalid DESCRIPTION options (e.g., the content is not a legal UTF-8 string) MUST be ignored by the PCP server.

To update the description text of a mapping maintained by a PCP server, the PCP client generates a PCP MAP/PEER renewal request which includes a DESCRIPTION option carrying the new description text. Upon receipt of the PCP request, the PCP server proceeds to the same operations to validate a MAP/PEER request refreshing an existing mapping. If validation checks are successfully passed, the PCP server replaces the old description text with the new one included in the DESCRIPTION option, and the PCP server returns the updated description text in the response, truncated (if necessary) as described above.

The PCP client uses empty DESCRIPTION option (i.e., Length set to 0) to erase the description text associated with a mapping. Upon receipt of a PCP renewal request which includes an empty DESCRIPTION option, the PCP server MUST clear the description text associated with a mapping it maintains. When sending a successful PCP response, the PCP server MUST return back the empty DESCRIPTION option in the response to confirm the deletion of the description text is successfully handled.

4. Security Considerations

PCP-related security considerations are discussed in [RFC6887]. In addition, administrators of PCP servers SHOULD configure a maximum description length which does not lead to exhausting storage resources in the PCP server.

If the PCP client and the PCP server are not under the same administrative entity, the DESCRIPTION option SHOULD NOT be used to leak privacy-related information (for example, see Section 3.2 of [RFC6462]).

The DESCRIPTION option could be used to influence the PCP server's behavior. For example, if the DESCRIPTION option contains a certain string the PCP server might allocate a mapping from a different IP address pool or might allow (or disallow) the creation of the mapping itself. Such overloading of the DESCRIPTION option is out of scope of this document. If future documents make use of this option to influence the PCP server decisions, it is the responsibility of those documents to elaborate on the associated security considerations.

5. IANA Considerations

The following PCP Option Codes are to be allocated in the optional-to-process range (the registry is maintained in http://www.iana.org/assignments/pcp-parameters/pcp-parameters.xml#option-rules):

6. References

6.1. Normative References

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC6887] Wing, D., Cheshire, S., Boucadair, M., Penno, R. and P. Selkirk, "Port Control Protocol (PCP)", RFC 6887, April 2013.
[RFC3629] Yergeau, F., "UTF-8, a transformation format of ISO 10646", STD 63, RFC 3629, November 2003.

6.2. Informative References

[I-D.ietf-pcp-upnp-igd-interworking] Boucadair, M., Penno, R. and D. Wing, "Universal Plug and Play (UPnP) Internet Gateway Device (IGD)-Port Control Protocol (PCP) Interworking Function", Internet-Draft draft-ietf-pcp-upnp-igd-interworking-06, December 2012.
[RFC6462] Cooper, A., "Report from the Internet Privacy Workshop", RFC 6462, January 2012.

Authors' Addresses

Mohamed Boucadair France Telecom Rennes, 35000 France EMail: mohamed.boucadair@orange.com
Reinaldo Penno Cisco USA EMail: repenno@cisco.com
Dan Wing Cisco Systems, Inc. 170 West Tasman Drive San Jose, California 95134 USA EMail: dwing@cisco.com