One document matched: draft-polk-geopriv-location-based-error-registry-00.txt



Geopriv Working Group                                        James Polk
Internet-Draft                                            Cisco Systems
Expires: April 16th, 2007                                Oct 16th, 2006



       A Geopriv Registry for Location-based Error Response Codes
           draft-polk-geopriv-location-based-error-registry-00

Status of this Memo

   By submitting this Internet-Draft, each author represents that any
   applicable patent or other IPR claims of which he or she is aware
   have been or will be disclosed, and any of which he or she becomes
   aware will be disclosed, in accordance with Section 6 of BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

   Internet-Drafts are draft documents valid for a maximum of six 
   months and may be updated, replaced, or obsoleted by other documents
   at any time.  It is inappropriate to use Internet-Drafts as 
   reference material or to cite them other than as "work in progress."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on April 8th, 2007.

Copyright Notice

   Copyright (C) The Internet Society (2006).

Abstract

   This document IANA registers a list of GEOPRIV location-specific 
   error response indications, to be used by signaling protocols 
   describing a location-based error experienced by an intermediary or 
   recipient endsystem.  For example, the registered values here can be
   placed in a SIP Reason header contained within a 424 (Bad Location 
   Information) response, or in a Location-to-Service Translation 
   (LoST) query failure, giving specific meaning to the reason for the 
   error.  This additional information is to provide the location 
   transmitter more granular information about what was wrong with the 
   supplied location in the original request message.




Polk                      Expires April, 2006                  [Page 1]
Internet-Draft        Location Error Code Registry             Oct 2006


Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .  2
     1.1   Conventions used in this document . . . . . . . . . . . .  3
   2.  Basic Operation of Location Error Messaging . . . . . . . . .  3
   3.  Failure Reasons to be Registered  . . . . . . . . . . . . . .  5
     3.1  Location Format Not Supported  . . . . . . . . . . . . . .  6
     3.2  Geo-location Format Desired Instead  . . . . . . . . . . .  6
     3.3  Civic-location Format Desired Instead  . . . . . . . . . .  6
     3.4  Unsupported Schema . . . . . . . . . . . . . . . . . . . .  7
     3.5  Cannot Parse Location Supplied . . . . . . . . . . . . . .  7
     3.6  Cannot Find Location . . . . . . . . . . . . . . . . . . .  8
     3.7  Cannot Dereference . . . . . . . . . . . . . . . . . . . .  8
     3.8  Conflicting Locations Supplied . . . . . . . . . . . . . .  8
     3.9  Incomplete Location Supplied . . . . . . . . . . . . . . .  9
     3.10 Dereference Timeout  . . . . . . . . . . . . . . . . . . .  9
     3.11 Cannot Process Dereference . . . . . . . . . . . . . . . .  9
   4.  LoST Error Codes  . . . . . . . . . . . . . . . . . . . . . . 10
     4.1  400 Bad Request  . . . . . . . . . . . . . . . . . . . . . 10
     4.2  403 Forbidden  . . . . . . . . . . . . . . . . . . . . . . 10
     4.3  404 Not Found  . . . . . . . . . . . . . . . . . . . . . . 10
     4.4  414 Location Error . . . . . . . . . . . . . . . . . . . . 10
     4.5  500 Server Internal Error  . . . . . . . . . . . . . . . . 10
     4.6  501 Service Not Implemented  . . . . . . . . . . . . . . . 10
     4.7  504 Server Time-Out  . . . . . . . . . . . . . . . . . . . 11
   5.  IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11
   6.  Security Considerations . . . . . . . . . . . . . . . . . . . 11
   7.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . . 12
   8.  References  . . . . . . . . . . . . . . . . . . . . . . . . . 12
     8.1   Normative References  . . . . . . . . . . . . . . . . . . 12
     8.2   Informative References  . . . . . . . . . . . . . . . . . 12
       Author's Address  . . . . . . . . . . . . . . . . . . . . . . 12
       Intellectual Property and Copyright Statements  . . . . . . . 12


