One document matched: draft-thomson-geopriv-held-beep-01.txt

Differences from draft-thomson-geopriv-held-beep-00.txt




GEOPRIV                                                       M. Thomson
Internet-Draft                                           J. Winterbottom
Intended status: Standards Track                                  Andrew
Expires: May 22, 2008                                  November 19, 2007


                  A BEEP Binding for the HELD Protocol
                 draft-thomson-geopriv-held-beep-01.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 22, 2008.

Copyright Notice

   Copyright (C) The IETF Trust (2007).














Thomson & Winterbottom    Expires May 22, 2008                  [Page 1]

Internet-Draft               HELD over BEEP                November 2007


Abstract

   A BEEP binding is described for HELD.  This binding is more suitable
   than the basic HTTP binding in scenarios where multiple messages are
   sent between the same two parties.


Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  3
     1.1.  Terminology  . . . . . . . . . . . . . . . . . . . . . . .  3
   2.  The HELD BEEP Profile  . . . . . . . . . . . . . . . . . . . .  4
     2.1.  Channel Initialization . . . . . . . . . . . . . . . . . .  4
     2.2.  Message Exchange Pattern . . . . . . . . . . . . . . . . .  4
     2.3.  Error Handling . . . . . . . . . . . . . . . . . . . . . .  5
   3.  The "held+beep:" URI . . . . . . . . . . . . . . . . . . . . .  6
     3.1.  Location By-Reference and the BEEP Binding . . . . . . . .  6
   4.  LIS Discovery and Authentication for BEEP  . . . . . . . . . .  7
   5.  Security Considerations  . . . . . . . . . . . . . . . . . . .  8
   6.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . .  9
     6.1.  BEEP Profile Registration  . . . . . . . . . . . . . . . .  9
     6.2.  URN sun-namespace registration for
           'urn:ietf:params:xml:ns:geopriv:held:beep' . . . . . . . .  9
     6.3.  Registration of the "held+beep:" URI Scheme  . . . . . . . 10
     6.4.  Registration of a LIS Application Protocol Tag for
           HELD over BEEP . . . . . . . . . . . . . . . . . . . . . . 11
   7.  References . . . . . . . . . . . . . . . . . . . . . . . . . . 12
     7.1.  Normative References . . . . . . . . . . . . . . . . . . . 12
     7.2.  Informative References . . . . . . . . . . . . . . . . . . 12
   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 14
   Intellectual Property and Copyright Statements . . . . . . . . . . 15




















Thomson & Winterbottom    Expires May 22, 2008                  [Page 2]

Internet-Draft               HELD over BEEP                November 2007


1.  Introduction

   The HTTP binding for HELD [I-D.ietf-geopriv-http-location-delivery]
   provides a basis for the protocol, which does not encumber
   implementations with a complex protocol stack.  However, some
   applications require that a requester make multiple requests in
   parallel to a Location Information Server (LIS).
   [I-D.winterbottom-geopriv-lis2lis-req] and
   [I-D.winterbottom-geopriv-held-lis2lis-bcp] describe use cases and an
   application of HELD where HTTP is suboptimal.

   The HTTP binding is not suitable in volume scenarios because HTTP
   suffers from head-of-queue blocking.  This prevents multiple requests
   from being processed in parallel.  In order to achieve higher
   throughput, the requester must establish multiple TCP connections in
   parallel.  This causes HTTP to be unsuitable for applications where
   multiple parallel requests are expected by increasing the overheads.

   BEEP [RFC3080] provides a framing scheme that allows for parallel
   requests.  BEEP uses MIME [RFC2045] for its messages, which means
   that no significant modifications are required to carry HELD
   messages.  This document describes a BEEP profile for HELD.

1.1.  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 [RFC2119].























Thomson & Winterbottom    Expires May 22, 2008                  [Page 3]

Internet-Draft               HELD over BEEP                November 2007


2.  The HELD BEEP Profile

   The BEEP profile for HELD is identified as:

      urn:ietf:params:xml:ns:geopriv:held:beep

   This identifier is used in the BEEP "profile" element during channel
   creation.

   The HELD channel is a simple continuous channel that does not require
   any state information.  Requests and their respective responses are
   always in the request-response form ("MSG"/"RPY").

