idnits 2.17.1 draft-ietf-dhc-relay-id-suboption-03.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** It looks like you're using RFC 3978 boilerplate. You should update this to the boilerplate described in the IETF Trust License Policy document (see https://trustee.ietf.org/license-info), which is required now. -- Found old boilerplate from RFC 3978, Section 5.1 on line 14. -- Found old boilerplate from RFC 3978, Section 5.5, updated by RFC 4748 on line 290. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 301. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 308. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 314. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- == No 'Intended status' indicated for this document; assuming Proposed Standard Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust Copyright Line does not match the current year -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (September 29, 2008) is 5660 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Missing Reference: 'TBD' is mentioned on line 206, but not defined ** Obsolete normative reference: RFC 2434 (Obsoleted by RFC 5226) ** Obsolete normative reference: RFC 3315 (Obsoleted by RFC 8415) Summary: 3 errors (**), 0 flaws (~~), 3 warnings (==), 7 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 DHC M. Stapp 3 Internet-Draft Cisco Systems, Inc. 4 Expires: April 2, 2009 September 29, 2008 6 The DHCPv4 Relay Agent Identifier Suboption 7 draft-ietf-dhc-relay-id-suboption-03.txt 9 Status of this Memo 11 By submitting this Internet-Draft, each author represents that any 12 applicable patent or other IPR claims of which he or she is aware 13 have been or will be disclosed, and any of which he or she becomes 14 aware will be disclosed, in accordance with Section 6 of BCP 79. 16 Internet-Drafts are working documents of the Internet Engineering 17 Task Force (IETF), its areas, and its working groups. Note that 18 other groups may also distribute working documents as Internet- 19 Drafts. 21 Internet-Drafts are draft documents valid for a maximum of six months 22 and may be updated, replaced, or obsoleted by other documents at any 23 time. It is inappropriate to use Internet-Drafts as reference 24 material or to cite them other than as "work in progress." 26 The list of current Internet-Drafts can be accessed at 27 http://www.ietf.org/ietf/1id-abstracts.txt. 29 The list of Internet-Draft Shadow Directories can be accessed at 30 http://www.ietf.org/shadow.html. 32 This Internet-Draft will expire on April 2, 2009. 34 Abstract 36 This memo defines a new Relay Agent Identifier suboption for the 37 Dynamic Host Configuration Protocol's (DHCP) Relay Agent Information 38 option. The suboption carries a value that uniquely identifies the 39 relay agent device. The value may be administratively-configured or 40 may be generated by the relay agent. The suboption allows a DHCP 41 relay agent to include the identifier in the DHCP messages it sends. 43 Table of Contents 45 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 46 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . 3 47 3. Example Use-Cases . . . . . . . . . . . . . . . . . . . . . . . 3 48 3.1. Industrial Ethernet . . . . . . . . . . . . . . . . . . . . 3 49 3.2. Bulk Leasequery . . . . . . . . . . . . . . . . . . . . . . 4 50 4. Suboption Format . . . . . . . . . . . . . . . . . . . . . . . 4 51 5. Relay Identifier Types . . . . . . . . . . . . . . . . . . . . 5 52 6. Generating a Relay Identifier . . . . . . . . . . . . . . . . . 5 53 7. Identifier Stability . . . . . . . . . . . . . . . . . . . . . 5 54 8. Security Considerations . . . . . . . . . . . . . . . . . . . . 5 55 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 6 56 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 6 57 10.1. Normative References . . . . . . . . . . . . . . . . . . . 6 58 10.2. Informative References . . . . . . . . . . . . . . . . . . 7 59 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 7 60 Intellectual Property and Copyright Statements . . . . . . . . . . 8 62 1. Introduction 64 The Dynamic Host Configuration Protocol for IPv4 (DHCPv4) [RFC2131] 65 provides IP addresses and configuration information for IPv4 clients. 66 It includes a relay agent capability, in which network elements 67 receive broadcast messages from clients and forward them to DHCP 68 servers as unicast messages. In many network environments, relay 69 agents add information to the DHCP messages before forwarding them, 70 using the Relay Agent Information option [RFC3046]. Servers that 71 recognize the relay information option echo it back in their replies. 73 This specification introduces a Relay Agent Identifier suboption for 74 the Relay Information option. The Relay-Id suboption carries a 75 sequence of octets that is intended to identify the relay agent 76 uniquely within the administrative domain. The identifier may be 77 administratively configured: in some networks it may be adequate to 78 assign ASCII strings such as "switch1" and "switch2". Alternatively, 79 the identifier may be generated by the relay agent itself, and we 80 specify use of [RFC3315] DUIDs for this purpose. 82 2. Terminology 84 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 85 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 86 document are to be interpreted as described in [RFC2119]. 88 DHCPv4 terminology is defined in [RFC2131], and the DHCPv4 Relay 89 Agent Information Option in [RFC3046]. DUID terminology is in 90 [RFC3315]. 92 3. Example Use-Cases 94 3.1. Industrial Ethernet 96 DHCP typically identifies clients based on information in their DHCP 97 messages - such as the Client-Identifier option, or the value of the 98 chaddr field. In some networks, however, the location of a client - 99 its point of attachment to the network - is a more useful identifier. 100 In factory-floor networks (commonly called 'Industrial' networks), 101 for example, the role a device plays is often fixed and based on its 102 location. Using manual address configuration is possible (and is 103 common) but it would be beneficial if DHCP configuration could be 104 applied to these networks. 106 One way to provide connection-based identifiers for industrial 107 networks is to have the network elements acting as DHCP relay agents 108 supply information that a DHCP server could use as a client 109 identifier. A straightforward way to form identifier information is 110 to combine something that is unique within the scope of the network 111 element, such as a port/slot value, with something that uniquely 112 identifies that network element, such as a Relay Agent Identifier. 114 3.2. Bulk Leasequery 116 There has been quite a bit of recent interest in extending the DHCP 117 Leasequery protocol [RFC4388] to accomodate some additional 118 situations. There are two recent drafts ([draft-kinnear] and 119 [draft-dtv]) proposing a variety of enhancements to the existing 120 Leasequery protocol. draft-dtv describes a use-case where a relay 121 agent queries DHCP servers using the Relay Identifier to retrieve all 122 the leases allocated through the relay device. 124 4. Suboption Format 126 Format of the Relay Agent Identifier suboption: 128 0 1 2 3 129 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 130 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 131 |SUBOPT_RELAY_ID| length | type | | 132 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 133 . . 134 . identifier (variable) . 135 . . 136 +---------------------------------------------------------------+ 138 Where: 140 SUBOPT_RELAY_ID [TBD] 142 length the number of octets in the suboption; the 143 minimum length is two. 145 type a single octet describing the type of 146 identifier that is present. 148 identifier the identifying data. 150 5. Relay Identifier Types 152 For clarity, the suboption specified here includes a type octet that 153 describes the data used in the identifier field. The type value zero 154 is reserved and MUST NOT be used. Two type values are defined here: 155 RELAY_IDENTIFIER_DUID and RELAY_IDENTIFIER_ASCII. 156 RELAY_IDENTIFIER_DUID is used when the identifier field contains a 157 DUID [RFC3315]. Administrators may want to assign human-friendly 158 ASCII identifiers: RELAY_IDENTIFIER_ASCII is used when the identifier 159 field contains an ASCII string. 161 6. Generating a Relay Identifier 163 As described in Section 1, in some situations it may be useful for 164 network devices to generate identifiers themselves. Relay agents who 165 send the Relay Agent Identifier suboption using identifiers that are 166 not administratively-configured MUST be generated following the 167 procedures in the DUID section of [RFC3315]. Relay agents who use 168 generated identifiers SHOULD make the generated value visible to 169 their administrators via their user-interface, through a log entry, 170 or through some other mechanism. 172 7. Identifier Stability 174 If the relay identifier is to be meaningful it has to be stable. A 175 relay agent SHOULD use a single identifier type and value 176 consistently. The identifier used by a relay device SHOULD be 177 committed to stable storage, unless the relay device can regenerate 178 the value upon reboot. 180 Implementors should note that the identifier needs to be present in 181 all DHCP message types where its value is being used by the DHCP 182 server. The relay agent may not be able to add the Relay Agent 183 Information option to all messages - such as RENEW messages sent as 184 IP unicasts. In some deployments that might mean that the server has 185 to be willing to continue to associate the relay-identifier it has 186 last seen with a lease that is being RENEWed. Other deployments may 187 prefer to use the Server Identifier Override suboption [RFC5107] to 188 permit the relay device to insert the Information option into all 189 relayed messages. 191 8. Security Considerations 193 Security issues with the Relay Agent Information option and its use 194 by servers in address assignment are discussed in [RFC3046] and 196 [RFC4030]. Relay agents who send the Relay Agent Identifier 197 suboption SHOULD use the Relay Agent Authentication suboption 198 [RFC4030] to provide integrity protection. 200 9. IANA Considerations 202 We request that IANA assign a new suboption code from the registry of 203 DHCP Agent Sub-Option Codes maintained in 204 http://www.iana.org/assignments/bootp-dhcp-parameters. 206 Relay Agent Identifier Suboption [TBD] 208 We request that IANA establish a new registry of DHCP Relay Agent 209 Identifier Sub-Option Types, to be maintained in 210 http://www.iana.org/assignments/bootp-dhcp-parameters. The 211 Identifier Type is a single octet. The initial values assigned in 212 this document are: 214 RELAY_IDENTIFIER_NULL 0 215 RELAY_IDENTIFIER_DUID 1 216 RELAY_IDENTIFIER_ASCII 2 218 Additional Identifier Type values will be allocated and assigned 219 through IETF consensus, as defined in [RFC2434]. 221 10. References 223 10.1. Normative References 225 [RFC2131] Droms, R., "Dynamic Host Configuration Protocol", 226 RFC 2131, March 1997. 228 [RFC2434] Narten, T. and H. Alvestrand, "Guidelines for Writing an 229 IANA Considerations Section in RFCs", BCP 26, RFC 2434, 230 October 1998. 232 [RFC3046] Patrick, M., "DHCP Relay Agent Information Option", 233 RFC 3046, January 2001. 235 [RFC3315] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C., 236 and M. Carney, "Dynamic Host Configuration Protocol for 237 IPv6 (DHCPv6)", RFC 3315, July 2003. 239 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 240 Requirement Levels", BCP 14, RFC 2119, March 1997. 242 [RFC4030] Stapp, M. and T. Lemon, "The Authentication Suboption for 243 the Dynamic Host Configuration Protocol (DHCP) Relay Agent 244 Option", RFC 4030, March 2005. 246 10.2. Informative References 248 [RFC4388] Woundy, R. and K. Kinnear, "Dynamic Host Configuration 249 Protocol (DHCP) Leasequery", RFC 4388, February 2006. 251 [RFC5107] Johnson, R., Kumarasamy, J., Kinnear, K., and M. Stapp, 252 "DHCP Server Identifier Override Suboption", RFC 5107, 253 February 2008. 255 [draft-kinnear] 256 Kinnear, K., Volz, B., Russell, N., and M. Stapp, "Bulk 257 DHCPv4 Lease Query 258 (draft-kinnear-dhc-dhcpv4-bulk-leasequery-*)", July 2008. 260 [draft-dtv] 261 Rao, D., Joshi, B., and P. Kurapati, "DHCPv4 bulk lease 262 query (draft-dtv-dhc-dhcpv4-bulk-leasequery-*)", 263 July 2008. 265 Author's Address 267 Mark Stapp 268 Cisco Systems, Inc. 269 1414 Massachusetts Ave. 270 Boxborough, MA 01719 271 USA 273 Phone: +1 978 936 0000 274 Email: mjs@cisco.com 276 Full Copyright Statement 278 Copyright (C) The IETF Trust (2008). 280 This document is subject to the rights, licenses and restrictions 281 contained in BCP 78, and except as set forth therein, the authors 282 retain all their rights. 284 This document and the information contained herein are provided on an 285 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 286 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND 287 THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS 288 OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF 289 THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 290 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 292 Intellectual Property 294 The IETF takes no position regarding the validity or scope of any 295 Intellectual Property Rights or other rights that might be claimed to 296 pertain to the implementation or use of the technology described in 297 this document or the extent to which any license under such rights 298 might or might not be available; nor does it represent that it has 299 made any independent effort to identify any such rights. Information 300 on the procedures with respect to rights in RFC documents can be 301 found in BCP 78 and BCP 79. 303 Copies of IPR disclosures made to the IETF Secretariat and any 304 assurances of licenses to be made available, or the result of an 305 attempt made to obtain a general license or permission for the use of 306 such proprietary rights by implementers or users of this 307 specification can be obtained from the IETF on-line IPR repository at 308 http://www.ietf.org/ipr. 310 The IETF invites any interested party to bring to its attention any 311 copyrights, patents or patent applications, or other proprietary 312 rights that may cover technology that may be required to implement 313 this standard. Please address the information to the IETF at 314 ietf-ipr@ietf.org.