1.  Introduction

   This document creates a registry of specific reasons for 
   location-based errors in certain protocol transactions.  These 
   reasons can be included in other transport protocols to provide the 
   originator additional information that something was wrong with a 
   location related parameter or value during processing.  

   The intention here is to create a common set of location-specific 
   error codes to be used across multiple protocols so that when more 
   than one is used, the information is transferred between them in a 
   common way, should the error require original location sender 
   knowledge.

   For example, SIP defines location conveyance in [ID-SIP-LOC].  
   Within that document a new error response was created, the 424 (Bad 


Polk                      Expires April, 2006                  [Page 2]
Internet-Draft        Location Error Code Registry             Oct 2006

   Location Information).  A SIP user agent (UA) receiving this 424 
   response would not be receiving enough information to know the 
   specifics about what was bad, just that the transaction's error had 
   to do with location supplied in the SIP request.  [ID-SIP-LOC] 
   specifies that a [RFC3326] Reason header can be used in this 424 
   response to provide additional/more granular location-specific 
   information to the originating user agent client (UAC).  [ID-SIP-
   LOC] also created the "Geolocation" Reason protocol, as specified by
   [RFC3326].  Within this Reason protocol, cause values provide 
   additional specific information to a recipient as to the reason for 
   the error message (in this case).  These reason types are defined 
   here.

   This document is not limited to use with a SIP Reason header.  Other 
   text based protocols can use these location error types to provide 
   more granular causes for a message failure.

   [NOTE: need to add what the reaction would be if used by LoST]


1.1  Conventions used in this document

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL 
   NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and 
   "OPTIONAL" in this document are to be interpreted as described 
   in [RFC2119].


2.  Basic Operation of Location Error Messaging

   The following explain the basic operation of location-based errors, 
   requiring transport back to the originator of a request message to 
   have a more detailed reason why a particular request message failed.

   Figure 1. shows a request/response transaction between two 
   endpoints.  Currently, if the reason for Bob's rejection of the 
   request is location related, there is no specified means of 
   indicating this in a response message.  SIP, for example, has a 
   Reason header, but no current "protocol" is IANA registered to 
   indicate what about the location provided in the request caused the 
   error response.  This registry takes advantage of [ID-SIP-LOC], 
   which registered the Geolocation protocol for the Reason header, to 
   give these location specific reasons for the failure.  











Polk                      Expires April, 2006                  [Page 3]
Internet-Draft        Location Error Code Registry             Oct 2006

      Alice                                Bob                      
        |                                  |                        
        |       Request w/ Location        |                        
        |--------------------------------->|                        
        |                                  | ********************** 
        |                                  | * There is something * 
        |                                  | * wrong with the     * 
        |                                  | * supplied Location  * 
        |                                  | ********************** 
        |  424 (Bad Location Information)  |                        
        |  with Location Error indication  |                        
        |<---------------------------------|                        
        |                                  |                        

   Figure 1. User to User Location Error

   The reason(s) for this type of error response currently are listed 
   in Section 3 of this document.

   Figure 2. shows an example of Alice sending a Request message that 
   is processed by message routing server, which routes the message 
   based on the location (supplied in the request) of the requesting 
   user (Alice).

      Alice                             Proxy1
        |                                  |                        
        |       Request w/ Location        |                        
        |--------------------------------->|                        
        |                                  | ********************** 
        |                                  | * There is something * 
        |                                  | * wrong with the     * 
        |                                  | * supplied Location  * 
        |                                  | ********************** 
        |  424 (Bad Location Information)  |                        
        |  with Location Error indication  |                        
        |<---------------------------------|                        
        |                                  |                        

   Figure 2. User to Routing Server Location Error

   The reason(s) for this type of error response can be one or more of 
   many possibilities, including a malformed Location Object which 
   couldn't be parsed by the server to make a routing decision upon, or
   an unknown location format, or an incomplete location object, or 
   conflicting location information within one or more location objects
   in the message.

   Figure 3. shows a more complex scenario involving a Alice's user 
   agent, a routing Proxy which performs a LoST query for the service 
   of the request (for example an emergency service PSAP URI 
   resolution).