2.1.  Channel Initialization

   The HELD profile is started with a single "profile" request.  No
   additional parameters are required.  When initiating a channel the
   "profile" element MUST be empty, as shown in the example below.

     <start number="1" serverName="lis.example.com">
       <profile uri="urn:ietf:params:xml:ns:geopriv:held:beep"/>
     </start>

   The "serverName" attribute on the "start" message serves the same
   purpose as the HTTP [RFC2616] "Host" header in informing the server
   of the name it is known by.

   Similarly, the response to channel initialization MUST be empty.

     <profile uri="urn:ietf:params:xml:ns:geopriv:held:beep"/>

2.2.  Message Exchange Pattern

   The BEEP binding for HELD requires only the "MSG"/"RPY" message
   exchange.  Each "MSG" frame contains a request, which may be either a
   "locationRequest", "createContext" or "updateContext".  Each "RPY"
   frame includes a response, either a PIDF-LO (i.e. "presence"), or a
   "contextResponse".













Thomson & Winterbottom    Expires May 22, 2008                  [Page 4]

Internet-Draft               HELD over BEEP                November 2007


   The following exchange demonstrates how a simple HELD location
   request and response are encapsulated.  The "C:" and "S:" prefixes on
   lines are used following the convention in [RFC3080].

   C: MSG 1 7 . 544 125
   C: Content-Type: application/held+xml
   C:
   C: <?xml version="1.0"?>
   C: <locationRequest xmlns="urn:ietf:params:xml:ns:geopriv:held"/>
   C: END
   S: RPY 1 7 . 1902 695
   S: Content-Type: application/held+xml
   S:
   S: <?xml version="1.0"?>
   S: <locationResponse xmlns="urn:ietf:params:xml:ns:geopriv:held">
   S:   <!-- PIDF-LO contents not shown -->
   S: </locationResponse>
   S: END

2.3.  Error Handling

   The HELD BEEP binding does not use the BEEP "ERR" message to indicate
   errors at the HELD protocol level.  Errors in handling HELD Requests
   are indicated to the requester in a "RPY" message.

   Errors in the BEEP message that are unrelated to the HELD protocol,
   such as MIME formatting problems, are indicated using the BEEP "ERR"
   message.























Thomson & Winterbottom    Expires May 22, 2008                  [Page 5]

Internet-Draft               HELD over BEEP                November 2007


3.  The "held+beep:" URI

   A new URI form is defined to describe a BEEP binding instance.  The
   "held+beep:" URI includes server, port and an identifier that can be
   used to construct a location reference.  The "held+beep:" URI is
   constructed as shown in Figure 4 using ABNF [RFC4234] and the
   definitions for URI components from [RFC3986].

   ; all undefined items are specified in RFC 3986
   HB-URI     = "held+beep" ":" hier-part [ "?" query ]
   hier-part  = "//" authority path-abempty / path-absolute
                    / path-rootless / path-empty
   authority  =  host ":" port

                      Figure 4: The "held+beep:" URI

   There is no well-known port for this binding; therefore, the port
   component of the URI MUST be included.

3.1.  Location By-Reference and the BEEP Binding

   The "path" and "query" components of the "held+beep:" URI are used in
   a similar fashion to the analagous components in HTTP/1.1 [RFC2616].
   These components can be conveyed for each request by including them
   in the MIME headers for each request.

   The "Request-URI" header includes an absolute path and optional query
   components.  The header is shown in Figure 5, using ABNF [RFC4234].

   Request-URI-Header = "Request-URI" ":" Request-URI
                        ; Request-URI from RFC 2616

                     Figure 5: The Request-URI Header

   This header is modelled on the "Request-URI" field in HTTP/1.1
   [RFC2616] and it follows the same rules.  See Section 5.1.2 of
   [RFC2616] for details on how to use this header.  A value of "*"
   implies that no location URI is being used, this value should be
   assumed when the header is omitted.  A value of "*" is assumed if a
   "held+beep:" URI does not contain path or query elements.











Thomson & Winterbottom    Expires May 22, 2008                  [Page 6]

Internet-Draft               HELD over BEEP                November 2007


