ECRIT H. Schulzrinne Internet-Draft Columbia U. Intended status: Standards Track November 26, 2006 Expires: May 30, 2007 Synchronizing Location-to-Service Translation (LoST) Servers draft-schulzrinne-ecrit-lost-sync-00.txt 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 May 30, 2007. Copyright Notice Copyright (C) The Internet Society (2006). Abstract The LoST (Location-to-Service Translation) protocol is used to map locations to service URLs. This document defines a set of LoST extensions that allow LoST servers to synchronize their lists of mappings. Schulzrinne Expires May 30, 2007 [Page 1] Internet-Draft LoST Sync November 2006 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 3. Distributing Mappings via . . . . . . . 3 4. Synchronizing Mapping Stores via and . . . . . . . . . . . . . . . . . . . . 6 5. Security Considerations . . . . . . . . . . . . . . . . . . . 7 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 6.1. LoST Synchronization Namespace Registration . . . . . . . 8 7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 8 8. RelaxNG . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 9 9.1. Normative References . . . . . . . . . . . . . . . . . . . 9 9.2. Informative References . . . . . . . . . . . . . . . . . . 9 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 9 Intellectual Property and Copyright Statements . . . . . . . . . . 10 Schulzrinne Expires May 30, 2007 [Page 2] Internet-Draft LoST Sync November 2006 1. Introduction The LoST (Location-to-Service Translation) protocol [2] maps geographic locations to service URLs. As specified in the LoST architecture description [3], there are a variety of LoST servers that cooperate to provide a global, scalable and resilient mapping service. The LoST protocol specification only describes the protocol used for individual seeker-originated queries. This document adds LoST operations that allow forest guides, resolver clusters and authoritative servers to synchronize their database of mappings. In the LoST architecture, servers can peer, i.e., have an on-going data exchange relationship. Peering relationships are set up manually, based on local policies. A server can peer with any number of other servers. Forest guides peer with other forest guides; resolvers peer with forest guides and other resolvers (in the same cluster); authoritative mapping servers peer with forest guides and other authoritative servers, either in the same cluster or above or below them in the tree. If the type of LoST role does not matter, we refer to LoST protocol participants as LoST nodes. Authoritative mapping servers push coverage regions "up" the tree, i.e., from child nodes to parent nodes. The child informs the parent of the geospatial or civic region that it covers. The service URL contains the LoST URL of the child node. This extension defines two new requests, and , that allow peering servers to exchange mappings. These requests are used for all peering relationships and always contain mapping entries, but naturally the content of the data exchanged differs. 2. Terminology 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 RFC 2119 [1]. This document reuses terminology introduced by the mapping architecture document [3]. 3. Distributing Mappings via When a LoST node obtains new information that is of interest to its peers, it pushes the new mappings to its peers. This information might arrive through non-LoST means, such as a manual addition to the Schulzrinne Expires May 30, 2007 [Page 3] Internet-Draft LoST Sync November 2006 local mappings database, or through another LoST node, via a request or a described later. Mappings in that request replace existing mappings with the same 'id' parameter and a more recent 'created' parameter. (Enforcing the latter avoids that a node that wakes up injects outdated information into the system.) Each peer keeps track of which peer it has exchanged which mapping elements with. Mapping elements are identified by the 'id' and 'tag' parameters. A mapping is considered the same if these two attributes match. Nodes never push the same information to the same peer twice. To delete a mapping, the content of the mapping is left empty. The node can delete the mapping from its internal mapping database, but has to remember which peers it has distributed this update to. The mapping is identified only by the 'sourceId' and 'source' parameters; the other parameters are ignored if present. In other words, the delete operation affects all versions of a mapping. The response to is . It only contains elements if there is an error condition. Only the .... errors are defined (TBD). If the set of nodes that are synchronizing their data does not form a tree, it is possible that the same information arrives through several other nodes. This is unavoidable, but generally only imposes a modest overhead. (It would be possible to create a spanning tree in the same fashion as IP multicast, but the complexity does not seem warranted, giving the relatively low volume of data.) An example is shown in Figure 1. In the example, the last mapping, with source lost:nj.us.example and mapping ID 'englewood', is being removed. Leonia Police Department urn:service:sos.police US NJ Leonia 07605 sip:police@leonianj.example.org 911 New York City Police Department urn:service:sos.police 37.775 -122.4194 37.555 -122.4194 37.555 -122.4264 37.775 -122.4264 37.775 -122.4194 sip:nypd@example.com xmpp:nypd@example.com 911 Schulzrinne Expires May 30, 2007 [Page 5] Internet-Draft LoST Sync November 2006 Figure 1: Example pushMappingsRequest and pushMappingsResponse 4. Synchronizing Mapping Stores via and While the request allows new mappings to propagate, it does not allow a newly-arriving node to acquire all mappings maintained by another node. Thus, and are used to synchronize two mapping stores. A LoST node wanting to synchronize its mapping store with another node issues a , containing an enumeration of the current mapping source identifiers, tags and versions. The recipient of the request compares that list to its own list of mappings. It then returns an unordered set of mappings that are more recent than the ones identified in the . It also returns any mappings that it knows about that are not contained in the list at all. Thus, a querier can get the complete listing of mappings by omitting 'm' elements altogether. An example request and response is shown in Figure 2 Schulzrinne Expires May 30, 2007 [Page 6] Internet-Draft LoST Sync November 2006 New York City Police Department urn:service:sos.police 37.775 -122.4194 37.555 -122.4194 37.555 -122.4264 37.775 -122.4264 37.775 -122.4194 sip:nypd@ny.example.com xmpp:nypd@example.com 911 Figure 2: Example getMappingsRequest and getMappingsResponse 5. Security Considerations The LoST security considerations are discussed in [2]. The operations described in this document involve mutually-trusting LoST nodes. These nodes need to authenticate each other, using mechanisms such as HTTP Digest, HTTP Basic over TLS or TLS client and server Schulzrinne Expires May 30, 2007 [Page 7] Internet-Draft LoST Sync November 2006 certificates. Nodes implementing LoST MUST implement HTTP Basic authentication over TLS and MAY implement other authentication mechanisms. 6. IANA Considerations 6.1. LoST Synchronization Namespace Registration URI: urn:ietf:params:xml:ns:lost1:sync Registrant Contact: IETF ECRIT Working Group, Henning Schulzrinne (hgs@cs.columbia.edu). XML: BEGIN LoST Synchronization Namespace