Polk                      Expires April, 2006                  [Page 4]
Internet-Draft        Location Error Code Registry             Oct 2006


  Alice                  Proxy1           LoST Server                  
    |                      |                  |                        
    | Request w/           |                  |                        
    | Location             |                  |                        
    |--------------------->|                  |                        
    |                      |    LoST Query    |                        
    |                      |----------------->|                        
    |                      |                  | ********************** 
    |                      |                  | * There is something * 
    |                      |                  | * wrong with the     * 
    |                      |                  | * Location in Query  * 
    |                      |                  | ********************** 
    |                      | LoST Response    |                        
    |                      | w/ Error Indication                       
    |                      |<-----------------|                        
    | 424 (Bad Location)   |                  |                        
    | with Reason Header   |                  |                        
    | Location indication  |                  |                        
    |<---------------------|                  |                        
    |                      |                  |                        
                                                                       
      Figure 3. LoST Query Location Error                              

   In the use-case of Figure 3., the error did not occur between 
   Alice's user agent and Proxy1, which means the error may not be 
   within the same protocol as the one used by Alice's endpoint.  The 
   location based error also did not occur from Proxy1 towards the 
   ultimate destination, but either towards the LoST query or in the 
   LoST server itself.  These LoST error codes are listed in Section 4 
   at this time.

   This registry provides the means of transferring the location 
   specific error reason from the LoST protocol, received by Proxy1 in 
   this case, to the Signaling protocol used by Alice; in this case 
   SIP, but this can be another protocol (such as HTTP perhaps).

   The key functionality here is the ability to take a LoST specific 
   error and convert it to a Reason header for the signaling leg from 
   the SIP server that received it towards Alice's UA.

   IETF discussion should decide if the LoST unique error codes should 
   be returned raw to a UA, or if some of them should be harmonized 
   (i.e. consolidated) with the error codes listed below.  A reason for 
   this is that perhaps not all UAs will understand each LoST error, 
   but make perfect sense within a LoST only transaction, nor may the 
   UA know what to do with certain ones either.


3.  Failure Reasons to be Registered

   Here is the list and description of each IANA registered location 


Polk                      Expires April, 2006                  [Page 5]
Internet-Draft        Location Error Code Registry             Oct 2006

   error reason code.  If the location generator were to receive one of
   these indications in a SIP response, it would be in a Reason header.
   The protocol field of this Reason header would be "geolocation", as 
   defined in [ID-SIP-LOC].  Examples of the Reason header are given 
   for each indication below.


3.1  Location Format Not Supported

   "Location Format not supported" means the location format supplied 
   in the request, by-value or by-reference, was not supported.  This 
   cause means the recipient understood that location was included in 
   the message, but the format is not supported.  If the format is 
   understood, but not desired, a cause=2 or cause=3 response SHOULD be
   returned. 

   Cause value: 1

   Default text string: Location format not supported

   An example usage in a SIP Reason header: 

   Reason: geolocation; cause=1; Location format not supported


3.2  Geo-location Format Desired Instead

   "Geo-location Format Desired" means the location format supplied in 
   the request (here probably civic-location), by-value or 
   by-reference, was understood and supported, but that the recipient, 
   or an application on the recipient prefers a geo-location format be 
   supplied instead.  

   A typical reaction to receiving this cause value is to resend the 
   original message with the geo-location format included.

   Cause value: 2

   Default text string: Geo-location Format Desired

   An example usage in a SIP Reason header: 

   Reason: geolocation; cause=2; Geo-location Format Desired


3.3  Civic-location Format Desired Instead

   "Civic-location Format Desired" means the location format supplied 
   in the request (here probably geo-location), by-value or 
   by-reference, was understood and supported, but that the recipient, 
   or an application on the recipient prefers a civic-location format 
   be supplied instead.  


Polk                      Expires April, 2006                  [Page 6]
Internet-Draft        Location Error Code Registry             Oct 2006


   A typical reaction to receiving this cause value is to resend the 
   original message with the civic-location format included.

   Cause value: 3

   Default text string: Civic-location Format Desired

   An example usage in a SIP Reason header: 

   Reason: geolocation; cause=3; Civic-location Format Desired


3.4  Unsupported Schema 

(NOTE: do we articulate which one is wanted with separate error codes? 
       i.e. one for sip, one for sips, one for http, etc)

   "Unsupported Schema" means the location dereferencer cannot 
   dereference use the location-by-reference URI supplied because it 
   does not support the necessary protocol to do this.  For example, if
   an http-URL is supplied, but the dereferencer does not have http 
   running on that machine, it cannot dereference the location of the 
   sender.  

   A typical reaction to receiving this error would be for the location
   sender to send a URI with a different schema.

   Cause value: 4

   Default text string: unsupported schema

   An example usage in a SIP Reason header: 

   Reason: geolocation; cause=4; unsupported schema


3.5  Cannot Parse Location Supplied

   "Cannot parse location supplied" means the location provided, 
   whether by-value or by-reference in a request is not well formed.

   Cause value: 5

   Default text string: Cannot parse location supplied

   An example usage in a SIP Reason header: 

   Reason: geolocation; cause=5; Cannot parse location supplied





Polk                      Expires April, 2006                  [Page 7]
Internet-Draft        Location Error Code Registry             Oct 2006