4.  LIS Discovery and Authentication for BEEP

   This profile is most suited to situations where a client and LIS
   exchange a large number of requests over a prolonged period.  It is
   anticipated that the client and LIS are known to each other.

   Based on this assumption, it is reasonable for the LIS and its
   clients to have pre-existing configuration that makes discovery
   unnecessary.  In addition, authentication details and methods can be
   pre-configured on both nodes.  This section outlines how discovery
   can be performed for a LIS that supports the BEEP binding.

   Regardless of the method used to determine the address of the LIS, a
   client MUST authenticate the LIS.  This prevents any LIS spoofing
   attacks that could be used to acquire information about the client
   (and in turn, their clients).

   For persistent connections, it is RECOMMENDED that the LIS also
   authenticate clients.  Some authorization decision is likely to be
   necessary in order for a client to initiate a large volume of
   requests, which could represent significant load on a LIS.

   This document does not mandate any specific authentication method;
   however, since TLS MUST be implemented, the mandatory methods in
   [RFC4346] are assumed to be present.  Alternative authentication
   methods can be negotiated between the LIS and its clients.

























Thomson & Winterbottom    Expires May 22, 2008                  [Page 7]

Internet-Draft               HELD over BEEP                November 2007


5.  Security Considerations

   TLS [RFC4346] SHOULD be used for HELD over BEEP unless
   confidentiality, message integrity and authentication are assured
   through other means (e.g. dedicated media).  It is RECOMMENDED that
   BEEP peers establish a TLS connection immediately, rather than
   relying on the TLS tuning profile in BEEP.












































Thomson & Winterbottom    Expires May 22, 2008                  [Page 8]

Internet-Draft               HELD over BEEP                November 2007


6.  IANA Considerations

6.1.  BEEP Profile Registration

   This section outlines the HELD BEEP binding in the form described in
   [RFC3080].

   Profile Identification:  urn:ietf:params:xml:ns:geopriv:held:beep

   Messages exchanged during Channel Creation:  none

   Messages starting one-to-one exchanges:  HELD request messages from
      [I-D.ietf-geopriv-http-location-delivery] and extension documents.

   Messages in positive replies:  HELD request messages from
      [I-D.ietf-geopriv-http-location-delivery] and extension documents.

   Messages in negative replies:  The HELD "error" message

   Messages in one-to-many exchanges:  none

   Message Syntax:  c.f., HELD [I-D.ietf-geopriv-http-location-delivery]

   Message Semantics:  c.f., HELD
      [I-D.ietf-geopriv-http-location-delivery]

   Contact Information:  c.f., the "Author's Address" section of this
      document

6.2.  URN sun-namespace registration for
      'urn:ietf:params:xml:ns:geopriv:held:beep'

   This section registers a new XML namespace,
   "urn:ietf:params:xml:ns:geopriv:held:beep", as per the guidelines in
   [RFC3688].

      URI: urn:ietf:params:xml:ns:geopriv:held:beep

      Registrant Contact: IETF, GEOPRIV working group,
      (geopriv@ietf.org), Martin Thomson (martin.thomson@andrew.com).

      XML:









Thomson & Winterbottom    Expires May 22, 2008                  [Page 9]

Internet-Draft               HELD over BEEP                November 2007


           BEGIN
             <?xml version="1.0"?>
             <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
               "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
             <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
               <head>
                 <title>HELD BEEP Binding</title>
               </head>
               <body>
                 <h1>Namespace for HELD BEEP Binding Profile</h1>
                 <h2>urn:ietf:params:xml:ns:geopriv:held:beep</h2>
   [[NOTE TO IANA/RFC-EDITOR: Please update RFC URL and replace XXXX
       with the RFC number for this specification.]]
                 <p>See <a href="[[RFC URL]]">RFCXXXX</a>.</p>
               </body>
             </html>
           END

6.3.  Registration of the "held+beep:" URI Scheme

   This section registers the "held+beep:" URI scheme with the IANA,
   following the guidelines in [RFC4395].

   URI scheme name:  held+beep

   Status:  permanent

   URI scheme syntax:  See Figure 4 in Section 3.

   URI scheme semantics:  A held+beep URI defines a means of accessing a
      LIS, or it can be used to convey a location URI, see Section 3.

   Encoding considerations:  A held+beep URI is not designed to include
      internationalized text, it is created and consumed by automated
      processes only.  Internationalized domain names [RFC3490] can be
      included in the authority part of the URI, but path components are
      not intended for user entry.

   Applications/protocols that use this URI scheme name:  The held+beep
      URI is used by Location Information Servers (LIS) as a means of
      describing a service, or as a location reference.

   Interoperability considerations:  No specific considerations.

   Security considerations:  No specific considerations.






Thomson & Winterbottom    Expires May 22, 2008                 [Page 10]

Internet-Draft               HELD over BEEP                November 2007


   Contact:  IETF, GEOPRIV working group, (geopriv@ietf.org), Martin
      Thomson (martin.thomson@andrew.com).

   References:  RFCXXXX (this document), RFCXXXX (HELD)

