draft-ietf-geopriv-dhcp-lci-option-03.txt   rfc3825.txt 
Internet Engineering Task Force J. Polk Network Working Group J. Polk
Internet Draft J. Schnizlein Request for Comments: 3825 J. Schnizlein
Expiration: June 8th, 2004 M. Linsner Category: Standards Track M. Linsner
File: draft-ietf-geopriv-dhcp-lci-option-03.txt Cisco Systems Cisco Systems
July 2004
Dynamic Host Configuration Protocol Option for Dynamic Host Configuration Protocol Option for
Coordinate-based Location Configuration Information Coordinate-based Location Configuration Information
December 8th, 2003
Status of this Memo Status of this Memo
This document is an Internet-Draft and is in full conformance with This document specifies an Internet standards track protocol for the
all provisions of Section 10 of RFC2026. Internet community, and requests discussion and suggestions for
improvements. Please refer to the current edition of the "Internet
Internet-Drafts are working documents of the Internet Engineering Official Protocol Standards" (STD 1) for the standardization state
Task Force (IETF), its areas, and its working groups. Note that and status of this protocol. Distribution of this memo is unlimited.
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 Copyright Notice
http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed Copyright (C) The Internet Society (2004).
at http://www.ietf.org/shadow.html.
Abstract Abstract
This document specifies a Dynamic Host Configuration Protocol Option This document specifies a Dynamic Host Configuration Protocol Option
for the coordinate-based geographic location of the client. The for the coordinate-based geographic location of the client. The
Location Configuration Information (LCI) includes latitude, Location Configuration Information (LCI) includes latitude,
longitude, and altitude, with resolution indicators for each. The longitude, and altitude, with resolution indicators for each. The
reference datum for these values is also included. reference datum for these values is also included.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1 Conventions . . . . . . . . . . . . . . . . . . . . . . 3 1.1. Conventions . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Motivation . . . . . . . . . . . . . . . . . . . . . . . 3 1.2. Motivation . . . . . . . . . . . . . . . . . . . . . . . 3
1.3 Rationale . . . . . . . . . . . . . . . . . . . . . . . 4 1.3. Rationale . . . . . . . . . . . . . . . . . . . . . . . 4
2. Location Configuration Information (LCI) Elements . . . . . . 4 2. Location Configuration Information (LCI) Elements. . . . . . . 4
2.1 Elements of the Location Configuration Information . . . 5 2.1. Elements of the Location Configuration Information . . . 5
3. Security Considerations . . . . . . . . . . . . . . . . . . 8 3. Security Considerations. . . . . . . . . . . . . . . . . . . . 8
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 4. IANA Considerations. . . . . . . . . . . . . . . . . . . . . . 8
5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 9 5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 9
Appendix Calculations of Imprecision possible with the DHC LCI . 9 Appendix Calculations of Imprecision possible with the DHC LCI . . 10
A.1 LCI of "White House" (Example 1) . . . . . . . . . . . . 9 A.1. LCI of "White House" (Example 1) . . . . . . . . . . . . 10
A.2 LCI of "Sears Tower" (Example 2) . . . . . . . . . . . . 12 A.2. LCI of "Sears Tower" (Example 2) . . . . . . . . . . . . 12
6. Normative References . . . . . . . . . . . . . . . . . . . . 12 6. References . . . . . . . . . . . . . . . . . . . . . . . . . . 13
7. Informational References . . . . . . . . . . . . . . . . . . 13 6.1. Normative References . . . . . . . . . . . . . . . . . . 13
8. Author Information . . . . . . . . . . . . . . . . . . . . . 13 6.2. Informational References . . . . . . . . . . . . . . . . 14
7. Author Information . . . . . . . . . . . . . . . . . . . . . . 14
8. Full Copyright Statement . . . . . . . . . . . . . . . . . . . 15
1. Introduction 1. Introduction
This document specifies a Dynamic Host Configuration Protocol [1] This document specifies a Dynamic Host Configuration Protocol [1]
Option for coordinate-based geographic location of the client, to be Option for the coordinate-based geographic location of the client, to
provided by the server. be provided by the server.
The DHCP server is assumed to have determined the location from the The DHCP server is assumed to have determined the location from the
Circuit-ID Relay Agent Information Option (RAIO) defined (as SubOpt Circuit-ID Relay Agent Information Option (RAIO) defined (as SubOpt
1) in [2]. In order to translate the circuit (switch port 1) in [2]. In order to translate the circuit (switch port
identifier) into a location, the DHCP server is assumed to have identifier) into a location, the DHCP server is assumed to have
access to a service that maps from circuit-ID to the location at access to a service that maps from circuit-ID to the location at
which the circuit connected to that port terminates in the building; which the circuit connected to that port terminates in the building,
for example, the location of the wall jack. for example, the location of the wall jack.
An important feature of this specification is that after the An important feature of this specification is that after the relevant
relevant DHC exchanges have taken place, the location information DHC exchanges have taken place, the location information is stored on
is stored on the end device rather than somewhere else, where the end device rather than somewhere else, where retrieving it might
retrieving it might be difficult in practice. be difficult in practice.
Another important feature of this LCI is its inclusion of a Another important feature of this LCI is its inclusion of a
resolution parameter for each of the dimensions of location. resolution parameter for each of the dimensions of location. Because
Because this resolution parameter need not apply to all dimensions this resolution parameter need not apply to all dimensions equally, a
equally, a resolution value is included for each of the 3 location resolution value is included for each of the 3 location elements.
elements.
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 effects of binary
representation; or, this resolution mechanism could be used to
define a geographic area. This would be useful when a group of
clients would want to be known as the same geo-location, possibly
all users in a room of a building would use the same LCI value.
Then the using application could use that value as a key for lookup
in another data source. This is similar to one of the mechanisms
utilized in the North American E911 systems today.
Resolution does not define how Geographic Privacy policy should Resolution does not define Geographic Privacy policy.
relate to precision.
The resulting location information using this resolution method is a The resulting location information using this resolution method is a
small fixed length Configuration Information that can be easily small fixed length Configuration Information that can be easily
carried in protocols, such as DHCP, which have limited packet size carried in protocols, such as DHCP, which have limited packet size
because this LCI is only 18 bytes long. because this LCI is only 18 bytes long.
Finally, the appendix this document provides some arithmetic Finally, the appendix of this document provides some arithmetic
examples of the implication of different resolution values on the examples of the implication of different resolution values on the
La/Lo/Alt. La/Lo/Alt.
1.1 Conventions used in this document 1.1. Conventions used in this document
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [3]. document are to be interpreted as described in [3].
1.2 Motivation 1.2. Motivation
As applications such as IP Telephony are replacing conventional As applications such as IP Telephony are replacing conventional
telephony, users are expecting the same (or greater) level of telephony, users are expecting the same (or greater) level of
services with the new technology. One service offered by services with the new technology. One service offered by
conventional telephony that is missing, in any standardized fashion, conventional telephony that is missing in any standardized fashion
within IP Telephony is for a user to be automatically located by within IP Telephony is for a user to be automatically located by
emergency responders, in a timely fashion, when the user summons emergency responders, in a timely fashion, when the user summons help
help (by dialing 911 in North America, for example). Unless strict (by dialing 911 in North America, for example). Unless strict
administrative rules are followed, the mobility of a wired Ethernet administrative rules are followed, the mobility of a wired Ethernet
device within a campus negates any opportunity for an emergency device within a campus negates any opportunity for an emergency
responder to locate the device with any degree of expediency. Users responder to locate the device with any degree of expediency. Users
do not want to give up the mobility IP Telephony offers. Informing do not want to give up the mobility IP Telephony offers. Informing
the host device of its geo-location at host configuration time will the host device of its geo-location at host configuration time will
allow the device to utilize this geo-location information to inform allow the device to utilize this geo-location information to inform
others of it's current geo-location, if the user and/or application others of its current geo-location, if the user and/or application so
so desires. desires.
The goal of this option is to enable a wired Ethernet host to The goal of this option is to enable a wired Ethernet host to obtain
obtain its location, which it could provide to an emergency its location, which it could provide to an emergency responder, as
responder, as one example. one example.
Wireless hosts can utilize this option to gain knowledge of the Wireless hosts can utilize this option to gain knowledge of the
location of the radio access point used during host configuration, location of the radio access point used during host configuration,
but would need some more exotic mechanisms, maybe GPS, or maybe a but would need some more exotic mechanisms, maybe GPS, or maybe a
future DHCP option, which includes a list of geo-locations like that future DHCP option, which includes a list of geo-locations like that
defined here, containing the locations of the radio access points defined here, containing the locations of the radio access points
that are close to the client. that are close to the client.
1.3 Rationale 1.3. Rationale
Within the LCI described here, Latitude and Longitude are Within the LCI described here, Latitude and Longitude are represented
represented in fixed-point 2s-complement binary degrees, for the in fixed-point 2s-complement binary degrees, for the economy of a
economy of a smaller option size compared to a string encoding of smaller option size compared to a string encoding of digits in [7].
digits in [7]. The integer parts of these fields are 9 bits long to The integer parts of these fields are 9 bits long to accommodate +/-
accommodate +/- 180 degrees. The fractional part is 25 bits long, 180 degrees. The fractional part is 25 bits long, better than the
better than the precision of 7 decimal digits. Each parameter is 40 precision of 7 decimal digits. The length of each field is 40 bits,
bits total, in length. 34 of which is the sum of the integer (9) and fractional (25) bits,
plus 6 bits of resolution.
Altitude is determined by the Altitude Type (AT) indicated by the Altitude is determined by the Altitude Type (AT) indicated by the AT
AT field, which is 4 bits long. Two Altitude Types are defined field, which is 4 bits long. Two Altitude Types are defined here,
here, meters (code=1) and floors (code=2), both of which are 2s- meters (code=1) and floors (code=2), both of which are 2s-complement
complement fixed-point with 8 bits of fraction. Additional fixed-point with 22 bits of integer part and 8 bits of fractional
Altitude Types MAY be assigned by IANA. The "floors" Altitude Type part. Additional Altitude Types MAY be assigned by IANA. The
is provided because altitude in meters may not be known within a "floors" Altitude Type is provided because altitude in meters may not
building, and a floor indication may be more useful. be known within a building, and a floor indication may be more
useful.
GPS systems today can use WGS84 for horizontal and vertical datums, GPS systems today can use WGS84 for horizontal and vertical datums;
[6] defines WGS84 as a three-dimensional datum. For other datum [6] defines WGS84 as a three-dimensional datum. For other datum
values that do not include a vertical component, both the horizontal values that do not include a vertical component, both the horizontal
and vertical datum of reference will be specified in the IANA and vertical datum of reference will be specified in the IANA record.
record.
Each of these 3 elements is preceded by an accuracy sub-field of 6 Each of these 3 elements begins with an accuracy sub-field of 6 bits,
bits, indicating the number of bits of resolution. This resolution indicating the number of bits of resolution. This resolution sub-
sub-field accommodates the desire by some to easily adjust field accommodates the desire to easily adjust the precision of a
the precision of a reported location. Contents beyond the claimed reported location. Contents beyond the claimed resolution MAY be
resolution MAY be randomized to obscure greater precision that might randomized to obscure greater precision that might be available.
be available.
2. DHC Location Configuration Information Elements 2. DHC Location Configuration Information Elements
DHCP is a binary Protocol; using protocols of LCI are likely to be DHCP is a binary Protocol; using protocols of LCI are likely to be
text based. Since most coordinate systems translate fairly easily text based. Since most coordinate systems translate easily between
between binary-based and text-based location output (even emergency binary-based and text-based location output (even emergency services
services within the US), translation/conversion is a non-issue with within the US), translation/conversion is a non-issue with DHCP's
DHCP's binary format. binary format.
This binary format provides a fortunate benefit in a mechanism for This binary format provides a fortunate benefit in a mechanism for
making a true/correct location coordinate imprecise. It further making a true/correct location coordinate imprecise. It further
provides the capability to have this binary representation be provides the capability to have this binary representation be
deterministically imprecise. deterministically imprecise.
The LCI format is as follows: The LCI format is as follows:
0 1 2 3 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 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 + | Code 123 | 16 | LaRes | Latitude +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Latitude (cont'd) | LoRes | + | Latitude (cont'd) | LoRes | +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Longitude | | Longitude |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AT | AltRes | Altitude | | AT | AltRes | Altitude |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Alt (cont'd) | Datum | | Alt (cont'd) | Datum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
2.1 Elements of the Location Configuration Information 2.1. Elements of the Location Configuration Information
Code TBD: The code for this DHCP option. Code 123: The code for this DHCP option.
16: The length of this option is 16 bytes. 16: The length of this option is 16 bytes.
LaRes: Latitude resolution. 6 bits indicating the number LaRes: Latitude resolution. 6 bits indicating the number of
of valid bits in the fixed-point value of Latitude. valid bits in the fixed-point value of Latitude.
This value is the number of high-order Latitude bits that should be This value is the number of high-order Latitude bits that should be
considered valid. Any bits entered to the right of this limit considered valid. Any bits entered to the right of this limit should
should not be considered valid and might be purposely false, or not be considered valid and might be purposely false, or zeroed by
zeroed by the sending. the sender.
The examples below in section 4.0, are to illustrate that a smaller The examples in the appendix illustrate that a smaller value in the
value in the resolution field increases the area within which the resolution field increases the area within which the device is
device is located). located.
LaRes does not define how Geographic Privacy policy should relate to LaRes does not define Geographic Privacy policy.
precision.
Values of resolution above decimal 34 are Undefined and reserved Values 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 Latitude: a 34 bit fixed point value consisting of 9 bits of integer
and 25 bits of fraction. Latitude SHOULD be normalized to and 25 bits of fraction. Latitude SHOULD be normalized to
within +/- 90 degrees. Positive numbers are north of the within +/- 90 degrees. Positive numbers are north of the
equator and negative numbers are south of the equator. equator and negative numbers are south of the equator.
A value of 2 in the LaRes field indicates a precision of no greater 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 than 1/6th that of the globe (in the first example of the appendix).
section 4.0). A value of 34 in the LaRes field indicates a A value of 34 in the LaRes field indicates a precision of about 3.11
precision of about 3.11 mm in Latitude at the equator. mm in Latitude at the equator.
LoRes: Longitude resolution. 6 bits indicating the number of LoRes: Longitude resolution. 6 bits indicating the number of
valid bits in the fixed-point value of Longitude. valid bits in the fixed-point value of Longitude.
This value is the number of high-order Longitude bits that should be This value is the number of high-order Longitude bits that should be
considered valid. Any bits entered to the right of this limit considered valid. Any bits entered to the right of this limit should
should not be considered valid and might be purposely false, or not be considered valid and might be purposely false, or zeroed by
zeroed by the sending. the sender.
LoRes does not define how Geographic Privacy policy should relate to LoRes does not define Geographic Privacy policy.
precision.
Values above decimal 34 are undefined and reserved. Values above decimal 34 are undefined and reserved.
Longitude: a 34 bit fixed point value consisting of 9 bits of Longitude: a 34 bit fixed point value consisting of 9 bits of integer
integer and 25 bits of fraction. Longitude SHOULD be and 25 bits of fraction. Longitude SHOULD be normalized
normalized to within +/- 180 degrees. Positive values are to within +/- 180 degrees. Positive values are East of
East of the prime meridian and negative (2s complement) the prime meridian and negative (2s complement) numbers
numbers are West of the prime meridian. are West of the prime meridian.
A value of 2 in the LoRes field indicates precision of no greater A value of 2 in the LoRes field indicates precision of no greater
than 1/6th that of the globe (see first example in section 4.0). A than 1/6th that of the globe (see first example of the appendix). A
value of 34 in the LoRes field indicates a precision of about value of 34 in the LoRes field indicates a precision of about 2.42 mm
2.42 mm in longitude (at the equator). Because lines of longitude in longitude (at the equator). Because lines of longitude converge
converge at the poles, the distance is smaller (better precision) at the poles, the distance is smaller (better precision) for
for locations away from the equator. locations away from the equator.
Altitude: A 30 bit value defined by the AT field Altitude: A 30 bit value defined by the AT field
AltRes: Altitude resolution. 6 bits indicating the number of valid AltRes: Altitude resolution. 6 bits indicating the number of
bits in the altitude. Values above 30 (decimal) are valid bits in the altitude. Values above 30 (decimal) are
undefined and reserved. undefined and reserved.
AltRes does not define how Geographic Privacy policy should relate AltRes does not define Geographic Privacy policy.
to precision.
AT: Altitude Type for altitude. Codes defined are: AT: Altitude Type for altitude. Codes defined are:
1: Meters - in 2s-complement fixed-point 22-bit integer part with 1: Meters - in 2s-complement fixed-point 22-bit integer part with 8-
8-bit fraction bit fraction
If AT = 1, an AltRes value 0.0 would indicate unknown altitude. If AT = 1, an AltRes value 0.0 would indicate unknown altitude. The
The most precise Altitude would have an AltRes value of 30. Many most precise Altitude would have an AltRes value of 30. Many values
values of AltRes would obscure any variation due to vertical datum of AltRes would obscure any variation due to vertical datum
differences. differences.
2: Floors - in 2s-complement fixed-point 22-bit integer part with 2: Floors - in 2s-complement fixed-point 22-bit integer part with
8-bit fraction 8-bit fraction
AT = 2 for Floors enables representing altitude in a form more AT = 2 for Floors enables representing altitude in a form more
relevant in buildings which have different floor-to-floor relevant in buildings which have different floor-to-floor dimensions.
dimensions. An altitude coded as AT=2, AltRes = 30, and Altitude = An altitude coded as AT = 2, AltRes = 30, and Altitude = 0.0 is
0.0 is meaningful even outside a building, and represents ground meaningful even outside a building, and represents ground level at
level at the given latitude and longitude. Inside a building, 0.0 the given latitude and longitude. Inside a building, 0.0 represents
represents the floor level associated with ground level at the main the floor level associated with ground level at the main entrance.
entrance. This document defines a number; one must arrive at the This document defines a number; one must arrive at the number by
number by counting floors from the floor defined to be 0.0. counting floors from the floor defined to be 0.0.
The values represented by this AT will be of local significance. The values represented by this AT will be of local significance.
Since buildings and floors can vary due to lack of common control, Since buildings and floors can vary due to lack of common control,
the values chosen to represent the characteristics of an individual the values chosen to represent the characteristics of an individual
building will be derived and agreed upon by the operator of the building will be derived and agreed upon by the operator of the
building and the intended users of the data. Attempting to building and the intended users of the data. Attempting to
standardize this type of function is beyond the scope this document. standardize this type of function is beyond the scope this document.
Sub-floors can be represented by non-integer values. Example: a Sub-floors can be represented by non-integer values. Example: a
mezzanine between floor 1 and floor 2 could be represented as a mezzanine between floor 1 and floor 2 could be represented as a value
value=1.1. Example: (2) mezzanines between floor 4 and floor 5 = 1.1. Example: (2) mezzanines between floor 4 and floor 5 could be
could be represented as values=4.1 and 4.2 respectively. represented as values = 4.1 and 4.2 respectively.
Floors located below ground level could be represented by negative Floors located below ground level could be represented by negative
values. values.
Larger values represent floors that are above (higher in altitude) Larger values represent floors that are above (higher in altitude)
floors with lower values. floors with lower values.
The AltRes field SHOULD be set to maximum precision when AT = 2 The AltRes field SHOULD be set to maximum precision when AT = 2
(floors) when a floor value is included in the DHCP Reply, or (floors) when a floor value is included in the DHCP Reply, or the
the AT = 0 to denote the floor isn't known. AT = 0 to denote the floor isn't known.
Any additional LCI Altitude Types(s) to be defined for use via Any additional LCI Altitude Types(s) to be defined for use via this
this DHC Option MUST be done through a Standards Track RFC. DHC Option MUST be done through a Standards Track RFC.
Datum: The Map Datum used for the coordinates given in this Option Datum: The Map Datum used for the coordinates given in this Option
The datum must include both a horizontal and a vertical reference. The datum must include both a horizontal and a vertical reference.
Since the WGS 84 reference datum is three-dimensional, it includes Since the WGS 84 reference datum is three-dimensional, it includes
both. For any additional datum parameters, the datum codepoint must both. For any additional datum parameters, the datum codepoint must
specify both horizontal datum and vertical datum references. specify both horizontal datum and vertical datum references.
The Datum byte has 256 possibilities, of which 3 are to be The Datum byte has 256 possibilities, of which 3 have been registered
registered with IANA by this document (all derived from with IANA by this document (all derived from specification in [5]):
specification in [5]):
1: WGS 84 (Geographical 3D) - World Geodesic System 1984, CRS 1: WGS 84 (Geographical 3D) - World Geodesic System 1984, CRS
Code 4327, Prime Meridian Name: Greenwich Code 4327, Prime Meridian Name: Greenwich
2: NAD83 - North American Datum 1983, CRS Code 4269, Prime 2: NAD83 - North American Datum 1983, CRS Code 4269, Prime
Meridian Name: Greenwich; The associated vertical Meridian Name: Greenwich; The associated vertical datum
datum is the North American Vertical Datum of 1988 is the North American Vertical Datum of 1988 (NAVD88)
(NAVD88)
This datum pair to be used when referencing This datum pair is to be used when referencing
locations on land, not near tidal water (which would locations on land, not near tidal water (which would
use Datum = 3 below) use Datum = 3 below)
3: NAD83 - North American Datum 1983, CRS Code 4269, Prime 3: NAD83 - North American Datum 1983, CRS Code 4269, Prime
Meridian Name: Greenwich; The associated vertical Meridian Name: Greenwich; The associated vertical datum
datum is Mean Lower Low Water (MLLW) is Mean Lower Low Water (MLLW)
This datum pair to be used when referencing This datum pair is to be used when referencing
locations on water/sea/ocean locations on water/sea/ocean
Any additional LCI datum(s) to be defined for use via this DHC Any additional LCI datum(s) to be defined for use via this DHC Option
Option MUST be done through a Standards Track RFC. MUST be done through a Standards Track RFC.
3. Security Considerations 3. Security Considerations
Where critical decisions might be based on the value of this Where critical decisions might be based on the value of this GeoConf
GeoLoc option, DHCP authentication in [4] SHOULD be used to option, DHCP authentication in [4] SHOULD be used to protect the
protect the integrity of the DHCP options. integrity of the DHCP options.
Since there is no privacy protection for DHCP messages, an Since there is no privacy protection for DHCP messages, an
eavesdropper who can monitor the link between the DHCP server and eavesdropper who can monitor the link between the DHCP server and
requesting client can discover this LCI. requesting client can discover this LCI.
To minimize the unintended exposure of location information, the LCI To minimize the unintended exposure of location information, the LCI
option SHOULD be returned by DHCP servers only when the DHCP client option SHOULD be returned by DHCP servers only when the DHCP client
has included this option in its 'parameter request list' (section has included this option in its 'parameter request list' (section 3.5
3.5 [1]). [1]).
When implementing a DHC server that will serve clients across an When implementing a DHC server that will serve clients across an
uncontrolled network, one should consider the potential security uncontrolled network, one should consider the potential security
risks. risks.
4. IANA Considerations 4. IANA Considerations
IANA has assigned a DHCP option code of TBD for the GeoLoc option IANA has assigned a DHCP option code of 123 for the GeoConf option
defined in this document. defined in this document.
The GeoLoc Option defines two fields for which IANA is to maintain The GeoConf Option defines two fields for which IANA maintains a
a registry: The Altitude (AT) field (see Section 2) and the Datum registry: The Altitude (AT) field (see Section 2) and the Datum field
field (see Section 2). The datum indicator MUST include (see Section 2). The datum indicator MUST include specification of
specification of both horizontal and vertical datum. New values both horizontal and vertical datum. New values for the Altitude (AT)
for the Altitude (AT) field are assigned through "Standards Action" field are assigned through "Standards Action" [RFC 2434]. The
[RFC 2434]. The initial values of the Altitude registry are as initial values of the Altitude registry are as follows:
follows:
AT = 1 meters of Altitude defined by the vertical datum AT = 1 meters of Altitude defined by the vertical datum specified.
specified.
AT = 2 building Floors of Altitude. AT = 2 building Floors of Altitude.
Datum = 1 denotes the vertical datum WGS 84 as defined by the Datum = 1 denotes the vertical datum WGS 84 as defined by the EPSG as
EPSG as their CRS Code 4327; CRS Code 4327 also specifies their CRS Code 4327; CRS Code 4327 also specifies WGS 84 as
WGS 84 as the vertical datum the vertical datum
Datum = 2 denotes the vertical datum NAD83 as defined by the Datum = 2 denotes the vertical datum NAD83 as defined by the EPSG as
EPSG as their CRS Code 4269; North American Vertical Datum their CRS Code 4269; North American Vertical Datum of 1988
of 1988 (NAVD88) is the associated vertical datum for NAD83 (NAVD88) is the associated vertical datum for NAD83
Datum = 3 denotes the vertical datum NAD83 as defined by the Datum = 3 denotes the vertical datum NAD83 as defined by the EPSG as
EPSG as their CRS Code 4269; Mean Lower Low Water (MLLW) is their CRS Code 4269; Mean Lower Low Water (MLLW) is the
the associated vertical datum for NAD83 associated vertical datum for NAD83
Any additional LCI datum(s) to be defined for use via this DHC Any additional LCI datum(s) to be defined for use via this DHC Option
Option MUST be done through a Standards Track RFC. MUST be done through a Standards Track RFC.
5. Acknowledgements 5. Acknowledgements
The authors would like to thank Patrik Falstrom, Ralph Droms, Ted The authors would like to thank Patrik Falstrom, Ralph Droms, Ted
Hardie, Jon Peterson and Nadine Abbott for their inputs and Hardie, Jon Peterson, and Nadine Abbott for their inputs and
constructive comments regarding this document. Additionally, the constructive comments regarding this document. Additionally, the
authors would like to thank Greg Troxel for the education on authors would like to thank Greg Troxel for the education on vertical
vertical datums, and to Carl Reed. datums, and to Carl Reed.
Appendix: Calculations of Imprecision possible with the DHC LCI Appendix: Calculations of Imprecision Possible with the DHC LCI
The following examples for two different locations demonstrate The following examples for two different locations demonstrate how
how the Resolution values for Latitude, Longitude and Altitude the Resolution values for Latitude, Longitude, and Altitude can be
can be used. In both examples the geo-location values were derived used. In both examples the geo-location values were derived from
from maps using the WGS84 map datum, therefore in these examples, maps using the WGS84 map datum, therefore in these examples, the
the datum field would have a value = 1 (00000001, or 0x01). datum field would have a value = 1 (00000001, or 0x01).
A.1 Location Configuration Information of "White House" (Example 1) A.1. Location Configuration Information of "White House" (Example 1)
The address was NOT picked for any political reason and can The address was NOT picked for any political reason and can easily be
easily be found on the Internet or mapping software, but was found on the Internet or mapping software, but was picked as an
picked as an easily identifiable location on our planet. easily identifiable location on our planet.
Postal Address: Postal Address:
White House White House
1600 Pennsylvania Ave. NW 1600 Pennsylvania Ave. NW
Washington, DC 20006 Washington, DC 20006
Standing on the sidewalk, north side of White House, between Standing on the sidewalk, north side of White House, between
driveways. driveways.
Latitude 38.89868 degrees North (or +38.89868 degrees) Latitude 38.89868 degrees North (or +38.89868 degrees)
skipping to change at page 10, line 17 skipping to change at page 10, line 39
Latitude = 0x04dcc1fc8, Latitude = 0x04dcc1fc8,
Latitude = 0001001101110011000001111111001000 Latitude = 0001001101110011000001111111001000
Longitude 77.03723 degrees West (or -77.03723 degrees) Longitude 77.03723 degrees West (or -77.03723 degrees)
Using 2s complement, 34 bit fixed point, 25 bit fraction Using 2s complement, 34 bit fixed point, 25 bit fraction
Longitude = 0xf65ecf031, Longitude = 0xf65ecf031,
Longitude = 1101100101111011001111000000110001 Longitude = 1101100101111011001111000000110001
Altitude 15 Altitude 15
In this example we are not inside a structure, therefore we will In this example, we are not inside a structure, therefore we will
assume an altitude value of 15 meters, interpolated from the US assume an altitude value of 15 meters, interpolated from the US
Geological survey map, Washington West quadrangle. Geological survey map, Washington West quadrangle.
AltRes = 30, 0x1e, 011110 AltRes = 30, 0x1e, 011110
AT = 1, 0x01, 000001 AT = 1, 0x01, 000001
Altitude = 15, 0x0F00, 00000000000000000000000001111100000000 Altitude = 15, 0x0F00, 00000000000000000000000001111100000000
If: LaRes is expressed as value 2 (0x02 or 000010) and LoRes is 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 expressed as value 2 (0x02 or 000010), then it would describe a
geo-location region that is north of the equator and extends geo-location region that is north of the equator and extends from
from -1 degree (west of the meridian) to -128 degrees. This -1 degree (west of the meridian) to -128 degrees. This would
would include the area from approximately 600km south of include the area from approximately 600km south of Saltpond,
Saltpond, Ghana, due north to the North Pole and approximately Ghana, due north to the North Pole and approximately 4400km
4400km south-southwest of Los Angeles, CA due north to the North south-southwest of Los Angeles, CA due north to the North Pole.
Pole. This would cover an area of about one-sixth of the globe, This would cover an area of about one-sixth of the globe,
approximately 20 million square nautical miles (nm). approximately 20 million square nautical miles (nm).
If: LaRes is expressed as value 3 (0x03 or 000011) and LoRes is 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 expressed as value 3 (0x03 or 000011), then it would describe a
geo-location area that is north from the equator to 63 degrees geo-location area that is north from the equator to 63 degrees
north, and -65 degrees to -128 degrees longitude. This area north, and -65 degrees to -128 degrees longitude. This area
includes south of a line from Anchorage, AL to eastern Nunavut, includes south of a line from Anchorage, AL to eastern Nunavut,
CN. and from the Amazons of northern Brazil to approximately CN, and from the Amazons of northern Brazil to approximately
4400km south-southwest of Los Angeles, CA. This area would 4400km south-southwest of Los Angeles, CA. This area would
include North America, Central America, and parts of Venezuela include North America, Central America, and parts of Venezuela
and Columbia, except portions of Alaska and northern and eastern and Columbia, except portions of Alaska and northern and eastern
Canada, approximately 10 million square nm. Canada, approximately 10 million square nm.
If: LaRes is expressed as value 5 (0x05 or 000101) and LoRes is 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 expressed as value 5 (0x05 or 000101), then it would describe a
geo-location area that is latitude 32 north of the equator to geo-location area that is latitude 32 north of the equator to
latitude 48 and extends from -64 degrees to -80 degrees latitude 48 and extends from -64 degrees to -80 degrees
longitude. This is approximately an east-west boundary of a longitude. This is approximately an east-west boundary of a time
time zone, an area of approximately 700,000 square nm. zone, an area of approximately 700,000 square nm.
If: LaRes is expressed as value 9 (0x09 or 001001) and LoRes is If: LaRes is expressed as value 9 (0x09 or 001001) and LoRes is
expressed as value 9 (0x09 or 001001), which includes all the expressed as value 9 (0x09 or 001001), which includes all the
integer bits, then it would describe a geo-location area that is integer bits, then it would describe a geo-location area that is
latitude 38 north of the equator to latitude 39 and extends from latitude 38 north of the equator to latitude 39 and extends from
-77 degrees to -78 degrees longitude. This is an area of -77 degrees to -78 degrees longitude. This is an area of
approximately 9600 square km (111.3km x 86.5km). approximately 9600 square km (111.3km x 86.5km).
If: LaRes is expressed as value 18 (0x12 or 010010) and LoRes is 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 expressed as value 18 (0x12 or 010010), then it would describe a
skipping to change at page 11, line 44 skipping to change at page 12, line 22
degrees longitude. This is an area of approximately 19.5 square degrees longitude. This is an area of approximately 19.5 square
centimeters (50mm x 39mm). centimeters (50mm x 39mm).
If: LaRes is expressed as value 34 (0x22 or 100010) and LoRes is 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 expressed as value 34 (0x22 or 100010), then it would describe a
geo-location area that is latitude 38.8986800 north to latitude geo-location area that is latitude 38.8986800 north to latitude
38.8986802 and extends from -77.0372300 degrees to -77.0372296 38.8986802 and extends from -77.0372300 degrees to -77.0372296
degrees longitude. This is an area of approximately 7.5 square degrees longitude. This is an area of approximately 7.5 square
millimeters (3.11mm x 2.42mm). millimeters (3.11mm x 2.42mm).
In the (White House) example, the requirement of emergency In the (White House) example, the requirement of emergency responders
responders in North America via their NENA Model Legislation [8], in North America via their NENA Model Legislation [8] could be met by
could be met by a LaRes value of 21 and a LoRes value of 20. a LaRes value of 21 and a LoRes value of 20. This would yield a
This would yield a geo-location that is latitude 38.8984375 north geo-location that is latitude 38.8984375 north to latitude 38.8988616
to latitude 38.8988616 north and longitude -77.0371094 to north and longitude -77.0371094 to longitude -77.0375977. This is an
longitude -77.0375977. This is an area of approximately 89 feet area of approximately 89 feet by 75 feet or 6669 square feet, which
by 75 feet or 6669 square feet, which is very close to the 7000 is very close to the 7000 square feet requested by NENA. In this
square feet asked for by NENA. In this example a service example, a service provider could enforce that a device send a
provider could enforce that a device send a Location Location Configuration Information with this minimum amount of
Configuration Information with this minimum amount of resolution resolution for this particular location when calling emergency
for this particular location when calling emergency services. services.
A.2 Location Configuration Information of "Sears Tower" (Example 2) A.2. Location Configuration Information of "Sears Tower" (Example 2)
Postal Address: Postal Address:
Sears Tower Sears Tower
103rd Floor 103rd Floor
233 S. Wacker Dr. 233 S. Wacker Dr.
Chicago, IL 60606 Chicago, IL 60606
Viewing the Chicago area from the Observation Deck of the Sears Viewing the Chicago area from the Observation Deck of the Sears
Tower. Tower.
skipping to change at page 12, line 20 skipping to change at page 13, line 4
233 S. Wacker Dr. 233 S. Wacker Dr.
Chicago, IL 60606 Chicago, IL 60606
Viewing the Chicago area from the Observation Deck of the Sears Viewing the Chicago area from the Observation Deck of the Sears
Tower. Tower.
Latitude 41.87884 degrees North (or +41.87884 degrees) Latitude 41.87884 degrees North (or +41.87884 degrees)
Using 2s complement, 34 bit fixed point, 25 bit fraction Using 2s complement, 34 bit fixed point, 25 bit fraction
Latitude = 0x053c1f751, Latitude = 0x053c1f751,
Latitude = 0001010011110000011111011101010001 Latitude = 0001010011110000011111011101010001
Longitude 87.63602 degrees West (or -87.63602 degrees) Longitude 87.63602 degrees West (or -87.63602 degrees)
Using 2s complement, 34 bit fixed point, 25 bit fraction Using 2s complement, 34 bit fixed point, 25 bit fraction
Longitude = 0xf50ba5b97, Longitude = 0xf50ba5b97,
Longitude = 1101010000101110100101101110010111 Longitude = 1101010000101110100101101110010111
Altitude 103 Altitude 103
In this example we are inside a structure, therefore we will In this example, we are inside a structure, therefore we will assume
assume an altitude value of 103 to indicate the floor we are on. an altitude value of 103 to indicate the floor we are on. The
The Altitude Type value is 2 indicating floors. The AltRes Altitude Type value is 2, indicating floors. The AltRes field would
field would indicate that all bits in the Altitude field are indicate that all bits in the Altitude field are true, as we want to
true, as we want to accurately represent the floor of the accurately represent the floor of the structure where we are located.
structure where we are located.
AltRes = 30, 0x1e, 011110 AltRes = 30, 0x1e, 011110
AT = 2, 0x02, 000010 AT = 2, 0x02, 000010
Altitude = 103, 0x00006700, 000000000000000110011100000000 Altitude = 103, 0x00006700, 000000000000000110011100000000
For the accuracy of the latitude and longitude, the best For the accuracy of the latitude and longitude, the best information
information available to us was supplied by a generic mapping available to us was supplied by a generic mapping service that shows
service that shows a single geo-loc for all of the Sears Tower. a single geo-loc for all of the Sears Tower. Therefore we are going
Therefore we are going to show LaRes as value 18 (0x12 or 010010) to show LaRes as value 18 (0x12 or 010010) and LoRes as value 18
and LoRes as value 18 (0x12 or 010010). This would be describing (0x12 or 010010). This would be describing a geo-location area that
a geo-location area that is latitude 41.8769531 to latitude is latitude 41.8769531 to latitude 41.8789062 and extends from
41.8789062 and extends from -87.6367188 degrees to -87.6347657 -87.6367188 degrees to -87.6347657 degrees longitude. This is an
degrees longitude. This is an area of approximately 373412 area of approximately 373412 square feet (713.3 ft. x 523.5 ft.).
square feet (713.3 ft. x 523.5 ft.).
6. Normative References 6. References
[1] Droms R., "Dynamic Host Configuration Protocol", RFC 2131, 6.1. Normative References
March 1997
[2] Patrick M., "DHCP Relay Agent Information Option", RFC 3046,
January 2001
[3] Bradner S., "Key words for use in RFCs to Indicate Requirement [1] Droms, R., "Dynamic Host Configuration Protocol", RFC 2131, March
Levels", RFC 2119, March 1997 1997.
[4] Droms R., "Authentication for DHCP Messages", RFC 3118, June [2] Patrick, M., "DHCP Relay Agent Information Option", RFC 3046,
2001 January 2001.
[3] Bradner, S., "Key words for use in RFCs to Indicate Requirement
Levels", BCP 14, RFC 2119, March 1997.
[4] Droms, R. and W. Arbaugh, "Authentication for DHCP Messages", RFC
3118, June 2001.
[5] European Petroleum Survey Group, http://www.epsg.org/ and [5] European Petroleum Survey Group, http://www.epsg.org/ and
http://www.ihsenergy.com/epsg/geodetic2.html http://www.ihsenergy.com/epsg/geodetic2.html
[6] World Geodetic System 1984 (WGS 84), MIL-STD-2401, [6] World Geodetic System 1984 (WGS 84), MIL-STD-2401,
http://164.214.2.59/publications/specs/printed/WGS84/wgs84.html http://www.wgs84.com/
and http://www.wgs84.com/
7. Informational References 6.2. Informational References
[7] Farrell C., Schulze M., Pleitner S. and Baldoni D., "DNS [7] Farrell, C., Schulze, M., Pleitner, S. and D. Baldoni, "DNS
Encoding of Geographical Location", RFC 1712, November 1994. Encoding of Geographical Location", RFC 1712, November 1994.
[8] National Emergency Number Association (NENA) www.nena.org [8] National Emergency Number Association (NENA) www.nena.org NENA
NENA Technical Information Document on Model Legislation Technical Information Document on Model Legislation Enhanced 911
Enhanced 911 for Multi-Line Telephone Systems for Multi-Line Telephone Systems.
(http://www.nena.org/9%2D1%2D1techstandards/TechInfoDocs/
MLTS_ModLeg_Nov200.PDF)
8. Author Information 7. Author Information
James M. Polk James M. Polk
Cisco Systems Cisco Systems
2200 East President George Bush Turnpike 2200 East President George Bush Turnpike
Richardson, Texas 75082 USA jmpolk@cisco.com Richardson, Texas 75082 USA
EMail: jmpolk@cisco.com
John Schnizlein John Schnizlein
Cisco Systems Cisco Systems
9123 Loughran Road 9123 Loughran Road
Fort Washington, MD 20744 USA john.schnizlein@cisco.com Fort Washington, MD 20744 USA
EMail: john.schnizlein@cisco.com
Marc Linsner Marc Linsner
Cisco Systems Cisco Systems
Marco Island, FL 34145 USA marc.linsner@cisco.com Marco Island, FL 34145 USA
Intellectual Property Statement EMail: marc.linsner@cisco.com
The IETF takes no position regarding the validity or scope of any 8. Full Copyright Statement
intellectual property 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; neither does it represent that it
has made any effort to identify any such rights. Information on the
IETF's procedures with respect to rights in standards-track and
standards-related documentation can be found in BCP-11. Copies of
claims of rights made available for publication 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 by implementers or users of this specification
can be obtained from the IETF Secretariat.
The IETF invites any interested party to bring to its attention any Copyright (C) The Internet Society (2004). This document is subject
copyrights, patents or patent applications, or other proprietary to the rights, licenses and restrictions contained in BCP 78, and
rights which may cover technology that may be required to practice except as set forth therein, the authors retain all their rights.
this standard. Please address the information to the IETF Executive
Director.
Full Copyright Statement This document and the information contained herein are 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 FORCE DISCLAIM 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 (C) The Internet Society (February 23rd, 2001). Intellectual Property
All Rights Reserved.
This document and translations of it may be copied and furnished The IETF takes no position regarding the validity or scope of any
to others, and derivative works that comment on or otherwise Intellectual Property Rights or other rights that might be claimed to
explain it or assist in its implementation may be prepared, pertain to the implementation or use of the technology described in
copied, published and distributed, in whole or in part, without this document or the extent to which any license under such rights
restriction of any kind, provided that the above copyright notice might or might not be available; nor does it represent that it has
and this paragraph are included on all such copies and derivative made any independent effort to identify any such rights. Information
works. However, this document itself may not be modified in any on the procedures with respect to rights in RFC documents can be
way, such as by removing the copyright notice or references to found in BCP 78 and BCP 79.
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 Copies of IPR disclosures made to the IETF Secretariat and any
be revoked by the Internet Society or its successors or assigns. 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 by implementers or users of this
specification can be obtained from the IETF on-line IPR repository at
http://www.ietf.org/ipr.
This document and the information contained herein is provided on The IETF invites any interested party to bring to its attention any
an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET copyrights, patents or patent applications, or other proprietary
ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR rights that may cover technology that may be required to implement
IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE this standard. Please address the information to the IETF at ietf-
OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY ipr@ietf.org.
IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR
PURPOSE."
The Expiration date for this Internet Draft is: Acknowledgement
June 8th, 2004 Funding for the RFC Editor function is currently provided by the
Internet Society.
 End of changes. 

This html diff was produced by rfcdiff 1.25, available from http://www.levkowetz.com/ietf/tools/rfcdiff/