Namespace for LoST server synchronization

urn:ietf:params:xml:ns:lost1:sync

See RFCXXXX [NOTE TO IANA/RFC-EDITOR: Please replace XXXX with the RFC number of this specification.].

END 7. Acknowledgments Your name here. 8. RelaxNG TBD 9. References Schulzrinne Expires May 30, 2007 [Page 8] Internet-Draft LoST Sync November 2006 9.1. Normative References [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [2] Hardie, T., "LoST: A Location-to-Service Translation Protocol", draft-ietf-ecrit-lost-02 (work in progress), October 2006. 9.2. Informative References [3] Schulzrinne, H., "Location-to-URL Mapping Architecture and Framework", draft-ietf-ecrit-mapping-arch-00 (work in progress), August 2006. Author's Address Henning Schulzrinne Columbia University Department of Computer Science 450 Computer Science Building New York, NY 10027 US Phone: +1 212 939 7004 Email: hgs+ecrit@cs.columbia.edu URI: http://www.cs.columbia.edu Schulzrinne Expires May 30, 2007 [Page 9] Internet-Draft LoST Sync November 2006 Full 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. 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. Intellectual Property 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 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. Acknowledgment Funding for the RFC Editor function is provided by the IETF Administrative Support Activity (IASA). Schulzrinne Expires May 30, 2007 [Page 10]