Internet Engineering Task Force J. Polk Internet Draft J. Schnizlein Expiration: Nov 13th, 2003 M. Linsner File: draft-ietf-geopriv-dhcp-lci-option-00.txt Cisco Systems Location Configuration Information for GEOPRIV May 13th, 2003 Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. 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. Abstract This document specifies a Dynamic Host Configuration Protocol Option for the geographic location of the client. The Location Configuration Information (LCI) includes latitude, longitude, and altitude, with resolution indicators for each, as well as for the datum of the location. Polk/Schnizlein/Linsner [Page 1] Internet Draft LCI for Geopriv May 13th, 2003 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1 Conventions . . . . . . . . . . . . . . . . . . . . . . 3 1.2 Motivation . . . . . . . . . . . . . . . . . . . . . . . 3 1.3 Rationale . . . . . . . . . . . . . . . . . . . . . . . 4 2. Location Configuration Information (LCI) Elements . . . . . . 4 2.1 Elements of the Location Configuration Information . . . 5 3. Purpose of Resolution Value per La/Lo/Alt Element . . . . . . 7 4. Security Considerations . . . . . . . . . . . . . . . . . . 7 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 6. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 7. Author Information . . . . . . . . . . . . . . . . . . . . . 9 Appendix Calculations of Imprecision possible with the DHC LCI . 10 A.1 LCI of "White House" (Example 1) . . . . . . . . . . . . 10 A.2 LCI of "Sears Tower" (Example 2) . . . . . . . . . . . . 12 8. Full Copyright Statement . . . . . . . . . . . . . . . . . . . 13 1.0 Introduction This document specifies a Dynamic Host Configuration Protocol [1] Option for the geographic location of the client, to be provided by the server. The DHCP server is assumed to have determined the location from the Circuit-ID Relay Agent Information Option (RAIO) defined (as SubOpt 1) in [2]. In order to translate the circuit (switch port identifier) into a location, the DHCP server is assumed to have access to a service that maps from circuit-ID to the location at which the circuit connected to that port terminates in the building; for example, the location of the wall jack. The Location Configuration Information (LCI) format presented here could be considered a subset of the information which would be included in a GEOPRIV Location Object. This LCI is part of the generation of location by the GEOPRIV origin. An important feature of this document is it places location information completely under control of the end device rather than storing this Location Configuration Information in an outside service for retrieval by the end device. Storage outside the end device during times of emergency can cause unnecessary delay, or failure during communication. Another important feature of this LCI is its inclusion of a resolution parameter for each of the dimensions of location. The GEOPRIV working group has a stated requirement [3] to enable decreasing the precision of a location element. Because this resolution parameter need not apply to all dimensions equally, a resolution value is included for each of the 3 location elements. Polk/Schnizlein/Linsner [Page 2] Internet Draft LCI for Geopriv May 13th, 2003 This resolution method provides a natural ability for the device to hide from the center point of the bounding area as this resolution method is determined via the inherent affects of binary mathematics, using the power of 2. The resulting location information using this resolution method is a small fixed length Configuration Information that can be easily carried in protocols, such as DHCP, which have limited packet size because this LCI is only 16 bytes long. Finally, in the appendix this document provides some arithmetic examples of just how the imprecision can be introduced in any or all of the La/Lo/Alt values without the IP device needing to be preprogrammed with bogus location information, and just how imprecise the La/Lo/Alt values can be. This document does not cover any policy regarding the use of this other than a few as potential suggestions to convey the meaning intended by the document. 1.1 Conventions used in this document 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 [4]. 1.2 Motivation As applications such as IP Telephony are replacing conventional telephony, users are expecting the same (or greater) level of services with the new technology. One service offered by conventional telephony that is missing, in any standardized fashion, within IP Telephony is for a user to be automatically located by emergency responders, in a timely fashion, when the user summons help (by dialing 911 in North America, for example). Unless strict administrative rules are followed, the mobility of a wired Ethernet device within a campus negates any opportunity for an emergency responder to locate the device with any degree of expediency. Users do not want to give up the mobility IP Telephony offers. Informing the host device of its geo-location at host configuration time will allow the device to utilize this geo-location information to inform others of it's current geo-location, if the user and/or application so desires. The goal of this option is to enable a wired Ethernet host to provide its location to an emergency responder, as one example. Polk/Schnizlein/Linsner [Page 3] Internet Draft LCI for Geopriv May 13th, 2003 Wireless hosts can utilize this option to gain knowledge of the location of the radio access point used during host configuration, but will need some more exotic mechanisms, maybe GPS, or maybe a future DHCP option, which includes a list of geo-locations like that defined here, which has the locations of the radio access points that are close to the client. 1.3 Rationale Within the LCI described here, Latitude and Longitude are represented in fixed-point 2s-complement binary degrees, for the economy of a smaller option size compared to the string encoding of digits in [5]. The integer parts of these fields are 9 bits long to accommodate +/- 180 degrees. The fractional part is 25 bits long, better than the precision of 7 decimal digits. Each parameter is 40 bits total, in length. Altitude is represented in measurement units (MU) indicated by the MU field, which is 4 bits long. Two measurement units are defined here, meters (code=1) and floors (code=2), both of which are 2s- complement fixed-point with 8 bits of fraction. Additional measurement units MAY be assigned by IANA. The floor of a building is often the relevant location information, and not necessarily computable from meters of altitude. Each of these 3 variables is preceded by an accuracy sub-field of 6 bits, indicating the number of bits of resolution. This resolution sub-field accommodates the GEOPRIV requirement [3] to easily adjust the precision of a reported location. Contents beyond the claimed resolution MAY be randomized to obscure greater precision that might be available. 2.0 DHC Location Configuration Information Elements DHCP is a binary Protocol; GEOPRIV is text-based. Most coordinate systems translate fairly easily between binary-based and text-based location output (i.e. even emergency services within the US). The authors believe translation/conversion is a non-issue with DHCP's binary format. This binary format provides a fortunate benefit in a mechanism for making a true/correct location coordinate imprecise. It further provides the capability to have this binary representation be deterministically imprecise. Polk/Schnizlein/Linsner [Page 4] Internet Draft LCI for Geopriv May 13th, 2003 The proposed LCI format is: 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 | 16 | LaRes | Latitude + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Latitude (cont'd) | LoRes | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Longitude | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | MU | AltRes | Altitude | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Alt (cont'd) | Datum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 2.1 Elements of the Location Configuration Information Code TBD: The code for this DHCP option is TBD by IANA. 16: The length of this option is 16 bytes. LaRes: Latitude resolution. 6 bits indicating the valid number of valid bits in the fixed-point value of Latitude. This value is the number of high-order Latitude bits that should be considered valid. Any bits entered to the right of this limit should not be considered valid and might be purposely false, or zeroed by the sending device (meaning the Geopriv target towards the requestor). The examples below in section 4.0, are to illustrate that a smaller value in the resolution field increases the area within which the device is located (without deception). Values of resolution above decimal 34 are Undefined and reserved because that is the largest number of bits in the Latitude field. Latitude: a 34 bit fixed point value consisting of 9 bits of integer and 25 bits of fraction. Latitude SHOULD be normalized to within +/- 90 degrees. Geo-location formats provide for positive numbers to be north of the equator and negative numbers to be south of the equator. A value of 2 in the LaRes field indicates a precision of no greater than 1/6th that of the globe (detailed in the first example in section 4.0). A value of 34 in the LaRes field indicates a precision within 3.11 mm in Latitude. Polk/Schnizlein/Linsner [Page 5] Internet Draft LCI for Geopriv May 13th, 2003 LoRes: Longitude resolution. 6 bits indicating the number of valid bits in the fixed-point value of Longitude. This value is the number of high-order Longitude bits that should be considered valid. Any bits entered to the right of this limit should not be considered valid and might be purposely false, or zeroed by the sending device (meaning the GEOPRIV target towards the requestor). Values above decimal 34 are undefined and reserved. Longitude: a 34 bit fixed point value consisting of 9 bits of integer and 25 bits of fraction. Longitude SHOULD be normalized to within +/- 180 degrees. Geo-location formats provide for positive numbers to be east of the prime meridian and negative (2s complement) numbers to be west of the prime meridian. Entering a value of 2 in the LoRes field will result in the precision of no greater than 1/6th that of the globe (see first example in section 4.0 for more here). A value of 34 in the LoRes field indicates a precision within 2.42 mm in longitude (at the equator). Because lines of longitude converge at the poles, the distance is smaller (resolution greater) for locations away from the equator. AltRes: Altitude resolution. 6 bits indicating the number of valid bits in the altitude. Values above 30 (decimal) are undefined and reserved. MU: Measurement unit for altitude. Codes defined are: 1: Meters - in 2s-complement fixed-point 22-bit integer part with 8-bit fraction If MU = 1, an AltRes value 0 would indicate unknown altitude. The most precise Altitude would have an AltRes value of 30. 2: Floors - in 2s-complement fixed-point 22-bit integer part with 8-bit fraction MU = 2 for Floors enables representing altitude in a form more relevant in buildings which have different floor-to-floor dimensions. An altitude coded as MU=2, AltRes = 30, and Altitude = 0, represents the ground level outside as well as the ground floor within a building). This encoding is useful where the precise altitude is less important than the location at ground level. Any additional Geopriv Measurement Unit(s) to be defined for use via this DHC Option MUST be done through a Standards Track RFC. Polk/Schnizlein/Linsner [Page 6] Internet Draft LCI for Geopriv May 13th, 2003 Datum: The Map Datum used for the coordinates given in this Option The Datum byte has 255 possibilities, of which 3 are to be registered with IANA by this document (all derived from specification in [8]): 1: WGS 84 (Geographical 3D) - World Geodesic System 1984, CRS Code 4327, Prime Meridian Name: Greenwich 2: ED50 - European Datum 1950(77), CRS Code 4154, Prime Meridian Name: Greenwich 3: ED87 - European Datum 1987, CRS Code 4231, Prime Meridian Name: Greenwich Any additional Geopriv datum(s) to be defined for use via this DHC Option MUST be done through a Standards Track RFC. 3.0 Purpose of Resolution Value per La/Lo/Alt Element GEOPRIV specified [3] the requirement that any location expressed from or proxied on behalf of a device through the GEOPRIV Protocol can have the accuracy or precision of that device's location limited. The owner of the device, or the domain of the device determines the policy for divulging how precise the location is for any/all given requesters of that device's location. One aspect within the GEOPRIV WG is the precision of a device's ability to present its location coordinates might have a domain policy override the individual policy in the sense of maximum resolution possible. In other words, a user of a device might not mind providing a quite precise location return to a location request, but the local domain might not want that level of precision by its policy. In this case, the resolution value provided in the DHCP Reply can set this maximum precision value, perhaps allowing the user of the Target device to make the values more imprecise based on who is requesting their location. The document does not go further down this thought for good reason. 4.0 Security Considerations Where critical decisions might be based on the value of this GeoLoc option, DHCP authentication in [7] SHOULD be used to protect the integrity of the DHCP options. Polk/Schnizlein/Linsner [Page 7] Internet Draft LCI for Geopriv May 13th, 2003 5.0 IANA Considerations The DHCP option code for the GeoLoc option is TBD. This document calls for the IANA registration of the following: MU = 1 is meters of Altitude from mean low tide. Semantics are included in this document (section 2.1) MU = 2 is building Floors of Altitude. Semantics are included in this document (section 2.1) Datum = 1 is denoting WGS 84 (Geographical 3D) as defined by the EPSG as their CRS Code 4327 Datum = 2 is denoting ED50(77) as defined by the EPSG as their CRS Code 4154 Datum = 3 is denoting ED87 as defined by the EPSG as their CRS Code 4231 6.0 References [1] Droms R., "Dynamic Host Configuration Protocol", RFC 2131, March 1997 [2] Patrick M., "DHCP Relay Agent Information Option", RFC 3046, January 2001 [3] Cuellar J., Morris J., Mulligan D., "GEOPRIV Requirements", Internet Draft, "Work in Progress", June 2002 [4] Bradner S., "Key words for use in RFCs to Indicate Requirement Levels", RFC 2119, March 1997 [5] Farrell C., Schulze M., Pleitner S. and Baldoni D., "DNS Encoding of Geographical Location", RFC 1712, November 1994. [6] National Emergency Number Association (NENA) www.nena.org NENA Technical Information Document on Model Legislation Enhanced 911 for Multi-Line Telephone Systems (http://www.nena.org/9%2D1%2D1techstandards/TechInfoDocs/ MLTS_ModLeg_Nov200.PDF) [7] Droms R., "Authentication for DHCP Messages", RFC 3118, June 2001 [8] European Petroleum Survey Group, http://www.epsg.org/ and http://www.ihsenergy.com/epsg/geodetic2.html Polk/Schnizlein/Linsner [Page 8] Internet Draft LCI for Geopriv May 13th, 2003 7.0 Author Information James M. Polk Cisco Systems 2200 East President George Bush Turnpike Richardson, Texas 75082 USA jmpolk@cisco.com John Schnizlein Cisco Systems 9123 Loughran Road Fort Washington, MD 20744 USA john.schnizlein@cisco.com Marc Linsner Cisco Systems Marco Island, FL 34145 USA marc.linsner@cisco.com Polk/Schnizlein/Linsner [Page 9] Internet Draft LCI for Geopriv May 13th, 2003 Appendix: Calculations of Imprecision possible with the DHC LCI The following examples for two different locations demonstrate how the Resolution values for Latitude, Longitude and Altitude can be used. In both examples the geo-location values were derived from maps using the WGS84 map datum, therefore in these examples, the datum field would have a value = 1 (00000001, or 0x01). A.1 Location Configuration Information of "White House" (Example 1) The address was NOT picked for any political reason and can easily be found on the Internet or mapping software, but was picked as an easily identifiable location on our planet. Postal Address: White House 1600 Pennsylvania Ave. NW Washington, DC 20006 Standing on the sidewalk, north side of White House, between driveways. Latitude 38.89868 degrees North (or +38.89868 degrees) Using 2s complement, 34 bit fixed point, 25 bit fraction Latitude = 0x04dcc1fc8, Latitude = 0001001101110011000001111111001000 Longitude 77.03723 degrees West (or -77.03723 degrees) Using 2s complement, 34 bit fixed point, 25 bit fraction Longitude = 0xf65ecf031, Longitude = 1101100101111011001111000000110001 Altitude 15 In this example we are not inside a structure, therefore we will assume an altitude value of 15 meters, interpolated from the US Geological survey map, Washington West quadrangle. AltRes = 30, 0x1e, 011110 MU = 1, 0x01, 000001 Altitude = 15, 0x0F00, 00000000000000000000000001111100000000 If: LaRes is expressed as value 2 (0x02 or 000010) and LoRes is expressed as value 2 (0x02 or 000010), then it would describe a geo-location region that is north of the equator and extends from -1 degree (west of the meridian) to -128 degrees. This would include the area from approximately 600km south of Saltpond, Ghana, due north to the North Pole and approximately 4400km south-southwest of Los Angeles, CA due north to the North Polk/Schnizlein/Linsner [Page 10] Internet Draft LCI for Geopriv May 13th, 2003 Pole. This would cover an area of about one-sixth of the globe, approximately 20 million square nautical miles (nm). If: LaRes is expressed as value 3 (0x03 or 000011) and LoRes is expressed as value 3, (0x03 or 000011) then it would describe a geo-location area that is north from the equator to 63 degrees north, and -65 degrees to -128 degrees longitude. This area includes south of a line from Anchorage, AL to eastern Nunavut, CN. and from the Amazons of northern Brazil to approximately 4400km south-southwest of Los Angeles, CA. This area would include North America, Central America, and parts of Venezuela and Columbia, except portions of Alaska and northern and eastern Canada, approximately 10 million square nm. If: LaRes is expressed as value 5 (0x05 or 000101) and LoRes is expressed as value 5 (0x05 or 000101), then it would describe a geo-location area that is latitude 32 north of the equator to latitude 48 and extends from -64 degrees to -80 degrees longitude. This is approximately an east-west boundary of a time zone, an area of approximately 700,000 square nm. If: LaRes is expressed as value 9 (0x09 or 001001) and LoRes is expressed as value 9 (0x09 or 001001), which includes all the integer bits, then it would describe a geo-location area that is latitude 38 north of the equator to latitude 39 and extends from -77 degrees to -78 degrees longitude. This is an area of approximately 9600 square km (111.3km x 86.5km). If: LaRes is expressed as value 18 (0x12 or 010010) and LoRes is expressed as value 18 (0x12 or 010010), then it would describe a geo-location area that is latitude 38.8984375 north to latitude 38.9003906 and extends from -77.0390625 degrees to -77.0371094 degrees longitude. This is an area of approximately 36,600 square meters (169m x 217m). If: LaRes is expressed as value 22 (0x16 or 010110) and LoRes is expressed as value 22 (0x16 or 010110), then it would describe a geo-location area that is latitude 38.896816 north to latitude 38.8985596 and extends from -77.0372314 degrees to -77.0371094 degrees longitude. This is an area of approximately 143 square meters (10.5m x 13.6m). If: LaRes is expressed as value 28 (0x1c or 011100) and LoRes is expressed as value 28 (0x1c or 011100), then it would describe a geo-location area that is latitude 38.8986797 north to latitude 38.8986816 and extends from -77.0372314 degrees to -77.0372296 degrees longitude. This is an area of approximately 339 square centimeters (20.9cm x 16.23cm). If: LaRes is expressed as value 30 (0x1e or 011110) and LoRes is expressed as value 30 (0x1e or 011110), then it would describe a Polk/Schnizlein/Linsner [Page 11] Internet Draft LCI for Geopriv May 13th, 2003 geo-location area that is latitude 38.8986797 north to latitude 38.8986802 and extends from -77.0372300 degrees to -77.0372296 degrees longitude. This is an area of approximately 19.5 square centimeters (50mm x 39mm). If: LaRes is expressed as value 34 (0x22 or 100010) and LoRes is expressed as value 34 (0x22 or 100010), then it would describe a geo-location area that is latitude 38.8986800 north to latitude 38.8986802 and extends from -77.0372300 degrees to -77.0372296 degrees longitude. This is an area of approximately 7.5 square millimeters (3.11mm x 2.42mm). In the (White House) example, the requirement of emergency responders in North America via their NENA Model Legislation [6], could be met by a LaRes value of 21 and a LoRes value of 20. This would yield a geo-location that is latitude 38.8984375 north to latitude 38.8988616 north and longitude -77.0371094 to longitude -77.0375977. This is an area of approximately 89 feet by 75 feet or 6669 square feet, which is very close to the 7000 square feet asked for by NENA. In this example a service provider could enforce that a device send a Location Configuration Information with this minimum amount of resolution for this particular location when calling emergency services. A.2 Location Configuration Information of "Sears Tower" (Example 2) Postal Address: Sears Tower 103th Floor 233 S. Wacker Dr. Chicago, IL 60606 Viewing the Chicago area from the Observation Deck of the Sears Tower. Latitude 41.87884 degrees North (or +41.87884 degrees) Using 2s complement, 34 bit fixed point, 25 bit fraction Latitude = 0x053c1f751, Latitude = 0001010011110000011111011101010001 Longitude 87.63602 degrees West (or -87.63602 degrees) Using 2s complement, 34 bit fixed point, 25 bit fraction Longitude = 0xf50ba5b97, Longitude = 1101010000101110100101101110010111 Altitude 103 In this example we are inside a structure, therefore we will assume an altitude value of 103 to indicate the floor we are on. The measurement unit value is 2 indicating floors. The AltRes Polk/Schnizlein/Linsner [Page 12] Internet Draft LCI for Geopriv May 13th, 2003 field would indicate that all bits in the Altitude field are true, as we want to accurately represent the floor of the structure where we are located. AltRes = 30, 0x1e, 011110 MU = 2, 0x02, 000010 Altitude = 103, 0x00006700, 000000000000000110011100000000 For the accuracy of the latitude and longitude, the best information available to us was supplied by a generic mapping service that shows a single geo-loc for all of the Sears Tower. Therefore we are going to show LaRes as value 18 (0x12 or 010010) and LoRes as value 18 (0x12 or 010010). This would be describing a geo-location area that is latitude 41.8769531 to latitude 41.8789062 and extends from -87.6367188 degrees to -87.6347657 degrees longitude. This is an area of approximately 373412 square feet (713.3 ft. x 523.5 ft.). 8. Full Copyright Statement "Copyright (C) The Internet Society (February 23rd, 2001). 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 purpose of developing 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 assigns. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS 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." The Expiration date for this Internet Draft is: Nov 13th, 2003 Polk/Schnizlein/Linsner [Page 13]