6.4.  Registration of a LIS Application Protocol Tag for HELD over BEEP

   This section registers a new S-NAPTR Application Protocol tag for the
   BEEP binding of the HELD [I-D.ietf-geopriv-http-location-delivery]
   protocol, as mandated by [RFC3958].

   Application Service Tag:  HELD+BEEP

   Intended Usage:  Identifies the HELD protocol over BEEP

   Applicable Service Tag(s):  LIS

   Terminal NAPTR Record Type(s):  S

   Defining Publication:  RFCXXXX

   Related Publications:  HELD [I-D.ietf-geopriv-http-location-delivery]

   Contact Information:  The authors of this document

   Author/Change Controller:  The IESG

























Thomson & Winterbottom    Expires May 22, 2008                 [Page 11]

Internet-Draft               HELD over BEEP                November 2007


7.  References

7.1.  Normative References

   [RFC2045]  Freed, N. and N. Borenstein, "Multipurpose Internet Mail
              Extensions (MIME) Part One: Format of Internet Message
              Bodies", RFC 2045, November 1996.

   [RFC3080]  Rose, M., "The Blocks Extensible Exchange Protocol Core",
              RFC 3080, March 2001.

   [RFC3958]  Daigle, L. and A. Newton, "Domain-Based Application
              Service Location Using SRV RRs and the Dynamic Delegation
              Discovery Service (DDDS)", RFC 3958, January 2005.

   [RFC4346]  Dierks, T. and E. Rescorla, "The Transport Layer Security
              (TLS) Protocol Version 1.1", RFC 4346, April 2006.

   [I-D.ietf-geopriv-http-location-delivery]
              Barnes, M., Winterbottom, J., Thomson, M., and B. Stark,
              "HTTP Enabled Location Delivery (HELD)",
              draft-ietf-geopriv-http-location-delivery-03 (work in
              progress), November 2007.

   [RFC4234]  Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax
              Specifications: ABNF", RFC 4234, October 2005.

   [RFC3986]  Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform
              Resource Identifier (URI): Generic Syntax", STD 66,
              RFC 3986, January 2005.

   [RFC2616]  Fielding, R., Gettys, J., Mogul, J., Frystyk, H.,
              Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext
              Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999.

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

7.2.  Informative References

   [RFC3490]  Faltstrom, P., Hoffman, P., and A. Costello,
              "Internationalizing Domain Names in Applications (IDNA)",
              RFC 3490, March 2003.

   [RFC3688]  Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688,
              January 2004.

   [RFC4395]  Hansen, T., Hardie, T., and L. Masinter, "Guidelines and



Thomson & Winterbottom    Expires May 22, 2008                 [Page 12]

Internet-Draft               HELD over BEEP                November 2007


              Registration Procedures for New URI Schemes", BCP 115,
              RFC 4395, February 2006.

   [I-D.winterbottom-geopriv-lis2lis-req]
              Winterbottom, J. and S. Norreys, "LIS to LIS Protocol
              Requirements", draft-winterbottom-geopriv-lis2lis-req-00
              (work in progress), June 2007.

   [I-D.winterbottom-geopriv-held-lis2lis-bcp]
              Winterbottom, J. and M. Thomson, "Using HELD for Inter-LIS
              Communication",
              draft-winterbottom-geopriv-held-lis2lis-bcp-00 (work in
              progress), November 2007.






































Thomson & Winterbottom    Expires May 22, 2008                 [Page 13]

Internet-Draft               HELD over BEEP                November 2007


Authors' Addresses

   Martin Thomson
   Andrew
   PO Box U40
   Wollongong University Campus, NSW  2500
   AU

   Phone: +61 2 4221 2915
   Email: martin.thomson@andrew.com
   URI:   http://www.andrew.com/


   James Winterbottom
   Andrew
   PO Box U40
   Wollongong University Campus, NSW  2500
   AU

   Phone: +61 2 4221 2938
   Email: james.winterbottom@andrew.com
   URI:   http://www.andrew.com/





























Thomson & Winterbottom    Expires May 22, 2008                 [Page 14]

Internet-Draft               HELD over BEEP                November 2007


Full Copyright Statement

   Copyright (C) The IETF Trust (2007).

   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, THE IETF TRUST 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).





Thomson & Winterbottom    Expires May 22, 2008                 [Page 15]


PAFTECH AB 2003-20262026-04-24 03:03:36