GEOPRIV H. Schulzrinne Internet-Draft Columbia U. Expires:August 8,September 18, 2004February 8,March 20, 2004DHCPDynamic Host Configuration Protocol (DHCPv4 and DHCPv6) Option forCivilCivic Addressesdraft-ietf-geopriv-dhcp-civil-01draft-ietf-geopriv-dhcp-civil-02 Status of this MemoThis document is an Internet-DraftBy submitting this Internet-Draft, I certify that any applicable patent or other IPR claims of which I am aware have been disclosed, andisany of which I become aware will be disclosed, infull conformanceaccordance withall provisions of Section 10 of RFC2026.RFC 3667. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. 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." The list of current Internet-Drafts can be accessed at http:// www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. This Internet-Draft will expire onAugust 8,September 18, 2004. Copyright Notice Copyright (C) The Internet Society (2004). All Rights Reserved. Abstract This document specifies a Dynamic Host Configuration Protocol(DHCP)(DHCPv4 and DHCPv6) option for thecivilcivic (country,streetcommunity andcommunity)street) location of theclient.client or the DHCP server. Table of Contents 1. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 3. Format of the DHCPCivilCivic Location Option . . . . . . . . . . .5 4. Civil6 3.1 Overall Format for DHCPv4 . . . . . . . . . . . . . . . . . . 6 3.2 Overall Format for DHCPv6 . . . . . . . . . . . . . . . . . . 6 3.3 Element Format . . . . . . . . . . . . . . . . . . . . . . . . 7 3.4 Civic Address Components . . . . . . . . . . . . . . . . . . .67 4. Example . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 5. Security Considerations . . . . . . . . . . . . . . . . . . .912 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13 Normative References . . . . . . . . . . . . . . . . . . . . .1014 Informative References . . . . . . . . . . . . . . . . . . . .1115 Author's Address . . . . . . . . . . . . . . . . . . . . . . .1115 A. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . .1216 Intellectual Property and Copyright Statements . . . . . . . .1317 1. Terminology In this document, the key words "MUST", "MUSTNOT", "REQUIRED", "SHALL", "SHALLNOT", "SHOULD", "SHOULDNOT", "RECOMMENDED", "MAY", and "OPTIONAL" are to be interpreted as described in RFC 2119 [1] and indicate requirement levels for compliant implementations. 2. Introduction Many end system services can benefit by knowing the approximate location of the end device. In particular, IP telephony devices need to know their location to contact the appropriate emergency response agency and to be found by emergency responders. There are two common ways to identify the location of an object, either through geospatial coordinates or by so-calledcivil coordinates.civic address. Geospatial coordinates indicate longitude, latitude and altitude, whilecivil coordinatescivic addresses indicate a street address. A related draft[6][13] describes aDHCPDHCPv4 [2] option for conveying geospatial information to a device. This draft describes howDHCPDHCPv4 and DHCPv6 [5] can be used to convey thecivilcivic location to devices. Both can be used simultaneously, increasing the chance to deliver accurate and timely location information to emergency responders. End systems that obtain location information via the mechanism described here then use other protocol mechanisms to communicate this information to the emergency callcenter. Civilcenter or to convey it as part of presence information. Civic information is useful since it often provides additional, human-usable information particularly within buildings. Also, compared to geospatial information, it is readily obtained for most occupied structures and can often be interpreted even if incomplete. For example, for many large university or corporate campuses, geocoding information to building and room granularity may not be readily available. Unlike geospatial information, the format forcivilcivic information differs from country to country. Thus, this draft establishes an IANA registry forcivilcivic location data fields. The initial set of data fields is derived from standards published by the United States National EmergencyNumberingNumber Association (NENA)[8].[15]. It is anticipated that other countries can reuse many of the data elements. The same civic address information can often be rendered in multiple languages and scripts. For example, Korean addresses are often shown in Hangul, Latin and Kanji, while some older cities have multiple language variants (Munich, Muenchen and Monaco, for example). Since DHCPv4 and DHCPv6 do not currently support a mechanism to query for a specific script or language, the DHCP server SHOULD provide all common renderings to the client and MUST provide at least the rendering in the language and script appropriate to the location indicated. For example, for use in presence information, the target may be visiting from a foreign country and want to convey the information in a format suitable for watchers in its home country. For emergency services, the rendering in the local language is likely to be most appropriate. To provide multiple renderings, the client repeats sequences of address elements, prefixing each with 'language' and/or 'script' element (see Section 3.3). The language and script remain in effect for subsequent elements until overridden by another language or script element. The DHCP long-options mechanism described in RFC 3396 [8] MUST be used if the civic address option exceeds the maximum DHCP option size of 255 octets. 3. Format of the DHCPCivilCivic Location Option 3.1 Overall Format for DHCPv4 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Code TBD | N | Countrycode | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | What |civilcivic address elements ... +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+Each civil address element has the following format: 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | CAtype | CAlength | CAvalue ... +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+Code TBD: The code for this DHCP option is TBD by IANA. N: The length of this option is variable. Countrycode: The two-letter ISO 3166 country code in capital ASCII letters, e.g., DE or US. What: The 'what' element describes which location the DHCP refers to. Currently, three options are defined: the location of the DHCP server(0),(a value of 0), the location of the network element believed to be closest to the client (1) or the location of the client (2). Option (2) SHOULD be used, but may not be known. Options (1) and (2)SHOULDNOTSHOULD NOT be used unless it is known that the DHCP client is in close physical proximity to the server or network element. Civic address element: Zero or more elements comprising the civic address, with the format described below (Section 3.3). 3.2 Overall Format for DHCPv6 The DHCPv6 [5] civic address option refers generally to the client as a whole. 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | OPTION_CIVIC_ADDRESS | option-len | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Countrycode | what | elements ... | civic address elements | | ... | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ option-code: OPTION_CIVIC_ADDRESS (TBD) option-len: Length of the Countrycode, 'what' and civic address elements. Countrycode: See above (Section 3.1). What: See above (Section 3.1). Civic address element: See above (Section 3.1). 3.3 Element Format For both DHCPv4 and DHCPv6, each civic address element has the following format: 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | CAtype | CAlength | CAvalue ... +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ CAtype: A one-octet descriptor of the datacivilcivic address value. CAlength: The length, in octets, of the CAvalue, not including the CAlength field itself. Data SHOULD be encoded inuppercase.mixed case, following the customary spelling. CAvalue: Thecivilcivic address value, encoded asUTF-8,UTF-8 [6], and written in uppercase letters where applicable.4. CivilThe script indication is written in mixed-case, with the first letter a capital letter. Elements SHOULD be included in numeric order from lowest to highest of their CAtype if the server only provides one language and script rendition. In general, an element is labeled in its language and script by the most recent 'language tag' (CAtype = 0) element preceding it. Since not all elements depend on the script and language, a client accumulates the elements by CAtype and then selects the most desirable language and script rendition if there are multiple elements for the same CAtype. 3.4 Civic Address Components Since each country has different administrative hierarchies, with often the same (English) names, this specification adopts a simple hierarchical notation that is then instantiated for each country. We assume that five levels are sufficient for sub-national divisions above the street level. All elements are OPTIONAL and can appear in any order. Abbreviations do not need a trailing period. +----------------------+----------------------+---------------------+ | CAtype | label | description | +----------------------+----------------------+---------------------+ | 1 | A1 | national | | | | subdivisions | | | | (state, region, | | | | province, | | | | prefecture) | | | | | | 2 | A2 | county, parish, gun | | | | (JP), district (IN) | | | | | | 3 | A3 | city, township, shi | | | | (JP) | | | | | | 4 | A4 | city division, | | | | borough, city | | | | district, ward, | | | | chou (JP) | | | | | | 5 | A5 | neighborhood, block | | | | | | 6 | A6 | street | +----------------------+----------------------+---------------------+ Table 1 For specific countries, the administrative sub-divisions are described below. CA (Canada): The mapping to NENA designations is shown in parentheses. A1=province (STA); A2=county (CNA); A3=city or town (MCN); A6=street (STN). DE (Germany): A1=state (Bundesstaat); A2=county (Regierungsbezirk); A3=city (Stadt, Gemeinde); A6=street (Strasse). Street suffixes (STS) are used only for designations that are a separate word (e.g., Marienthaler Strasse). JP (Japan): A1=metropolis (To, Fu) or prefecture (Ken, Do); A2=city (Shi) or rural area (Gun); A3=ward (Ku) or village (Mura); A4=town (Chou or Machi); A5=city district (Choume); A6=block (Banchi or Ban). KR (Korea): A1=province (Do); A2=county (gun); A3=city or village (ri); A4=urban district (gu); A5=neighborhood (dong); A6=street (no, ro, ga or gil). US (United States): The mapping to NENA designations is shown in parentheses. A1=state (STA), using the the two-letter state and possession abbreviations recommended by the United States Postal Service Publication 28[7],[14], Appendix B; A2=county (CNA);A3=civilA3=civic community name (city or town) (MCN); A6=street (STN). A4 and A5 are not used. Thecivilcivic community name (MCN) reflects the political boundaries. These may differ from postal delivery assignments for historical or practical reasons.CA (Canada): The mapping to NENA designations is shown in parentheses. A1=province (STA), A2=county (CNA), A3=city or town (MCN). JP (Japan): A1=metropolis (To, Fu) or prefecture (Ken, Do); A2=city (Shi) or rural area (Gun); A3=ward (Ku) or village (Mura); A4=town (Chou or Machi); A5=city district (Choume); A6=block (Banchi or Ban). DE (Germany): A1=state (Bundesstaat); A2=county (Kreis); A3=city (Stadt, Gemeinde); A6=street (Strasse).Additional CA types appear in many countries and are simply omitted where they are notneeded:needed or known: +----------------+----------------+----------------+----------------+ |CAtypejCAtype | NENA | Description | Examples | +----------------+----------------+----------------+----------------+ | 0 | | language | i-default [3] | | | | | | | 16 | PRD | leading street | N | | | | direction | | | | | | | | 17 | POD | trailing | SW | | | | street suffix | | | | | | | | 18 | STS | street suffix | AVE, PLATZ | | | | | | | 19 | HNO | house number | 123 | | | | | | | 20 | HNS | house number | A, 1/2 | | | | suffix | | | | | | | | 21 | LMK | landmark or | SHADELAND | | | | vanity address | CRESCENT APTS | | | | | | | 22 | LOC | additional | APT 17 | | | | location | | | | | information | | | | | | | | 23 | NAM | name | JOE'S | | | | (residence and | BARBERSHOP | | | | office | | | | | occupant) | | | | | | | | 24 | ZIP | postal/zip | 10027-1234 | | | | code | | | | | | | | 25 | |type of placeplacetype | office | | | | | | | 26 | | floor | 4 | | | | | | | 27 | | room number | 450F | | | | | | | 128 | | script | Latn | | | | | | | 255 | | reserved | | +----------------+----------------+----------------+----------------+ The CA types labeled in the second column correspond to items from the NENA "Recommended Formats & Protocols For ALI Data Exchange, ALI Response & GIS Mapping"[8],[15], but are applicable to most countries. The "NENA" column refers to the data dictionary name in Exhibit 18 of[8].[15]. The "language" item (CAtype 0) optionally identifies the language used for presenting the address information, drawing from the tags for identifying languages in [7]. If omitted, the default value for this tag is "i-default" [3]. The "script" item (CAtype 128) optionally identifies the script used for presenting the address information, drawing from the tags for identifying scripts in ISO 15924 [11]. If omitted, the default value for this tag is "Latn". The NAM object is used to aid user location ("Joe Miller" "Alice's Dry Cleaning"). It does not identify the person using a communications device, but rather the person or organization associated with the address. For POD and PRD, in English-speaking countries, the abbreviations N, E, S, W, and NE, NW, SE, SW should be used. STS designates a street suffix. In the United States (US), the abbreviations recommended by the United States Postal Service Publication 28[7],[14], Appendix C, SHOULD be used. The "type of place" itemindicates whether(CAtype 25) describes thelocationtype of place described by the civic coordinates. For example, it describes whether it is a'home', 'office'home, office, street or'public', using text strings. Additional text strings can be registered with IANA and correspond toother public space. The values are drawn from the"placetype" elementitems in[9]. The "privacy" object can havethestring values: public: Others may be able to see or hearrich presence [16] document. This information makes it easy, for example, for thecommunications. private: Inappropriate individuals are not likelyDHCP client tosee or hearthen populate thecommunications. quiet: The locationpresence information. Since this is an IANA-registered token, the language and script designations do not apply for this element. 4. Example Rather than showing the precise byte layout of aplace such asDHCP option, we show alibrary, restaurant, place-of-worship, or theater that discourages noise, conversation and other distractions. Additional string values can be registered with IANA usingsymbolic example below, representing theregistry establishedcivic address of the Munich city hall in[9].Bavaria, Germany. TheDHCP long-options mechanism describedcity and state name are also conveyed inRFC 3396 [3] MUST be used ifEnglish and Italian in addition to German; thecivil address option exceedsother items are assumed to be common across all languages. All languages use themaximum DHCP option size of 255 octets.latin script. +--------+---------------+ | CAtype | CAvalue | +--------+---------------+ | 0 | de | | | | | 128 | Latn | | | | | 1 | Bayern | | | | | 2 | Oberbayern | | | | | 3 | M=U+00FCnchen | | | | | 6 | Marienplatz | | | | | 19 | 8 | | | | | 21 | Rathaus | | | | | 24 | 80331 | | | | | 25 | public | | | | | 0 | en | | | | | 1 | Bavaria | | | | | 3 | Munich | | | | | 0 | it | | | | | 1 | Baviera | | | | | 3 | Monaco | +--------+---------------+ 5. Security Considerations The information in this option may be used for a variety of tasks. In some cases, integrity of the information may be of great importance. In such cases, DHCP authentication in RFC3118 [4] SHOULD be used to protect the integrity of the DHCP options. 6. IANA Considerations This document requests that IANA register a new DHCPv4 and DHCPv6 option code for the Civic Address . This document establishes a new IANA registry for CAtypes designating civic address components. According to RFC 2434 [12], this registry operates under the "Specification Required" rules. The IANA registration needs to include the following information: CAType: Numeric identifier, assigned by IANA. Brief description: Short description identifying the meaning of the element. Reference to published specification: A stable reference to an RFC or other permanent and readily available reference, in sufficient detail so that interoperability between independent implementations is possible. Country-specific considerations: If applicable, notes whether the element is only applicable or defined for certain countries. Normative References [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [2] Droms, R., "Dynamic Host Configuration Protocol", RFC 2131, March 1997. [3] Alvestrand, H., "IETF Policy on Character Sets and Languages", BCP 18, RFC 2277, January 1998. [4] Droms, R. and W. Arbaugh, "Authentication for DHCP Messages", RFC 3118, June 2001. [5] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C. and M. Carney, "Dynamic Host Configuration Protocol for IPv6 (DHCPv6)", RFC 3315, July 2003. [6] Yergeau, F., "UTF-8, a transformation format of ISO 10646", STD 63, RFC 3629, November 2003. [7] Alvestrand, H., "Tags for the Identification of Languages", BCP 47, RFC 3066, January 2001. [8] Lemon, T. and S. Cheshire, "Encoding Long Options in the Dynamic Host Configuration Protocol (DHCPv4)", RFC 3396, November 2002.[4] Droms, R. and W. Arbaugh, "Authentication for DHCP Messages",[9] Mealling, M., "The IETF XML Registry", BCP 81, RFC3118, June 2001. [5]3688, January 2004. [10] Sugano, H. and S. Fujimoto, "Presence Information Data Format (PIDF)", draft-ietf-impp-cpim-pidf-08 (work in progress), May 2003. [11] International Organization for Standardization, ISO., "Information and documentation - Codes for the representation of names of scripts", February 2004. Informative References[6][12] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 2434, October 1998. [13] Polk, J., Schnizlein, J. and M. Linsner, "Dynamic Host Configuration Protocol Option for Coordinate-based Location Configuration Information", draft-ietf-geopriv-dhcp-lci-option-03 (work in progress), December 2003.[7][14] United States Postal Service, "Postal Addressing Standards", November 2000.[8][15] National Emergency Number Assocation, "NENA Recommended Formats and Protocols For ALI Data Exchange, ALI Response and GIS Mapping", NENA NENA-02-010, January 2002.[9][16] Schulzrinne, H.,"RPID --Gurbani, V., Kyzivat, P. and J. Rosenberg, "RPID: Rich Presence: Extensions to the Presence Information DataFormat", draft-ietf-simple-rpid-00Format (PIDF)", draft-ietf-simple-rpid-02 (work in progress),July 2003.March 2004. Author's Address Henning Schulzrinne Columbia University Department of Computer Science 450 Computer Science Building New York, NY 10027 US Phone: +1 212 939 7042 EMail: hgs+simple@cs.columbia.edu URI: http://www.cs.columbia.edu Appendix A. AcknowledgmentsRohan Mahy andHarald Alvestrand, Stefan Berger and Rohan Mahy provided helpful comments. Intellectual Property Statement The IETF takes no position regarding the validity or scope of anyintellectual propertyIntellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available;neithernor does it represent that it has made any independent effort to identify any such rights. Information on the IETF's procedures with respect to rights instandards-track and standards-related documentationIETF Documents can be found inBCP-11.BCP 78 and BCP 79. Copies ofclaims of rightsIPR disclosures madeavailable for publicationto the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights byimplementorsimplementers or users of this specification can be obtained from the IETFSecretariat.on-line IPR repository at http://www.ietf.org/ipr. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rightswhichthat may cover technology that may be required topracticeimplement this standard. Please address the information to the IETFExecutive Director. Full Copyright Statement Copyright (C) The Internet Society (2004). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purposeat ietf-ipr@ietf.org. Disclaimer ofdeveloping Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assignees.Validity This document and the information contained hereinisare provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCEDISCLAIMSDISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Copyright Statement Copyright (C) The Internet Society (2004). This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights. Acknowledgment Funding for the RFC Editor function is currently provided by the Internet Society.