One document matched: draft-ietf-pcp-dhcp-09.xml
<?xml version="1.0" encoding="US-ASCII"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<?rfc toc="yes"?>
<?rfc tocompact="yes"?>
<?rfc tocdepth="5"?>
<?rfc tocindent="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<rfc category="std" docName="draft-ietf-pcp-dhcp-09" ipr="trust200902">
<front>
<title abbrev="PCP DHCP Options">DHCP Options for the Port Control
Protocol (PCP)</title>
<author fullname="Mohamed Boucadair" initials="M." surname="Boucadair">
<organization>France Telecom</organization>
<address>
<postal>
<street></street>
<city>Rennes</city>
<region></region>
<code>35000</code>
<country>France</country>
</postal>
<email>mohamed.boucadair@orange.com</email>
</address>
</author>
<author fullname="Reinaldo Penno" initials="R." surname="Penno">
<organization>Cisco</organization>
<address>
<postal>
<street></street>
<code></code>
<country>USA</country>
</postal>
<email>repenno@cisco.com</email>
</address>
</author>
<author fullname="Dan Wing" initials="D." surname="Wing">
<organization abbrev="Cisco">Cisco Systems, Inc.</organization>
<address>
<postal>
<street>170 West Tasman Drive</street>
<city>San Jose</city>
<region>California</region>
<code>95134</code>
<country>USA</country>
</postal>
<email>dwing@cisco.com</email>
</address>
</author>
<date day="05" month="November" year="2013" />
<workgroup>PCP Working Group</workgroup>
<keyword>PCP Server discovery, Port Mapping, Shared Address</keyword>
<abstract>
<t>This document specifies DHCP (IPv4 and IPv6) options to configure
hosts with Port Control Protocol (PCP) Server IP addresses. The use of
DHCPv4 or DHCPv6 depends on the PCP deployment scenario.</t>
</abstract>
<note title="Requirements Language">
<t>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 <xref
target="RFC2119">RFC 2119</xref>.</t>
</note>
</front>
<middle>
<section title="Introduction">
<t>This document defines DHCPv4 <xref target="RFC2131"></xref> and
DHCPv6 <xref target="RFC3315"></xref> options that can be used to
provision PCP server <xref target="RFC6887"></xref> IP addresses.</t>
<t>This specification assumes a PCP server is reachable with one or
multiple IP addresses. As such, a list of IP addresses can be returned
in the PCP server DHCP option.</t>
<t>This specification allows returning one or multiple instances of the
PCP server DHCP option. This is used as a hint to guide the PCP client
when determining whether to send PCP requests to one or multiple PCP
servers. For guidelines on how a PCP client can use multiple IP
addresses and multiple PCP servers, see <xref
target="I-D.ietf-pcp-server-selection"></xref>.</t>
<t>The use of DHCPv4 or DHCPv6 depends on the PCP deployment
scenarios.</t>
</section>
<section title="Terminology">
<t>This document makes use of the following terms:<?rfc subcompact="yes" ?></t>
<t><list style="symbols">
<t>PCP server denotes a functional element that receives and
processes PCP requests from a PCP client. A PCP server can be
co-located with or be separated from the function (e.g., NAT,
Firewall) it controls. Refer to <xref target="RFC6887"></xref>.</t>
<t>PCP client denotes a PCP software instance responsible for
issuing PCP requests to a PCP server. Refer to <xref
target="RFC6887"></xref>.</t>
<t>DHCP refers to both DHCPv4 <xref target="RFC2131"></xref> and
DHCPv6 <xref target="RFC3315"></xref>.</t>
<t>DHCP client (or client) denotes a node that initiates requests to
obtain configuration parameters from one or more DHCP servers.</t>
<t>DHCP server (or server) refers to a node that responds to
requests from DHCP clients.</t>
</list><?rfc subcompact="no" ?></t>
</section>
<section title="DHCPv6 PCP Server Option">
<t></t>
<section title="Format">
<t>The PCP server DHCPv6 option can be used to configure a list of
IPv6 addresses of a PCP server.</t>
<t>The format of this option is shown in <xref
target="dhcpv6_name_option"></xref>.</t>
<t><figure anchor="dhcpv6_name_option"
title="PCP Server DHCPv6 Option">
<preamble></preamble>
<artwork><![CDATA[ 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_PCP_SERVER | Option-length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
| ipv6-address |
| |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
| ipv6-address |
| |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
<postamble></postamble>
</figure>The fields of the option shown in <xref
target="dhcpv6_name_option"></xref> are as follows:<?rfc subcompact="yes" ?></t>
<t><list style="symbols">
<t>Option-code: OPTION_PCP_SERVER (TBA, see <xref
target="iana6"></xref>)</t>
<t>Option-length: Length of the 'PCP server IP Address(es)' field
in octets. MUST be a multiple of 16.</t>
<t>PCP server IPv6 Addresses: Includes one or more IPv6 addresses
<xref target="RFC4291"></xref> of the PCP server to be used by the
PCP client. Note, IPv4-mapped IPv6 addresses (Section 2.5.5.2 of
<xref target="RFC4291"></xref>) are allowed to be included in this
option.</t>
</list></t>
<t><?rfc subcompact="no" ?></t>
</section>
<section title="Client Behavior">
<t>To discover a PCP server, the DHCPv6 client requests PCP server IP
addresses by including OPTION _PCP_SERVER in an Option Request Option
(ORO), as described in Section 22.7 of <xref
target="RFC3315"></xref>.</t>
<t>The client MUST be prepared to receive multiple instances of the
DHCPv6 PCP server option; each instance is to be treated as a separate
PCP server.</t>
<t>If an IPv4-mapped IPv6 address is received in an OPTION_PCP_SERVER
option, it indicates that the PCP server has the corresponding IPv4
address.</t>
<t>When multiple instances of the PCP server DHCPv6 option or multiple
IPv6 addresses are received from the DHCPv6 server, the PCP client
follows the behavior specified in <xref
target="I-D.ietf-pcp-server-selection"></xref>.</t>
</section>
</section>
<section title="DHCPv4 PCP Option">
<t></t>
<section title="Format">
<t>The PCP server DHCPv4 option can be used to configure a list of
IPv4 addresses of a PCP server. The format of this option is
illustrated in <xref target="dhcppcp"></xref>.</t>
<t><figure anchor="dhcppcp" title="PCP Server DHCPv4 Option">
<preamble></preamble>
<artwork><![CDATA[
Code Len PCP server IPv4 Address PCP server IPv4 Address
+-----+-----+-----+-----+-----+-----+-----+-----+--
| TBA | n | a1 | a2 | a3 | a4 | a1 | a2 | ...
+-----+-----+-----+-----+-----+-----+-----+-----+--
]]></artwork>
<postamble>This format assumes that an IPv4 address is encoded as
a1.a2.a3.a4.</postamble>
</figure></t>
<t>The description of the fields is as follows:<?rfc subcompact="yes" ?><list
style="symbols">
<t>Code: OPTION_PCP_SERVER (TBA, see <xref
target="iana4"></xref>);</t>
<t>Length: Includes the length of included IP address(es) in
octets; MUST be a multiple of 4.</t>
<t>PCP server IPv4 Addresses: Contains one or more IPv4 addresses
of the PCP server to be used by the PCP client.</t>
</list></t>
<t><?rfc subcompact="no" ?></t>
</section>
<section title="Client Behavior">
<t>To discover a PCP server, the DHCPv4 client requests PCP server IP
addresses by including OPTION_PCP_SERVER in a Parameter Request List
Option <xref target="RFC2132"></xref>.</t>
<t>The client MUST be prepared to receive multiple instances of the
DHCPv4 PCP server option; each instance is to be treated as a separate
PCP server.</t>
</section>
</section>
<section title="DHCP Server Configuration Guidelines">
<t>DHCP servers supporting the DHCP PCP server option can be configured
with a list of IP addresses of the PCP server(s). If multiple IP
addresses are configured, the DHCP server MUST be explicitly configured
whether all or some of these addresses refer to:</t>
<t><list style="numbers">
<t>the same PCP server: the DHCP server returns multiple addresses
in the same instance of the DHCP PCP server option.</t>
<t>distinct PCP servers: the DHCP server returns multiple instances
of the DHCP PCP server option to the requesting client; each
instance is referring to a distinct PCP server. For example,
multiple OPTION_PCP_SERVER instances may be configured to a PCP
client in some deployment contexts such as multi-homing. It is out
of scope of this document to enumerate all deployment scenarios that
require multiple OPTION_PCP_SERVER instances to be returned.</t>
</list></t>
<t>The DHCP server MAY be configurable with one or multiple FQDNs of the
PCP server(s). In such case, the DHCP server MUST resolve these FQDNs
into one or a list of IP addresses. If multiple FQDNs are configured to
the DHCP server, the DHCP server MUST include multiple OPTION_PCP_SERVER
instances; each of them carries one or a list of IP addresses that
resulted from the FQDN resolution. DHCPv4 servers supporting PCP server
option MUST resolve any configured FQDNs into IPv4 addresses while
DHCPv6 servers may resolve any configured FQDNs into IPv6 and/or IPv4
addresses. If an IPv4 address is retrieved by the DHCPv6 server, the
corresponding IPv4-mapped IPv6 address is included in the
OPTION_PCP_SERVER DHPCv6 option. If both IPv4 and IPv6 addresses are
retrieved by the DHCPv6 server, these addresses are included in the same
OPTION_PCP_SERVER DHPCv6 option (IPv4 addresses are represented as
IPv4-mapped IPv6 addresses).<list style="empty">
<t>Discussion: The motivation for this design is to accommodate
deployment cases where an IPv4 connectivity service is provided
while only DHPCv6 is in use (e.g., an IPv4-only PCP server in a
DS-Lite context <xref target="RFC6333"></xref>).</t>
</list></t>
<t>For guidelines on providing context-specific configuration
information (e.g., returning a regional-based configuration), and
information on how a server might be configured with FQDNs that get
resolved on demand, see <xref
target="I-D.ietf-dhc-topo-conf"></xref>.</t>
</section>
<section title="Dual-Stack Hosts">
<t>A Dual-Stack host might receive OPTION_PCP_SERVER via both DHCPv4 and
DHCPv6. For guidance on how a client can handle PCP server IP lists for
the same network but obtained via different mechanisms, see <xref
target="I-D.ietf-pcp-server-selection"></xref>.</t>
</section>
<section anchor="mif" title="Hosts with Multiple Interfaces">
<t>A host may have multiple network interfaces (e.g, 3G, IEEE 802.11,
etc.); each configured differently. Each PCP server learned MUST be
associated with the interface via which it was learned. Refer to <xref
target="I-D.ietf-pcp-server-selection"></xref> and Section 8.4 of <xref
target="RFC6887"></xref> for more discussion on multi-interface
considerations.</t>
</section>
<section anchor="Security" title="Security Considerations">
<t>The security considerations in <xref target="RFC2131"></xref> and
<xref target="RFC3315"></xref> are to be considered. PCP-related
security considerations are discussed in <xref
target="RFC6887"></xref>.</t>
</section>
<section anchor="IANA" title="IANA Considerations">
<t></t>
<section anchor="iana6" title="DHCPv6 Option">
<t>IANA is requested to assign the following new DHCPv6 Option Code in
the registry maintained in
http://www.iana.org/assignments/dhcpv6-parameters:</t>
<texttable style="headers">
<ttcol align="right">Option Name</ttcol>
<ttcol>Value</ttcol>
<c>OPTION_PCP_SERVER</c>
<c>TBA</c>
</texttable>
</section>
<section anchor="iana4" title="DHCPv4 Option">
<t>IANA is requested to assign the following new DHCPv4 Option Code in
the registry maintained in
http://www.iana.org/assignments/bootp-dhcp-parameters/:</t>
<texttable style="headers">
<ttcol align="right">Option Name</ttcol>
<ttcol>Value</ttcol>
<c>OPTION_PCP_SERVER</c>
<c>TBA</c>
</texttable>
<t></t>
</section>
</section>
<section anchor="Acknowledgements" title="Acknowledgements">
<t>Many thanks to B. Volz, C. Jacquenet, R. Maglione, D. Thaler, T.
Mrugalski, T. Reddy, S. Cheshire and M. Wasserman for their review and
comments.</t>
<t>Special thanks to T. Lemon for the review and his continuous effort
to enhance this specification.</t>
</section>
</middle>
<back>
<references title="Normative References">
<?rfc include="reference.RFC.2119"
?>
<?rfc include='reference.RFC.3315'?>
<?rfc include='reference.RFC.2131'?>
<?rfc include='reference.RFC.4291'?>
<?rfc include='reference.RFC.2132'?>
<?rfc include='reference.RFC.6887'?>
</references>
<references title="Informative References">
<?rfc include='reference.I-D.ietf-dhc-topo-conf'?>
<?rfc include='reference.I-D.ietf-pcp-server-selection'?>
<?rfc include='reference.RFC.6333'?>
</references>
</back>
</rfc>
| PAFTECH AB 2003-2026 | 2026-04-23 20:48:52 |