3.6  Cannot Find Location

   "Cannot find location" means location should have been in the 
   message received, but the recipient cannot find it, either because 
   it is not in the message, or it is encrypted/opaque.  The location 
   of the sender's location in a SIP message is identified in a 
   Location header.  A cid:URI indicates the location is by-value in a 
   message body.  A schema-URI indicates the location is by-reference 
   on a remote node to be dereferenced.

   A typical reaction to receiving this error would be for the location
   sender to verify it has indeed included location in the new request.
   Another consideration would be for the location sender to not 
   encrypt the location in the request message.

   Cause value: 6

   Default text string: Cannot find location

   An example usage in a SIP Reason header: 

   Reason: geolocation; cause=6; Cannot find location


3.7  Cannot Dereference (Location-URI returns an error)

   "Cannot dereference" means the act of dereferencing failed to return
   the target's location.  This may mean the URI is bad, or the 
   referencable server some other error to the dereference request.

   Cause value: 7

   Default text string: Cannot dereference

   An example usage in a SIP Reason header: 

   Reason: geolocation; cause=7; Cannot dereference


3.8  Conflicting Locations Supplied 

   "Conflicting Locations Supplied" means a location recipient received
   more than one location for the location target, and is unsure what 
   to do because each location is towards a different position. This is
   a case of too much information, and the information is conflicting.

   A typical reaction to receiving this error is to reduce the number 
   of different locations supplied in the request, and send another 
   message to the location recipient.

   Cause value: 8



Polk                      Expires April, 2006                  [Page 8]
Internet-Draft        Location Error Code Registry             Oct 2006

   Default text string: Conflicting Locations Supplied

   An example usage in a SIP Reason header: 

   Reason: geolocation; cause=8; conflicting locations supplied


3.9  Incomplete Location Supplied 

   "Incomplete Location Supplied" means there is not enough location 
   information, by-value or by-reference, to determine where the 
   location target is.

   A typical reaction to receiving this message is of the sender to 
   verify it has a complete position to convey.

   Cause value: 9

   Default text string: Incomplete location supplied

   An example usage in a SIP Reason header: 

   Reason: geolocation; cause=9; Incomplete location supplied


3.10 Dereference Timeout

   "Dereference Timeout" means that the dereferencing node has not 
   received the target's location within a reasonable timeframe.  In 
   such a case, this cause value would be placed in a Reason header of 
   a 424 (Bad Location Information) response to the location sender.

   Cause value: 10

   Default text string: Dereference Timeout

   An example usage in a SIP Reason header: 

   Reason: geolocation; cause=10; Dereference Timeout


3.11 Cannot Process Dereference

   "Cannot process Dereference" means the dereference protocol has 
   received an overload condition error, indicating the location cannot
   be accessed at this time.  If a sip or sips schema were used to 
   dereference the target's location, and a 503 (Service Unavailable) 
   were the response to the dereference query, this cause=11 value 
   would be placed in the Reason header of a 424 (Bad Location 
   Information) response to the location sender.

   Cause value: 11


Polk                      Expires April, 2006                  [Page 9]
Internet-Draft        Location Error Code Registry             Oct 2006


   Default text string: Cannot process Dereference

   An example usage in a Reason header in SIP: 

   Reason: geolocation; cause=11; Cannot process Dereference


4.  LoST Error Codes

   The following is a set of error codes specific to between a 
   application server and a LoST server, in which the request message 
   contained location, and the error with the request is location 
   specific.  

   Currently, the LoST specific errors, currently parallel to the ones 
   in [ID-LOST] are maintaining the 3 digit error code numbers, to 
   remain consistent with what SIP uses.  IETF consensus will sway this
   to remain or change.

   **Some, or all of the error messages below can be sent in whole from
     the application signaling server to the user agent, relaying 
     through the intermediary server (for example, a SIP server).

4.1  400 Bad Request

   The request could not be understood due to malformed syntax.

4.2  403 Forbidden

   The server understood the request, but is refusing to fulfill it.
   Authorization will not help, and the request SHOULD NOT be repeated.

4.3  404 Not Found

   The server has definitive information that there is no service
   mapping for the location specified.

4.4  414 Location Error

   The location provided does not exist or fields within the location
   information are contradictory.

4.5  500 Server Internal Error

   The server encountered an unexpected condition that prevented it from
   fulfilling the request.  The client MAY retry the request after
   several seconds.

4.6  501 Service Not Implemented

   The server does not implement mapping for the service requested and


Polk                      Expires April, 2006                 [Page 10]
Internet-Draft        Location Error Code Registry             Oct 2006

   cannot provide an alternate service.

4.7  504 Server Time-Out

   A server time-out occurs if the server contacted tries to recursively
   resolve the query, but cannot get an answer within the time limit set
   for the query.


