draft-ietf-ecrit-rough-loc-02.txt   draft-ietf-ecrit-rough-loc-03.txt 
Internet Engineering Task Force R. Barnes Internet Engineering Task Force R. Barnes
Internet-Draft M. Lepinski Internet-Draft M. Lepinski
Intended status: Standards Track BBN Technologies Intended status: Standards Track BBN Technologies
Expires: January 28, 2011 July 27, 2010 Expires: February 17, 2011 August 16, 2010
Using Imprecise Location for Emergency Context Resolution Using Imprecise Location for Emergency Context Resolution
draft-ietf-ecrit-rough-loc-02.txt draft-ietf-ecrit-rough-loc-03.txt
Abstract Abstract
Emergency calling works best when precise location is available for Emergency calling works best when precise location is available for
emergency call routing. However, there are situations in which a emergency call routing. However, there are situations in which a
location provider is unable or unwilling to provide precise location, location provider is unable or unwilling to provide precise location,
yet still wishes to enable subscribers to make emergency calls. This yet still wishes to enable subscribers to make emergency calls. This
document describes the level of location accuracy that providers must document describes the level of location accuracy that providers must
provide to enable emergency call routing. In addition, we descibe provide to enable emergency call routing. In addition, we descibe
how emergency services and non-emergency services can be invoked by how emergency services and non-emergency services can be invoked by
skipping to change at page 1, line 37 skipping to change at page 1, line 37
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on January 28, 2011. This Internet-Draft will expire on February 17, 2011.
Copyright Notice Copyright Notice
Copyright (c) 2010 IETF Trust and the persons identified as the Copyright (c) 2010 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. Determining sufficient location precision . . . . . . . . . . 4 3. Location Precision Requirements . . . . . . . . . . . . . . . 5
3.1. Location filtering . . . . . . . . . . . . . . . . . . . . 6 4. Location Filtering . . . . . . . . . . . . . . . . . . . . . . 5
3.2. Constructing location filters . . . . . . . . . . . . . . 10 4.1. Filter Region for a Known Location . . . . . . . . . . . . 6
3.2.1. Civic address considerations . . . . . . . . . . . . . 11 4.2. Constructing a Location Filter . . . . . . . . . . . . . . 8
3.3. Maintaining location filters . . . . . . . . . . . . . . . 12 4.3. Civic Address Considerations . . . . . . . . . . . . . . . 11
3.4. Applying location filters . . . . . . . . . . . . . . . . 12 4.4. Maintaining Location Filters . . . . . . . . . . . . . . . 12
4. Requesting emergency and non-emergency services . . . . . . . 13 4.5. Applying Location Filters . . . . . . . . . . . . . . . . 12
4.1. Emergency calling . . . . . . . . . . . . . . . . . . . . 13 5. Requesting Emergency and Non-emergency Services . . . . . . . 14
4.2. Non-emergency services . . . . . . . . . . . . . . . . . . 14 5.1. Emergency Calling . . . . . . . . . . . . . . . . . . . . 14
5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 14 5.2. Non-emergency Services . . . . . . . . . . . . . . . . . . 15
6. Security Considerations . . . . . . . . . . . . . . . . . . . 14 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 15
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16 7. Security Considerations . . . . . . . . . . . . . . . . . . . 16
8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 16 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17
8.1. Normative References . . . . . . . . . . . . . . . . . . . 16 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 17
8.2. Informative References . . . . . . . . . . . . . . . . . . 16 9.1. Normative References . . . . . . . . . . . . . . . . . . . 17
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 17 9.2. Informative References . . . . . . . . . . . . . . . . . . 17
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 18
1. Introduction 1. Introduction
Information about the location of an emergency caller is a critical Information about the location of an emergency caller is a critical
input to the process of emergency call establshment. Endpoint input to the process of emergency call establshment. Endpoint
location is used to determine which Public Safety Answering Point location is used to determine which Public Safety Answering Point
(PSAP) should be the destination of the call. (The entire emergency (PSAP) should be the destination of the call. (The entire emergency
calling process is described in detail in [6] and [1].) This process calling process is described in detail in [6] and [1].) This process
is most likely to work properly when the endpoint is provided with is most likely to work properly when the endpoint is provided with
the most accurate and precise information available about its the most accurate and precise information available about its
location. Using location information with maximal precision and location. Using location information with maximal precision and
accuracy minimizes the chance that a call will be mis-routed. In accuracy minimizes the chance that a call will be mis-routed.
addition, when that location is provided to the endpoint, the
endpoint is able to verify that the location is correct (to the When location is provided to the endpoint, the endpoint is able to
extent of the endpoint's knowledge of its own location) prior to an verify that the location is correct (to the extent of the endpoint's
emergency call, and is able to perform emergency call routing knowledge of its own location) prior to an emergency call, and is
functions on its own, providing redundancy for network-provided able to perform emergency call routing functions on its own,
functions. providing redundancy for network-provided functions. Moreover, when
endpoints have access to location information, they can look up PSAP
contact information themselves, reducing dependence on other call-
routing elements in the network, and increasing the overall
resilience of the system.
However, there may be situations in which it is not feasible for However, there may be situations in which it is not feasible for
endpoints to be provided with maximally precise and accurate endpoints to be provided with maximally precise and accurate
location. These cases may arise when computing precise location is location. These cases may arise when computing precise location is
an expensive or time-consuming operation (e.g., in the case of an expensive or time-consuming operation (e.g., in the case of
wireless triangulation), and location is needed quickly, as is often wireless triangulation), and location is needed quickly, as is often
the case in emergency situations. Or they may arise because the the case in emergency situations. Or they may arise because the
policy of a location provider does not allow precise location to be policy of a location provider does not allow precise location to be
provided to the endpoint. While it is undesirable to use imprecise provided to the endpoint. While it is undesirable to use imprecise
location for emergency call routing, the possibility that precise location for emergency call routing, the possibility that precise
location may not be available to the calling device must be location may not be available to the calling device must be
accomodated in order to make emergency calling possible in the accomodated in order to make emergency calling possible in the
largest possible set of circumstances. largest possible set of circumstances.
To put it another way, a need for emergency calling with imprecise
location can arise in two ways. Either the location of the endpoint
is not known to the location provider with a high degree of
precision, or the endpoint's precise location is known and the
location provider chooses to provide location with lower precision.
In the former case, the techniques described in this document can be
used to determine whether a given positioning mechanism provides
sufficient precision to support emergency calling. In the latter
case, such techniques can be used to determine how much a location
value can be "fuzzed" before it becomes unusable for emergency
services.
This document is concerned with imprecise location only in the This document is concerned with imprecise location only in the
context of routing emergency calls, i.e., for determining the correct context of routing emergency calls, i.e., for determining the correct
PSAP to receive a given call (e.g., via a LoST query [2]). Depending PSAP to receive a given call (e.g., via a LoST query [2]). Depending
on the the structure of the local emergency service network, the on the the structure of the local emergency service network, the
location information provided to the endpoint may also be used to location information provided to the endpoint may also be used to
route the call to an entity that is authorized to request precise route the call to an entity that is authorized to request precise
location, e.g., an Emergency Services Routing Proxy. The location, e.g., an Emergency Services Routing Proxy. The
requirements and processes described in this document are the same requirements and processes described in this document are the same
for both cases. for both cases. Detailed requirements are discussed in [7]
Location information may also be used in the emergency calling Location information may also be used in the emergency calling
framework to direct the dispatch of emergency responders. This usage framework to direct the dispatch of emergency responders. This usage
is treated separately from call routing for purposes of this is treated separately from call routing for purposes of this
document, and this document does not place requirements on the document, and this document does not place requirements on the
location provided for dispatch, although it should obviously be as location provided for dispatch, although it should obviously be as
precise as possible. The only provision for dispatch in this precise as possible. The only provision for dispatch in this
document is a recommendation that the location provider supply document is a recommendation that the location provider supply
endpoints with a URI that can be used by a PSAP or other emergency endpoints with a URI that can be used by a PSAP or other emergency
authority to obtain a different location for use in dispatch, authority to obtain a different location for use in dispatch,
hopefully more precise than the one used for routing. hopefully more precise than the one used for routing.
This document describes the use of imprecise location information in This document describes the use of imprecise location information in
the emergency call routing system. Section 3 describes how location the emergency call routing system. Section 3 describes how location
providers can determine the precision necessary to support emergency providers can determine the precision necessary to support emergency
call routing, and how they can use this information to optimize call routing, and how they can use this information to optimize
location delivery. Section 4 describes how emergency calls are location delivery. Section 5 describes how emergency calls are
placed in such an environment, and how non-emergency services can be placed in such an environment, and how non-emergency services can be
invoked when precise location is not available to the endpoint by invoked when precise location is not available to the endpoint by
value. value.
2. Terminology 2. Terminology
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].
We consider in this document patterns of interaction as described in We consider in this document patterns of interaction as described in
[6]. The two main parties of interest are endpoints and location [6]. The two main parties of interest are endpoints and location
providers. Endpoints are hosts connected to the Internet that providers. Endpoints are hosts connected to the Internet that
originate emergency calls in the emergency calling architecture, originate emergency calls in the emergency calling architecture,
while location providers are entities that supply location while location providers are entities that supply location
information that is used for emergency calling. In addition, we will information that is used for emergency calling. In addition, we will
discuss how these parties interact with the LoST mapping discuss how these parties interact with the LoST mapping
infrastructure [7], and with emergency and non-emergency location- infrastructure [8], and with emergency and non-emergency location-
based service providers. based service providers.
For convenience, we say that location information, either in LoST For convenience, we say that location information, either in LoST
queries or in service boundaries, is provided "in geodetic form" if queries or in service boundaries, is provided "in geodetic form" if
it is provided in the "geodetic-2d" LoST location profile, and "in it is provided in the "geodetic-2d" LoST location profile, and "in
civic form" if it is provided in the "civic" profile. civic form" if it is provided in the "civic" profile.
3. Determining sufficient location precision The term "precision" is not used in a quantitative sense in this
document. In general, the "precision" of a location value is
determined by the size of its uncertainty region. [9] Higher
precision values have small uncertainty regions and lower precision
values have larger uncertainty regions. The notion of "sufficient
precision for emergency services is defined in Section 3
3. Location Precision Requirements
A location provider wishing to provide location information usable A location provider wishing to provide location information usable
for emergency call routing requires a mechanism for determining when for emergency call routing requires a mechanism for determining when
a description of location (e.g., a polygon) is precise enough to be a description of location (e.g., a polygon) is precise enough to be
used for emergency call routing. This mechanism might be used to used for emergency call routing. This mechanism might be used to
decide when to terminate a positioning process that converges over decide when to terminate a positioning process that converges over
time, or to choose a polygon larger than the known location of the time, or to choose a polygon larger than the known location of the
endpoint (in order to obscure the known location of the endpoint), endpoint (in order to obscure the known location of the endpoint),
while preserving the utility of the location for emergency call while preserving the utility of the location for emergency call
routing. routing.
There are three basic requirements for a location to be usable for There are three basic requirements for a location to be usable for
emergency call routing: emergency call routing:
1. The location SHOULD be sufficiently precise that a LoST request 1. The location SHOULD be sufficiently precise that a LoST request
with the location and any service URN will return a unique URI with the location and any emergency service URN will return a
mapping value. This may not be possible in all cases, e.g., unique URI mapping value. This may not be possible in all cases,
because of overlapping service boundaries creating areas with e.g., because of overlapping service boundaries creating areas
non-unique mappings, or because of positioning limitations that with non-unique mappings, or because of positioning limitations
prevent sufficiently precise positioning. that prevent sufficiently precise positioning.
2. When the location of the endpoint is known by the provider to 2. When the location of the endpoint is known by the provider to
greater precision than is being provided, the provided location greater precision than is being provided, the provided location
MUST return the same mappings from LoST, for all service URNs, as MUST return the same mappings from LoST, for all emergency
the known location. service URNs, as the known location.
3. When the location of the endpoint is known by the provider to 3. When the location of the endpoint is known by the provider to
greater precision than is being provided, the provided location greater precision than is being provided, the provided location
MUST contain the precise location (as a geographic subset). MUST contain the precise location (as a geographic subset).
These requirements lead naturally to the idea of a "location filter". 4. Location Filtering
In effect, the first of these rules divide the world into regions
where each point is served by the same set of emergency services
(i.e., the LoST mappings are the same). We call this division of
space a "location filter" and the consituent regions of uniformity
"filter regions". The second rule says that the rough location must
be in the same filter region as the precise location. (The third
rule is unrelated to filtering.)
A location filter is a collection of geographical regions satisfying A location filter is a collection of geographical regions satisfying
the following criteria: the following criteria:
1. For any location value that is a subset of a filter region, a 1. For any location value that is a subset of a filter region, a
LoST request for any service will return a unique mapping result. LoST request for any service will return a unique mapping result.
2. Any two locations within the same filter region receive the same 2. Any two locations within the same filter region receive the same
LoST results for all services LoST results for all services
Given a location filter, it is easy to determine when a given Given a location filter, it is easy to determine when a given
location value is sufficiently precise, or to create a less precise location value is sufficiently precise, or to create a less precise
version of location that is still precise enough. Namely, a location version of location that is still precise enough. Namely, a location
value is precise enough when if fits within a given filter region, value is precise enough when if fits within a given filter region,
and any superset of a location value (e.g., a polygon containing a and any superset of a location value (e.g., a polygon containing a
point) can be used as a less precise version of the location value as point) can be used as a less precise version of the location value,
long as it still fits within the same filter region. as long as it still fits within the same filter region.
For example, a simple fuzzing algorithm that maintains sufficient
precision for emergency services is to replace a given location value
with the filter region that contains it. This way, the server can
compute the filter off-line (as described below), then provision the
location of each possible target by storing a pointer to the filter
region that contains the target's location.
The remainder of this section discusses the concept of location 4.1. Filter Region for a Known Location
filtering in more detail, and describes how a location server can
construct and maintain a location filter based on information from
the LoST mapping infrastructure.
3.1. Location filtering A simple fuzzing algorithm that maintains sufficient precision for
emergency services is to replace a given location value with the
filter region that contains it. Given a known location, a location
server can compute a filter region using a series of LoST queries.
With each service-to-URI mapping, a LoST query provides a service With each service-to-URI mapping, a LoST query provides a service
boundary that represents the set of locations in which that mapping boundary that represents the set of locations in which that mapping
is valid. A consequence of this is that given a set of service is valid. A consequence of this is that given a set of service
boundaries for different services, the intersection of those service boundaries for different services, the intersection of those service
boundaries is the region in which two mappings are valid. If one boundaries is the region in which all of the corresponding mappings
service boundary corresponds to the area where "urn:service:sos.fire" are valid. If one service boundary corresponds to the area where
is served by "sip:fire@example.com" and another maps "urn:service:sos.fire" is served by "sip:fire@example.com" and
"urn:service:sos.police" to "sip:police@example.com", then the another maps "urn:service:sos.police" to "sip:police@example.com",
intersection is the are where both of these mappings are valid then the intersection is the area where both of these mappings are
("urn:service:sos.fire" maps to "sip:fire@example.com" and valid ("urn:service:sos.fire" maps to "sip:fire@example.com" and
"urn:service:sos.police" maps to "sip:police@example.com"). Outside "urn:service:sos.police" maps to "sip:police@example.com"). Outside
that area, one or more of the mappings is invalid. So as was that area, one or more of the mappings is invalid. So as was
suggested above, the intersection of two service boundaries defines a suggested above, the intersection of two service boundaries defines a
set of mappings, and any two locations within that intersection are set of mappings, and any two locations within that intersection are
equivalent for the purpose of LoST mapping (i.e., emergency call equivalent for the purpose of LoST mapping (i.e., emergency call
routing). routing).
Filter regions can be deduced constructed from LoST mappings for a
sample location by intersecting all the service boundaries for
services available at that point. Figure 1 illustrates how the
filter region containing the point X is the intersection of the
service boundaries for police and fire services that serve X.
sos.police sos.fire sos.ambulance
+-------+ +---------------+
| A | | B |
| | | | +-------+
| X | | X | | X |
+-------+ +---------------+ | |
| C |
+-------+
| | |
| | |
+-------------------+-------------------+
|
V
+-------+-------+
| A | B |
| +-------+ |
| | X | | |
+-------+-------+
| C |
+-------+
|
|
V
+---+
| X |
+---+
Resulting filter region
(police=>A, fire=>B, ambulance=>C)
Figure 1: Generating a Filter Region from a Sample Point
In pseudocode form, algorithm for constructing a filter region from a
point is as follows:
function filterRegion(X):
Set REGION = the world
Perform a LoST <listServicesByLocation> query for X
Set SL = <serviceList> from LoST <listServicesByLocationResponse>
If SL == NULL or LoST returned an error
Return the empty set
For each service URN S in SL
Perform a LoST <findService> query for Y and S
If LoST returned an error
Continue
Set SB = <serviceBoundary> from LoST <findServiceResponse>
If SB is not provided, throw an error
Else set REGION = intersection( REGION, SB )
If <listServicesByLocationResponse> has a <serviceListBoundary>
Set SLB = <serviceListBoundary>
from LoST <listServicesByLocationResponse>
Set REGION = intersection( REGION, SLB )
Return REGION
The final intersection with the serviceListBoundary is necessary
because if some parts of the region receive a different set of
services, they have different LoST routing properties, and thus need
to be excluded from the filter region. [4]
It is important that the filter take into account all emergency
services available in over the coverage area of the LIS. (That is,
the services listed in the LoST serviceList elements.) The feature
is necessary in order to ensure that calls to all available emergency
services can be routed correctly using rough location values provided
by the filter.
While in principle, a location server could execute this algorithm to
compute a fresh filter region on each query, it is much more
efficient to use the offline algorithm for computing an entire
location filter, described in the next section.
4.2. Constructing a Location Filter
When a location server knows ahead of time that it will be providing
rough location values, it can pre-compute a location filter that
contains all the filter regions for locations it's concerned with.
Once the filter has been computed (as an off-line computation), the
filter region for a given precise location can be found by searching
for the pre-computed region that contains the precise location. When
precise location is not known, a complete filter can be used to test
evaluate the utility of an imprecise location by determining the
degree to which it overlaps with each filter region.
For example, a simple fuzzing algorithm that maintains sufficient
precision for emergency services is to replace a given location value
with the filter region that contains it. This way, the server can
compute the filter off-line (as described below), then provision the
location of each possible device by storing a pointer to the filter
region that contains the device's location.
Service boundaries for individual services Service boundaries for individual services
urn:service:sos.police urn:service:sos.fire urn:service:sos.police urn:service:sos.fire
+-------+ +-------+ +-------+ +-------+
| A | | C | | A | | C |
| +---+ | +---+---+ | +---+ | +---+---+
| | | | X | | | | | | | |
+---+---+ | +---+ | +---+---+ | +---+ |
| B | | D | | B | | D |
+-------+ +-------+ +-------+ +-------+
| | | |
| | | |
+-----------+------------+ +-----------+------------+
| |
V V
skipping to change at page 7, line 35 skipping to change at page 9, line 42
| +---+ | +---+
| | +---+ | | +---+
+---+ |A,D| +---+ +---+ |A,D| +---+
+---+ | | +---+ | |
+---+ | +---+ |
| B,D | | B,D |
+-------+ +-------+
Resulting Location Filter Regions Resulting Location Filter Regions
Figure 1: Generating a filter from service boundaries Figure 2: Generating a Filter from Service Boundaries
The regions in a location filter can thus be constructed by taking The filter regions in a filter can are constructed by taking
intersections of service boundaries. Figure 1 shows a simple intersections of service boundaries. Figure 2 shows a simple
location filter: Starting with a set of four service boundaries for location filter: Starting with a set of four service boundaries for
two different services. The filter that results from taking two different services. The filter that results from taking
intersections of these boundaries has three regions: intersections of these boundaries has three regions:
1. A region where police calls are directed to A and fire calls are 1. A region where police calls are directed to A and fire calls are
directed to C. directed to C.
2. A region where police calls are directed to A and fire calls are 2. A region where police calls are directed to A and fire calls are
directed to D. directed to D.
skipping to change at page 8, line 11 skipping to change at page 10, line 19
directed to D. directed to D.
These regions satisfy the criteria for a location filter because each These regions satisfy the criteria for a location filter because each
one has a unique set of mappings and those mappings are valid across one has a unique set of mappings and those mappings are valid across
the entire region. The service regions for B and C do not overlap -- the entire region. The service regions for B and C do not overlap --
there is no place where police calls go to B and fire calls to C -- there is no place where police calls go to B and fire calls to C --
so there is no (B,C) region. so there is no (B,C) region.
More generally, a filter region is the intersection of the service More generally, a filter region is the intersection of the service
boundaries for all services available within the region. A filter boundaries for all services available within the region. A filter
can used to determine whether a location is usable for emergency call can be used to determine whether a location is usable for emergency
routing in the following way: call routing in the following way:
1. The location SHOULD be contained in exactly one of the regions in 1. The location SHOULD be contained in exactly one of the regions in
the filter. This guarantees that LoST mappings are unique. the filter. This guarantees that LoST mappings are unique.
2. When the precise location of the endpoint is known, the provided 2. When the precise location of the endpoint is known, the provided
location MUST be contained in the same region(s) of the filter as location MUST be contained in the same region(s) of the filter as
the known location. This guarantees that LoST queries with the the known location. This guarantees that LoST queries with the
provided location return the same results as those done with the provided location return the same results as those done with the
known location. known location.
3. When the precise location of the endpoint is known, the provided 3. When the precise location of the endpoint is known, the provided
location MUST contain the precise location (as a geographic location MUST contain the precise location (as a geographic
subset). subset).
Filter regions can be deduced constructed from LoST mappings for a Practically speaking, a location filter is built up by computing
sample location by intersecting all the service boundaries for filter regions for sample points, using the algorithm described
services available at that point. Figure 2 illustrates how the above. In the example of Figure 2, one would need to sample three
filter region containing the point X is the intersection of the points: One in the (A,C) region, one in the (A,D) region and one in
service boundaries for police and fire services that serve X. the (B,D) region. The overall algorithm thus samples random points
until the computed filter regions cover the desired area. (For
simplicity, we assume that the entity performing filtering will only
be using the filter to test locations contained within a particular
geographic "coverage area". In principle, this coverage area could
be the entire world, but assuming a more limited coverage area allows
for a filter to be built more quickly)
function filter(LS_AREA):
Set FILTER = the empty set
Set COVERAGE = the empty set
Set ERR_COUNT = 0
While COVERAGE < LS_AREA && ERR_COUNT < 100
Choose a random uncovered point X in LS_AREA
Compute R = filterRegion(X)
If R != the empty set
Add R to FILTER
Set COVERAGE = union(COVERAGE, R)
Else
ERR_COUNT += 1
Return FILTER
If the server also stores the lists of URN-URI mappings for each If the server also stores the lists of URN-URI mappings for each
region, x then the filter can also be used as a cache for LoST region, then the filter can also be used as a cache for LoST
mappings; the LoST mappings for a location are the mappings bound to mappings; the LoST mappings for a location are the mappings bound to
the region(s) containing it. the region(s) containing it.
sos.police sos.fire sos.ambulance
+-------+ +---------------+
| A | | B |
| | | | +-------+
| X | | X | | X |
+-------+ +---------------+ | |
| C |
+-------+
| | |
| | |
+-------------------+-------------------+
|
V
+-------+-------+
| A | B |
| +-------+ |
| | X | | |
+-------+-------+
| C |
+-------+
|
|
V
+---+
| X |
+---+
Resulting filter region
(police=>A, fire=>B, ambulance=>C)
Figure 2: Generating a filter region from a sample point
When the location of the endpoint is known to more precision than the
location provided to the endpoint, although any location meeting the
two criteria above is equivalent to the known location for purposes
of LoST, the provided location MUST contain the known location in
order to avoid errors if the location is used for other purposes in
the course of an emergency (e.g., if the location is provided to
first responders for dispatch). This guarantee also allows the
endpoint to do some course verification that the provided location is
correct (in order to prevent very gross errors in routing). Thus,
any location that (1) contains the known location and (2) is
contained in the same filter region as the known location is
allowable. Locations that also are contained in only one filter
region are preferred. Adding randomness to the provided locations
may have privacy benefits in some cases, as discussed in the security
considerations below.
3.2. Constructing location filters
For simplicity, we assume that the entity performing filtering will
only be using the filter to test locations contained within a
particular geographic "coverage area". In principle, this coverage
area could be the entire world, but assuming a more limited coverage
area allows for a filter to be built more quickly.
Given a coverage area and the ability to act as a LoST client, a
location service provider can autonomously compute a location filter
by constructing regions around sample points until it has a
collection of filter regions that collectively cover its service
region. (The process for an individual point is illustrated in
Figure 2.)
In order to ensure that all services boundaries are taken into
account, the server starts by issuing a <listServicesByLocation>
query, and caching the list of services that it returns, along with
the corresponding service list boundary [4]. The server then samples
points within that service list boundary, retrieving mappings with
service boundaries for each service in the service list and
intersecting the service boundaries to obtain a new filter region.
In pseudocode, the algorithm is as follows:
Set FILTER = the empty set
While filter does not cover LS coverage area
Choose a random uncovered point X in the LS coverage area
Perform a LoST <listServicesByLocation> query for X
Set SL = <serviceList> from LoST response
Set SLB = <serviceListBoundary> from LoST response
If SLB is not provided, choose new point X and re-query
If more than 100 points X have been tried
Set R = uncovered area
Add R to FILTER
END
While filter does not cover SLB
Choose a random uncovered point Y in SLB
Set R = SLB
For each service S in SL
Perform a LoST <findService> query for Y and S
Set SB = <serviceBoundary> from LoST response
If SB is not provided, return an error
Else set R = intersection( R, SB(S,Y) )
Add R to FILTER
If the LoST servers have been provisioned properly then this If the LoST servers have been provisioned properly then this
algorithm will terminate successfully. If LoST mapping do not cover algorithm will terminate successfully. If LoST mappings do not cover
part of the service region, then the <serviceListBoundary> will not a point X, then the filterRegion(X) will return the empty set, and
be returned, and the algorithm will give up after 100 queries. This the algorithm will give up after 100 such queries. This limit on
limit on queries introduces some risk that a small covered area will queries introduces some risk that a small covered area will be left
be left out of the filter and marked as uncovered; if this is a out of the filter and marked as uncovered; if this is a concern, then
concern, then the query limit can be increased. the query limit can be increased, or the algorithm can be explicitly
directed to sample certain specific points.
Of course, if the location server operator has information about Of course, if the location server operator has information about
service boundaries through some channel other than LoST, then the service boundaries through some channel other than LoST, then the
LoST queries above can be replaced by queries to a local store of LoST queries above can be replaced by queries to a local store of
mapping information. The choice of random points can also be guided mapping information. The choice of random points can also be guided
to ensure that all mapped areas are covered even if there are some to ensure that all mapped areas are covered even if there are some
uncovered areas. The location server can also cache service uncovered areas. The location server can also cache service
boundaries acquired during the algorithm to avoid unnecessary LoST boundaries acquired during the algorithm to avoid unnecessary LoST
queries. queries.
3.2.1. Civic address considerations 4.3. Civic Address Considerations
This algorithm actually results in two filters -- one for geodetic This algorithm actually results in two filters -- one for geodetic
service boundaries and one for civic service boundaries -- since service boundaries and one for civic service boundaries -- since
civic and geodetic boundaries cannot be directly compared or civic and geodetic boundaries cannot be directly compared or
intersected. It is RECOMMENDED that location servers always compute intersected. It is RECOMMENDED that location servers always compute
a geodetic filter for use with emergency services, since the notion a geodetic filter for use with emergency services, since the notion
of civic service boundaries have some inherent ambiguity. of civic service boundaries have some inherent ambiguity.
Considerations around civic service boundaries are discussed in
detail in [10]
Indeed, the notion of intersection of civic service boundaries has Indeed, the notion of intersection of civic service boundaries has
some dependence on the jurisdiction within which the service some dependence on the jurisdiction within which the service
boundaries are defined. Civic service boundaries are comprised of a boundaries are defined. Civic service boundaries are comprised of a
set of <civicAddress> elements, each defining a set of civic set of <civicAddress> elements, each defining a set of civic
addresses that are within the boundary, namely those that match the addresses that are within the boundary, namely those that match the
civic elements provided. civic elements provided.
When computing the intersection of two civic service boundaries, any When computing the intersection of two civic service boundaries, any
<civicAddress> elements that are shared between the two service <civicAddress> elements that are shared between the two service
boundaries MUST be included in the resulting intersection. When two boundaries MUST be included in the resulting intersection. When two
skipping to change at page 12, line 7 skipping to change at page 12, line 26
according to local addressing standards. according to local addressing standards.
Note that the resulting filter regions SHOULD still cover the Note that the resulting filter regions SHOULD still cover the
location server's coverage area, i.e., there should be a filter location server's coverage area, i.e., there should be a filter
region that contains every civic address within the coverage area. region that contains every civic address within the coverage area.
In particular, the server SHOULD NOT use a specific address to In particular, the server SHOULD NOT use a specific address to
represent a filter region: Such an address would not include many represent a filter region: Such an address would not include many
points in the service region (i.e., it would not meet the third rules points in the service region (i.e., it would not meet the third rules
from the lists of rules above). If the server creates a PIDF-LO from the lists of rules above). If the server creates a PIDF-LO
document describing a civic address that does not contain the precise document describing a civic address that does not contain the precise
location of the target, then it MUST set the 'method' element of the location of the device, then it MUST set the 'method' element of the
PIDF-LO it returns to value 'area-representative' registered in PIDF-LO it returns to value 'area-representative' registered in
Section 7. Section 8.
3.3. Maintaining location filters 4.4. Maintaining Location Filters
As the LoST mappings that underlie the filter change, the filter will As the LoST mappings that underlie the filter change, the filter will
need to be updated. The entity maintaining the filter MUST obtain a need to be updated. The entity maintaining the filter MUST obtain a
new mapping for a region when an existing mapping expires. The new mapping for a region when an existing mapping expires. The
service boundary from the new mapping is compared to the service service boundary from the new mapping is compared to the service
boundary from the old mapping: If they are the same, then the filter boundary from the old mapping: If they are the same, then the filter
need not be updated. If they differ, then regions in the filter that need not be updated. If they differ, then regions in the filter that
intersect either the old service boundary or the new service boundary intersect either the old service boundary or the new service boundary
will need to be recomputed. Note that since this operation only will need to be recomputed. Note that since this operation only
requires the server to determine if two service boundaries are requires the server to determine if two service boundaries are
identical, the server need only store a hash of the old boundary to identical, the server need only store a hash of the old boundary to
which it can compare a hash of the new boundary. which it can compare a hash of the new boundary.
3.4. Applying location filters 4.5. Applying Location Filters
After constructing a location filter, a location server can use it to After constructing a location filter, a location server can use it to
optimize how it delivers location. When the location server is using optimize how it delivers location. How this is done depends on
a positioning algorithm that grows more accurate with time, the whether the location server is trying to reduce the precision of a
filter tells it how long to run the algorithm. Namely, the algorithm known precise location, or trying to determine whether an imprecise
can be terminated when the estimated location (that is, an position is good enough for emergency services.
uncertainty region containing the target's location) is within one of
the regions in the filter.
When the location provider knows the precise location of the caller, When the location provider knows the precise location of the caller,
a location filter can also be used as a "location cache". That is, a location filter can also be used as a "location cache". That is,
the location provider can simply look up which of the filter regions the location provider can simply look up which of the filter regions
contains the caller's precise location and return that region as the contains the caller's precise location and return that region as the
caller's location, or some subset that contains the precise location. caller's location, or some subset that contains the precise location.
This caching strategy allows an additional optimization in some This caching strategy allows an additional optimization in some
cases: If the location server knows that the caller's precise cases: If the location server knows that the caller's precise
location will be within the same region for a period of time, it can location will be within the same region for a period of time, it can
instruct the client not to re-query in that time. For instance, if instruct the client not to re-query in that time. For instance, if
the server is delivering location over HELD, then it can use the HTTP the server is delivering location over HELD, then it can use the HTTP
cache-control headers (e.g., Expires). However, the location server cache-control headers (e.g., Expires). However, the location server
MUST NOT instruct the client to wait for longer than the current MUST NOT instruct the client to wait for longer than the current
filter is valid; the expiry time of the location MUST be before the filter is valid; the expiry time of the location MUST be before the
earliest expiry of a LoST mapping used in the filter. earliest expiry of a LoST mapping used in the filter.
4. Requesting emergency and non-emergency services When the location server starts with imprecise location, there are
different ways to apply the filter, depending on the positioning
technique being used. For example with a positioning algorithm that
grows more accurate with time, the filter can tell the server how
long to run the algorithm -- the algorithm can be terminated when the
estimated location (that is, an uncertainty region containing the
device's location) is within one of the regions in the filter.
A location filter can also be used to test whether a database of
rough locations for IP addresses (as is commonly used for web
localization today) contains precise enough values for use with
emergency services. To make this determination, each value in the
database woud be tested to see if it falls mostly or entirely within
a given filter region. Note, however, that this test does not
address concerns about the accuracy of location information, i.e.,
the probability that the caller is actually contained within the
specified uncertainty region.
Note that the requirements for containment in a filter region differ
between these two use cases. When precise location is known, the
rough location that is returned MUST be contained within a single
filter region; otherwise, there will be an increased risk of mis-
routing. When the location server starts with imprecise location, it
may choose location values that are not entirely within one filter
region. The distribution of the imprecise location value among
filter regions corresponds to the risk that LoST routing will provide
incorrect information, so the choice of location value should balance
the risk of incorrect routing against the additional time needed to
obtain more precise location (which can translate to a delay in call
setup). Actually, in this case, it may not even be possible for a
location server to return a location value that is entirely within a
single filter region.
5. Requesting Emergency and Non-emergency Services
When a location provider wishes to deliver endpoints location When a location provider wishes to deliver endpoints location
information that is below its maximum available precision while still information that is below its maximum available precision while still
supporting emergency calling, it MUST provide to the endpoint both a supporting emergency calling, it MUST provide to the endpoint both a
location (by value) that is sufficient for emergency call routing (as location (by value) that is sufficient for emergency call routing (as
defined above) and a location reference (i.e., a URI) that can defined above) and a location reference (i.e., a URI) that can
subsequently be used by authorized parties to obtain more precise subsequently be used by authorized parties to obtain more precise
information about the location of the endpoint. The endpoint then information about the location of the endpoint. The endpoint then
can then use both the location value and the location reference to can then use both the location value and the location reference to
request emergency services and other location-based services (LBS). request emergency services and other location-based services (LBS).
4.1. Emergency calling This arrangement allows the client to provide rough location (by
value) to any entity, and to provide precise location (by reference)
to authorized parties. An assumption of this model, of course, is
that emergency authorities are authorized by the location provider to
receive precise location. Location providers may also authorize
other entities to receive precise location information (e.g.,
commercial services that have agreed to pay for location).
Authorization policy for location URIs is set by the referenced
location server; a mechanism for clients to request information about
this policy is described in [11].
5.1. Emergency Calling
The overall procedure for placing an emergency call is identical to The overall procedure for placing an emergency call is identical to
that described in [6]. In particular, the endpoint requirements in that described in [6]. In particular, the endpoint requirements in
Sections 8 and 9 of [1] still apply to an endpoint that receives Sections 8 and 9 of [1] still apply to an endpoint that receives
imprecise location. imprecise location.
In addition, an endpoint that receives location both by value and by In addition, an endpoint that receives location both by value and by
reference from its location provider MUST include both the location reference from its location provider MUST include both the location
value and the location reference in the SIP INVITE message that value and the location reference in the SIP INVITE message that
initiates an emergency call, as specified in [8]. When the endpoint initiates an emergency call, as specified in [12]. When the endpoint
supports LoST, it MUST use the location value to obtain a PSAP URI supports LoST, it MUST use the location value to obtain a PSAP URI
for LoST queries before attempting to dereference the location for LoST queries before attempting to dereference the location
reference. Note that the caller would also have to add the "used- reference. Note that the caller would also have to add the "used-
for-routing" parameter to the geolocation header that points to the for-routing" parameter to the geolocation header that points to the
location value as inserted into the INVITE message. Note that this location value as inserted into the INVITE message. Note that this
process crucially relies on the location value having sufficient process crucially relies on the location value having sufficient
precision for routing emergency calls (see Section 3 for techniques precision for routing emergency calls (see Section 3 for techniques
to ensure the location value is suitable for emergency call routing). to ensure the location value is suitable for emergency call routing).
When a PSAP receives a SIP INVITE that contains both a location value When a PSAP receives a SIP INVITE that contains both a location value
skipping to change at page 14, line 5 skipping to change at page 15, line 15
that either the provider must supply a reference that can be that either the provider must supply a reference that can be
dereferenced by any party, or else the provider must establish dereferenced by any party, or else the provider must establish
explicit authentication and authorization relationships with all explicit authentication and authorization relationships with all
PSAPs in its service area. It is RECOMMENDED that location providers PSAPs in its service area. It is RECOMMENDED that location providers
establish similar relationships with other PSAPs in adjoining establish similar relationships with other PSAPs in adjoining
jursidictions -- even if their service regions do not overlap with jursidictions -- even if their service regions do not overlap with
the location provider's -- in case such a PSAP needs access to the location provider's -- in case such a PSAP needs access to
precise location information, for example, if it is acting as a precise location information, for example, if it is acting as a
backup for one of the location provider's normal PSAPs. backup for one of the location provider's normal PSAPs.
4.2. Non-emergency services 5.2. Non-emergency Services
Non-emergency LBSs may require more precise information than is Non-emergency LBSs may require more precise information than is
required for emergency call routing. Therefore, when requesting a required for emergency call routing. Therefore, when requesting a
non-emergency LBS, the endpoint SHOULD include the location reference non-emergency LBS, the endpoint SHOULD include the location reference
provided by its location provider, and MAY additionally provide the provided by its location provider, and MAY additionally provide the
location value. If the provided location value is not sufficiently location value. If the provided location value is not sufficiently
precise to deliver the requested service, then the LBS provider precise to deliver the requested service, then the LBS provider
should then dereference the location value to request location should then dereference the location value to request location
information of sufficient precision from the location provider. If information of sufficient precision from the location provider. If
the dereference fails, then the request for service may fail as well. the dereference fails, then the request for service may fail as well.
skipping to change at page 14, line 30 skipping to change at page 15, line 40
provider and the location provider. In such a case, the endpoint may provider and the location provider. In such a case, the endpoint may
not know whether a given non-emergency service is authorized to not know whether a given non-emergency service is authorized to
obtain the endpoint's precise location using the location reference. obtain the endpoint's precise location using the location reference.
The endpoint is always capable of requesting services without knowing The endpoint is always capable of requesting services without knowing
whether they are authorized; in this way, the endpoint can discover whether they are authorized; in this way, the endpoint can discover
authorized services by trial and error. In order to simplify this authorized services by trial and error. In order to simplify this
process, a location provider may supply the endpoint with references process, a location provider may supply the endpoint with references
to authorized service providers, although there is currently no to authorized service providers, although there is currently no
standard protocol for this transaction. standard protocol for this transaction.
5. Acknowledgements 6. Acknowledgements
This document generalizes the concept of "rough location" that was This document generalizes the concept of "rough location" that was
originally discussed in the context of the location hiding problem. originally discussed in the context of the location hiding problem.
This concept was put forward by Henning Schulzrinne and Andy Newton, This concept was put forward by Henning Schulzrinne and Andy Newton,
among many others, in a long-running ECRIT discussion. among many others, in a long-running ECRIT discussion. Thanks to
Hannes Tschofenig and Martin Thomson for detailed reviews of this
document.
6. Security Considerations 7. Security Considerations
The use of imprecise location provides a security trade-off for The use of imprecise location provides a security trade-off for
location providers. When location providers are required to provide location providers. When location providers are required to provide
location in support of emergency services, they have to balance that location in support of emergency services, they have to balance that
requirement against the risk that location information will be requirement against the risk that location information will be
disclosed to an unauthorized party. The use of location disclosed to an unauthorized party. The use of location
configuration protocols inherently introduces some risk that an configuration protocols inherently introduces some risk that an
entity other than the target will be able to masquerade as the target entity other than the device will be able to masquerade as the device
(e.g., another host behind the same NAT or malicious software on the (e.g., another host behind the same NAT or malicious software on the
host) [9]. In some cases, the location provider may not authorize host) [13]. In some cases, the location provider may not authorize
the target itself to access precise location. At the same time, the device itself to access precise location. At the same time,
because endpoints can roam between networks, it is not generally because endpoints can roam between networks, it is operationally
possible to have strong client authentication for LCPs. difficult to have strong client authentication for LCPs.
Using of rough location to support emergency calling enables a Using of rough location to support emergency calling enables a
location provider to provide low-precision location with low location provider to provide low-precision location with low
assurance (e.g., without client authentication)and high-precision assurance (e.g., without client authentication)and high-precision
location with higher assurance. Because lower-precision location location with higher assurance. Because lower-precision location
generally has lower value -- to location providers and LBS providers generally has lower value -- to location providers and LBS providers
as a commercial asset, and to targets as private information -- this as a commercial asset, and to devices as private information -- this
trade-off allows a location provider to avoid the cost of protecting trade-off allows a location provider to avoid the cost of protecting
location with high-assurance access controls when this location has location with high-assurance access controls when this location has
low value. low value.
However, in order to support emergency services, location providers However, in order to support emergency services, location providers
cannot provide only low-precision location; they also have to provide cannot provide only low-precision location; they also have to provide
PSAPs with access to high-precision location information. Because PSAPs with access to high-precision location information. Because
PSAPs require high-precision location for emergency response, a PSAPs require high-precision location for emergency response, a
location provider that normally provides imprecise location to location provider that normally provides imprecise location to
clients MUST also provide them a location URI that a PSAP can use to clients MUST also provide them a location URI that a PSAP can use to
obtain high-precision location. This constraint means that the obtain high-precision location. This constraint means that the
provided URI MUST have either no access control at all or a policy provided URI MUST have either no access control at all or a policy
that allows access by appropriate PSAPs and other emergency response that allows access by appropriate PSAPs and other emergency response
systems, e.g., ESRPs. That is, if such a location URI is access systems, e.g., ESRPs. That is, if such a location URI is access
controlled, then the location provider MUST be able to authenticate controlled, then the location provider MUST be able to authenticate
requests from PSAPs. requests from PSAPs.
The use of location by reference introduces some risk that the The use of location by reference introduces some risk that the
reference will be used by an attacker to gain unauthorized access to reference will be used by an attacker to gain unauthorized access to
the target's location. These risks are not specific to emergency the device's location. These risks are not specific to emergency
service, however; general risks and mitigations for location by service, however; general risks and mitigations for location by
reference are discussed in [10] reference are discussed in [14]
As described in Section 3.1 above, the location provider choosing to As described in Section 4 above, the location provider choosing to
provide a less precise location than a known location has a provide a less precise location than a known location has a
significant amount of choice in deciding which location to provide: significant amount of choice in deciding which location to provide:
Any location that contains the known location and is in the same Any location that contains the known location and is in the same
filter region will do. When the provider is reducing precision for filter region will do. When the provider is reducing precision for
privacy purposes, there is a some privacy benefit to choosing a privacy purposes, there is a some privacy benefit to choosing a
random location meeting these criteria. If a watcher is interested random location meeting these criteria. If a watcher is interested
in whether or not the endpoint is moving, an imprecise location may in whether or not the endpoint is moving, an imprecise location may
still reveal that fact if it is constant when the endpoint is at still reveal that fact if it is constant when the endpoint is at
rest. If the provided location is randomized each time it is rest. If the provided location is randomized each time it is
provided, then the watcher is unable to obtain even this level of provided, then the watcher is unable to obtain even this level of
information. An algorithm for securely fuzzing a target's location information. An algorithm for securely fuzzing a device's location
can be found in [11]; for emergency services, the additional can be found in [15]; for emergency services, the additional
constraint must be added that the fuzzed location must remain in the constraint must be added that the fuzzed location must remain in the
same filter region as the original. same filter region as the original.
7. IANA Considerations 8. IANA Considerations
This document requests that IANA register a new PIDF-LO 'method' This document requests that IANA register a new PIDF-LO 'method'
token in the registry defined by RFC 4119 [5] token in the registry defined by RFC 4119 [5]
area-representative: Location chosen as a representative of a region area-representative: Location chosen as a representative of a region
in which the target is located; may not be the target's location. in which the device is located; may not be the device's location.
8. References 9. References
8.1. Normative References 9.1. Normative References
[1] Rosen, B. and J. Polk, "Best Current Practice for [1] Rosen, B. and J. Polk, "Best Current Practice for
Communications Services in support of Emergency Calling", Communications Services in support of Emergency Calling",
draft-ietf-ecrit-phonebcp-15 (work in progress), July 2010. draft-ietf-ecrit-phonebcp-15 (work in progress), July 2010.
[2] Hardie, T., Newton, A., Schulzrinne, H., and H. Tschofenig, [2] Hardie, T., Newton, A., Schulzrinne, H., and H. Tschofenig,
"LoST: A Location-to-Service Translation Protocol", RFC 5222, "LoST: A Location-to-Service Translation Protocol", RFC 5222,
August 2008. August 2008.
[3] Bradner, S., "Key words for use in RFCs to Indicate Requirement [3] Bradner, S., "Key words for use in RFCs to Indicate Requirement
Levels", BCP 14, RFC 2119, March 1997. Levels", BCP 14, RFC 2119, March 1997.
[4] Wolf, K., "LoST Service List Boundary Extension", [4] Wolf, K., "LoST Service List Boundary Extension",
draft-ietf-ecrit-lost-servicelistboundary-03 (work in draft-ietf-ecrit-lost-servicelistboundary-04 (work in
progress), February 2010. progress), August 2010.
[5] Peterson, J., "A Presence-based GEOPRIV Location Object [5] Peterson, J., "A Presence-based GEOPRIV Location Object
Format", RFC 4119, December 2005. Format", RFC 4119, December 2005.
8.2. Informative References 9.2. Informative References
[6] Rosen, B., Schulzrinne, H., Polk, J., and A. Newton, "Framework [6] Rosen, B., Schulzrinne, H., Polk, J., and A. Newton, "Framework
for Emergency Calling using Internet Multimedia", for Emergency Calling using Internet Multimedia",
draft-ietf-ecrit-framework-11 (work in progress), July 2010. draft-ietf-ecrit-framework-11 (work in progress), July 2010.
[7] Schulzrinne, H., "Location-to-URL Mapping Architecture and [7] Schulzrinne, H., Liess, L., Tschofenig, H., Stark, B., and A.
Kuett, "Location Hiding: Problem Statement and Requirements",
draft-ietf-ecrit-location-hiding-req-04 (work in progress),
February 2010.
[8] Schulzrinne, H., "Location-to-URL Mapping Architecture and
Framework", RFC 5582, September 2009. Framework", RFC 5582, September 2009.
[8] Polk, J., Rosen, B., and J. Peterson, "Location Conveyance for [9] Thomson, M. and J. Winterbottom, "Representation of Uncertainty
and Confidence in PIDF-LO",
draft-thomson-geopriv-uncertainty-05 (work in progress),
May 2010.
[10] Thomson, M. and K. Wolf, "Describing Boundaries for Civic
Addresses", draft-thomson-ecrit-civic-boundary-01 (work in
progress), July 2010.
[11] Barnes, R., Thomson, M., and J. Winterbottom, "Location
Configuration Extensions for Policy Management",
draft-barnes-geopriv-policy-uri-01 (work in progress),
May 2010.
[12] Polk, J., Rosen, B., and J. Peterson, "Location Conveyance for
the Session Initiation Protocol", the Session Initiation Protocol",
draft-ietf-sipcore-location-conveyance-03 (work in progress), draft-ietf-sipcore-location-conveyance-03 (work in progress),
July 2010. July 2010.
[9] Tschofenig, H. and H. Schulzrinne, "GEOPRIV Layer 7 Location [13] Tschofenig, H. and H. Schulzrinne, "GEOPRIV Layer 7 Location
Configuration Protocol: Problem Statement and Requirements", Configuration Protocol: Problem Statement and Requirements",
RFC 5687, March 2010. RFC 5687, March 2010.
[10] Marshall, R., "Requirements for a Location-by-Reference [14] Marshall, R., "Requirements for a Location-by-Reference
Mechanism", RFC 5808, May 2010. Mechanism", RFC 5808, May 2010.
[11] Schulzrinne, H., Tschofenig, H., Morris, J., Cuellar, J., and [15] Schulzrinne, H., Tschofenig, H., Morris, J., Cuellar, J., and
J. Polk, "Geolocation Policy: A Document Format for Expressing J. Polk, "Geolocation Policy: A Document Format for Expressing
Privacy Preferences for Location Information", Privacy Preferences for Location Information",
draft-ietf-geopriv-policy-21 (work in progress), January 2010. draft-ietf-geopriv-policy-21 (work in progress), January 2010.
Authors' Addresses Authors' Addresses
Richard Barnes Richard Barnes
BBN Technologies BBN Technologies
9861 Broken Land Pkwy, Suite 400 9861 Broken Land Pkwy, Suite 400
Columbia, MD 21046 Columbia, MD 21046
 End of changes. 58 change blocks. 
216 lines changed or deleted 328 lines changed or added

This html diff was produced by rfcdiff 1.38. The latest version is available from http://tools.ietf.org/tools/rfcdiff/