5.  IANA Considerations

   This document creates the following IANA registrations defined in 
   Section 3 and 4 of this document, and recommends these registrations
   be in a new table format similar to this:

   Cause-Code    Optional-Default-Text            Reference
   ----------    ---------------------            ---------
   Cause=1       Location Format Not Supported    [This doc]
   Cause=2       Geo-location Format Desired      [This doc]
   Cause=3       Civic-location Format Desired    [This doc]
   Cause=4       Unsupported Schema               [This doc]
   Cause=5       Cannot Parse Location Supplied   [This doc]
   Cause=6       Cannot Find Location             [This doc]
   Cause=7       Cannot Dereference               [This doc]
   Cause=8       Conflicting Locations Supplied   [This doc]
   Cause=9       Incomplete Location Supplied     [This doc]
   Cause=10      Dereference Timeout              [This doc]
   Cause=11      Cannot Process Dereference       [This doc]
   Cause=400     Bad Request                      [This doc]
   Cause=403     Forbidden                        [This doc]
   Cause=404     Not Found                        [This doc]
   Cause=414     Location Error                   [This doc]
   Cause=500     Server Internal Error            [This doc]
   Cause=501     Service Not Implemented          [This doc]
   Cause=504     Server Time-Out                  [This doc]

   Legend:
   ------
   Cause-Code            - Cause value for this indication
   Optional-Default-Text - optional text string of indication
   Reference             - document which is the reference for this 
                           cause value


6.  Security Considerations

   The security considerations of [RFC3261], [ID-SIP-LOC] and [ID-LoST]
   apply to this document.  All the security concerns and measures to 
   ensure a robust delivery of information applied to those 3 documents
   cover any security concerns this document may have created.




Polk                      Expires April, 2006                 [Page 11]
Internet-Draft        Location Error Code Registry             Oct 2006

7.  Acknowledgements

   To Allison Mankin for offering the motivation for this document's 
   idea.  To the authors of [ID-LOST] for their existing error codes, 
   which were borrowed for this document.

8.  References

8.1  Normative References

 [ID-SIP-LOC] J. Polk, B. Rosen, "SIP Location Conveyance", 
           draft-ietf-sip-location-conveyance-04.txt, "work in 
           progress", September 2006

 [RFC3326] H. Schulzrinne, D. Oran, G. Camarillo, "The Reason Header
           Field for the Session Initiation Protocol (SIP)", RFC 3326
           Reason Header, December 2002

 [ID-LoST] T. Hardie, H. Schulzrinne, A. Newton, H. Tschofenig, "LoST: 
           A Location-to-Service Translation Protocol", 
           draft-ietf-ecrit-lost-00.txt, "work in progress", September 
           2006

 [RFC2119] S. Bradner, "Key words for use in RFCs to Indicate
           Requirement Levels", BCP 14, RFC 2119, March 1997.

 [RFC3261] J. Rosenberg, H. Schulzrinne, G. Camarillo, A. Johnston, J.
           Peterson, R. Sparks, M. Handley, and E. Schooler, "SIP:
           Session Initiation Protocol", RFC 3261, May 2002.


8.2  Informative References

   None at this time


Author's Address

   James M. Polk
   Cisco Systems, Inc.
   Colleyville, Texas  76034
   USA

   Phone: +1-817-271-3552
   Email: jmpolk@cisco.com


Intellectual Property Statement

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed 
   to pertain to the implementation or use of the technology described 


Polk                      Expires April, 2006                 [Page 12]
Internet-Draft        Location Error Code Registry             Oct 2006

   in this document or the extent to which any license under such 
   rights might or might not be available; nor does it represent that 
   it has made any independent effort to identify any such rights.   
   Information on the procedures with respect to rights in RFC 
   documents can be found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any 
   assurances of licenses to be made available, or the result of an 
   attempt made to obtain a general license or permission for the use 
   of such proprietary rights by implementers or users of this 
   specification can be obtained from the IETF on-line IPR repository 
   at http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at
   ietf-ipr@ietf.org.


Disclaimer of Validity

   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 Statement

   Copyright (C) The Internet Society (2006).  This document is subject
   to the rights, licenses and restrictions contained in BCP 78, and
   except as set forth therein, the authors retain all their rights.


Acknowledgment

   Funding for the RFC Editor function is provided by the IETF
   Administrative Support Activity (IASA).












Polk                      Expires April, 2006                 [Page 13]

PAFTECH AB 2003-20262026-04-22 08:53:05