Internet DRAFT - draft-irtf-dtnrg-bpq

draft-irtf-dtnrg-bpq






Internet Research Task Force                                  S. Farrell
Internet-Draft                                                  A. Lynch
Intended status: Experimental                     Trinity College Dublin
Expires: November 15, 2012                                   D. Kutscher
                                                                     NEC
                                                             A. Lindgren
                                           Swedish Institute of Computer
                                                                 Science
                                                            May 14, 2012


                 Bundle Protocol Query Extension Block
                        draft-irtf-dtnrg-bpq-00

Abstract

   The Bundle Protocol (BP) provides store-and-forward networking for
   Delay- and Disruption-Tolerant Networks.  This document defines the
   BP query extension block (BPQ) which allows applications to query the
   stores of nodes on the path along which a bundle containing a bundle
   query extension block is routed.

Status of this Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

   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."

   This Internet-Draft will expire on November 15, 2012.

Copyright Notice

   Copyright (c) 2012 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents



Farrell, et al.         Expires November 15, 2012               [Page 1]

Internet-Draft                  DTNRG BPQ                       May 2012


   carefully, as they describe your rights and restrictions with respect
   to this document.


Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  3
   2.  Protocol Overview  . . . . . . . . . . . . . . . . . . . . . .  4
   3.  BPQ Block Format . . . . . . . . . . . . . . . . . . . . . . .  7
   4.  BPQ Processing . . . . . . . . . . . . . . . . . . . . . . . .  8
   5.  Application Considerations . . . . . . . . . . . . . . . . . .  9
     5.1.  Usage of Endpoint Identifiers in Bundles . . . . . . . . .  9
     5.2.  Advanced Processing of Query and Copy-Response Bundles . . 11
   6.  Related Work . . . . . . . . . . . . . . . . . . . . . . . . . 11
   7.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 12
   8.  Security Considerations  . . . . . . . . . . . . . . . . . . . 12
   9.  References . . . . . . . . . . . . . . . . . . . . . . . . . . 13
     9.1.  Normative References . . . . . . . . . . . . . . . . . . . 13
     9.2.  Informative References . . . . . . . . . . . . . . . . . . 13
   Appendix A.  ChangeLog . . . . . . . . . . . . . . . . . . . . . . 14
   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 14






























Farrell, et al.         Expires November 15, 2012               [Page 2]

Internet-Draft                  DTNRG BPQ                       May 2012


1.  Introduction

   The Bundle Protocol (BP) specified in RFC 5050 [RFC5050] provides
   store-and-forward networking for Delay- and Disruption-Tolerant
   Networks (DTNs).  RFC 4838 [RFC4838] This document defines the BP
   query extension block (BPQ) which allows applications to query the
   stores of nodes on the path along which a bundle containing a bundle
   query extension block is routed.

   The DTN architecture and the Bundle Protocol can be used for
   different applications and provide a certain degree of flexibility
   for naming sources and destinations, as well for deciding how to
   process and forward bundles at nodes in a DTN network.

   In some applications contexts, the Bundle Protocol is used for
   literally transmitting some payload data from one endpoint to another
   -- potentially leveraging store-and-forward capabilities of
   intermediate nodes to overcome disruptions.  How intermediate nodes
   perform their forwarding decisions is not specified by either the DTN
   architecture nor the Bundle Protocol specification, but often the
   destination endpoint identifier (EID) would be considered.

   But EIDs in a DTN network do not necessarily have to represent single
   nodes -- they can be used for representing receiver groups or for
   specifying some requested service in the network.  This flexibility,
   together with the option of using different approaches for
   disseminating data to nodes in a network, has made DTN an attractive
   candidate technology in a range of content distribution scenarios,
   for instance for publish-subscribe-based content distribution
   [ref.dpsp] and for time-aware content dissemination through info
   stations [ref.taco-dtn].

   In some scenarios, DTN bundles can have query semantics, i.e., a
   bundle is sent in order to query for some information object -- or a
   copy of it that can be available on some DTN node as the result of a
   specific dissemination/routing strategy.  Thus, sometimes when you
   send a query in a DTN, an intermediate BP node already has the data
   you want, and there should be a way to get that data, without having
   to go all the way to the "source" of the data which is, of course,
   the destination for a query bundle.

   The BPQ that is specified in this memo is intended to allow such
   queries that can be answered by intermediate BP nodes, where those
   nodes do not necessarily have to be addressed by the destination EID
   of a corresponding request message.

   A use case: Alice and Bob both want to get a video.  Alice first asks
   for this using the BP.  Now Bob, who's nearby Alice also wants to see



Farrell, et al.         Expires November 15, 2012               [Page 3]

Internet-Draft                  DTNRG BPQ                       May 2012


   the same video, and as it happens, due to the routing scheme in
   force, the video is still stored at Bob's "next hop" DTN router.
   Wouldn't it be nice if Bob could just query the DTN as a whole and in
   this case, get the response he wants from a nearby node via probably
   far less delayed or disrupted links.  The BPQ extension block defined
   here provides a way to enable this kind of re-use of DTN router
   storage.

   The BPQ extension block is intended as an enabling mechanism for such
   applications without anticipating a specific behaviour with respect
   to EID semantics and routing strategies.  Also, it is intended as an
   optional enhancement to DTN node implementations and does not require
   all nodes in a network to actually support the extension to be
   useful.  In Section 2 we provide an overview of the general protocol
   operation, Section 3 specifies the actual BPQ block format, and
   Section 4 provides the processing requirements for DTN nodes.
   Section 5 describes a few non-normative application considerations
   for BPQ, and Section 6 refers to related work.

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


2.  Protocol Overview

   The basic idea of the query extension block is that a "query" bundle
   can contain whatever information is required for the query to succeed
   when that bundle reaches its destination.  This information is
   typically contained within the BPQ extension block but may also be
   sent in the application layer payload.

   One, though not the only, possibility is that the query-response
   payload has a name (e.g. a file name or a name derived from the query
   or response payload via hash functions).  In such cases, the BPQ
   extension block can simply contain the data required (plus ancillary
   data as described below).

   BP nodes that do not support BPQ simply (store, and) forward query
   bundles and response bundles as normal and are unaffected.

   BP nodes supporting BPQ compare the value of the BPQ in an inbound
   bundle against their bundle cache (details below) and when a matching
   bundle is found they then respond to the source of the query bundle
   with a bundle containing the payload of the matching bundle, together
   with BPQ data that allows other DTN nodes to also successfully match
   the query and response.




Farrell, et al.         Expires November 15, 2012               [Page 4]

Internet-Draft                  DTNRG BPQ                       May 2012


   When a match is found in the cache, the response bundle that is sent
   SHOULD be a copy of the bundle in the cache.  If the original bundle
   is sent more than once, subsequent BP nodes may discard the bundles
   as a duplicates.  As the BP uniquely identifies bundles from their
   creation time-stamp (seconds and sequence number) and their source
   EID, only changing the destination is not sufficient to avoid
   duplicate detection.

   When a response is copied the source EID of the response bundle MUST
   be set to the local EID and the creation time-stamp MUST be updated
   to the current time.  This changes the bundle ID and prevents it from
   being discarded as a duplicate.  To retain the original ID, an
   immutable copy of the original creation time-stamp and source EID is
   stored in the BPQ.

   When a bundle is copied and its time-stamp is updated, the bundle's
   lifetime MUST also be adjusted.  The lifetime value is relative to
   the creation time-stamp.  If left unchanged, copying a bundle would
   inadvertently extend the bundles lifetime.

   Various schemes could be used in order to allow matching the query
   bundle with a bundle stored on a node, but the simplest way to handle
   this is simply for there to be an identical unique BPQ value in the
   response bundle.  (The response bundle must also be marked as a
   response in order not to confuse Alice and Bob's separate queries for
   the same video.)

   If a node supporting BPQ finds a complete (i.e. not fragmentary)
   matching response bundle, then it can produce a copy-response bundle
   for the requester with the same payload and send that back to the
   source of the query bundle.  In this case, the query bundle need not
   be forwarded further and can be deleted.  For this reason payloads
   contained in query bundles are not guaranteed to be delivered to
   their destination.

   [question: what to do with status reports in this case if the query
   bundle asked for them? they're not a good idea in any case but I
   suppose we should say]

   BPQ aware nodes can store and match against response fragments as
   well as complete responses.  Depending on the content, it does not
   always make sense for fragments to be cached.  For example, the use
   of intentional names can result in more than one response sharing the
   same name while having different payloads.  In this case nodes SHOULD
   NOT try to cache fragments or partially answer queries, since
   fragments from different payloads SHOULD NOT be recombined.  For this
   reason there are two kinds response, normal responses for which
   fragments may be cached and reassembled, and responses where this is



Farrell, et al.         Expires November 15, 2012               [Page 5]

Internet-Draft                  DTNRG BPQ                       May 2012


   restricted.  This in no way influences caching of complete bundles.

   In the event that the matching response bundle is only a fragment,
   then the node discovering that match responds with a copy-response
   bundle containing the fragment.  The node SHOULD forward a modified
   query bundle which reflects the matched fragment, so that other
   fragments may be retrieved from elsewhere on the query bundle's path.

   Fragments already marked in the query as matched SHOULD NOT be re-
   sent.  A matched fragment that is a super-set of a previously matched
   fragment (including a complete match) MAY be returned.  If the node
   finds a set of matching fragments that fully cover the payload, then
   the node SHOULD NOT forward the query bundle.

   [question: should a single copy-response be sent, thus re-assembling
   fragments, or should the just send each fragment as a bundle as it
   itself received? think about PIB in that case. - ans below.]

   Fragments MAY be re-assembled by a cache before being returned.  This
   is NOT required as fragments originating from different bundles may
   contain additional (different) extension blocks.  Intermediate nodes
   MAY respond with multiple fragments for the destination to recombine.

   In order to allow matching, response bundles (and all fragments
   thereof) sent out by the "source" of the response, also include a
   BPQ.  In this way, nodes that support BPQ can easily match queries
   and responses.

   In principle, there could be many ways to match a query bundle with a
   response bundle.  For example, the query bundle could contain a SQL-
   like query and the response bundle BPQ extension could contain a
   database that returns a non-Null response when the query is
   "executed" by a node.  This document however, only specifies an
   "exact match" matching rule, where the query and response bundles
   only match if both contain the same set of bits.  Other matching
   rules may be defined in future.

   Since response bundles containing the BPQ are intended to be re-used,
   it would appear to be sensible to store such bundles for as long as
   possible, regardless of routing decisions.  (Routing schemes may also
   call for bundles to be stored, even after having been forwarded one
   or more times.)

   [question: the bundles currently live in the cache until they expire
   or are evicted due to size restrictions.  Popular content could have
   its lifetime extended but this prevents the bundle expiry being used
   for cache coherency.]




Farrell, et al.         Expires November 15, 2012               [Page 6]

Internet-Draft                  DTNRG BPQ                       May 2012


3.  BPQ Block Format

   The BPQ consists of:

   o  Block type code (1 byte) defined as in all bundle protocol blocks
      except the primary bundle block (as described in the Bundle
      Protocol).  The block type code for the BPQ Block is 0xC8 (this is
      an experimental type)

   o  Block processing control flags (SDNV) - defined as in all bundle
      protocol blocks except the primary bundle block.  SDNV encoding is
      described in the Bundle Protocol.  If a bundle node receives a
      bundle with a BPQ block and it is capable of supporting the BPQ
      block but it is not able to parse and process the BPQ value
      itself, either because it does not support the kind or type being
      used or because the data is not well-formed, the bundle node MUST
      process the bundle as if it cannot process the BPQ block.  That
      is, it must operate according to the settings of the Block
      Processing Control Flags, including the "Delete bundle if block
      can't be processed" flag and the "Discard block if it can't be
      processed" flag.  The "Block must be replicated in every fragment"
      bit MUST be set in all BPQ extension blocks.

   o  Block data length (SDNV) - defined as in all bundle protocol
      blocks except the primary bundle block.  SDNV encoding is
      described in the bundle protocol.

   Block-type-specific data fields as follows:

   o  A BPQ-kind field (1 byte), with 0x00 meaning a query, 0x01 meaning
      a response, and 0x02 meaning a response for which fragments MUST
      NOT be cached.  Other values are reserved.

   o  A matching rule type (1 byte) that tells routers how to match the
      BPQ from a query with the BPQ of a response.  Only matching rule
      type 0x00 is defined here, which represents the "exact match" rule
      as further defined below.  The matching rule MUST be the same in
      both a query and response in order for there to be a match.

   o  An original creation time-stamp (seconds and sequence number).
      This is the same pair of SDNVs that are initially set in the
      bundle's primary block.  This time-stamp MUST NOT be modified once
      set.  This MAY be left unset for query bundles.

   o  An original source EID length field (SDNV) the contains the length
      of the original source EID.





Farrell, et al.         Expires November 15, 2012               [Page 7]

Internet-Draft                  DTNRG BPQ                       May 2012


   o  An original source EID.  Since this may be changed in the primary
      block when the bundle is copied, this original copy is required to
      uniquely identify the bundle.  This EID MUST NOT be modified once
      set.  This MAY be left unset for query bundles.

   o  A BPQ-value-length field (SDNV) the contains the length of the
      BPQ-value.

   o  A BPQ-value field with the length indicated by the BPQ-value-
      length field, that identifies the relevant response payload and is
      interpreted according to the matching rule field.

   o  The number of fragments already returned (SDNV)

   o  Where the number of fragments already returned is non-zero, an
      ordered list containing offset, length pairs (encoded as SDNVs)
      indicating previously matched fragments.  This MAY be recalculated
      as new fragments are found and overlapping (or adjacent) fragment
      information MAY be merged.


4.  BPQ Processing

   If no match is found, then the node MUST forward the query bundle as
   if the BPQ block were not present.

   When creating the copy-response bundle, the source EID of the
   response bundle MUST contain an EID for the node that found the
   match.  The reply-to EID of copy-response bundle SHOULD be set to the
   reply-to EID of original response bundle and the destination EID of
   the copy-response bundle MUST be set to the source EID of the query
   bundle.

   The creation time-stamp of the bundle MUST be set to the current
   time.  The difference (in seconds) between the previous time-stamp
   and the current time MUST be subtracted from the bundle's lifetime
   value.

   The payload and all other extension blocks present in the response
   bundle MUST be copied into the copy-response bundle.

   Basically, the only difference between a response bundle and a copy-
   response bundle is the bundle identifier and the source and
   destination EIDs and the time-stamp and lifetime values.

   [note: need to check other primary block fields and say what, if
   anything, to do for each, e.g. for current custodian etc. - a bit of
   thought needed.



Farrell, et al.         Expires November 15, 2012               [Page 8]

Internet-Draft                  DTNRG BPQ                       May 2012


   When a node is comparing a query bundle against a potential matching
   bundle using the exact match matching rule, the bundles match iff the
   BPQ-value field of both are identical.

   If a matching response bundle is not a fragment, then the query
   bundle SHOULD NOT be further forwarded by the node in question but
   SHOULD be deleted after the response bundle has been queued for
   transmission, as the query has been satisfied.

   If a matching response bundle is a fragment, then the node SHOULD
   continue searching in case it has other fragments that match the
   query.  In that case, each fragment is sent as a separate copy-
   response bundle.  That is, the node finding the match SHOULD re-
   assemble the fragments of the entire bundle, if the node knows how to
   combine the different sets of extensions blocks of the fragments.  If
   the matching node does not know how to combine the extension blocks,
   it MUST NOT re-assemble the fragments.  The reason is that each
   fragment could have different sets of extension blocks present and
   the node might not know how to combine those properly.

   If a matching response bundle is a fragment, and the node does not
   have a full set of fragments (that together contain the entire
   payload) then the node MUST forward the query bundle as would have
   happened had no match been found.

   Custody and status report settings for the copy-response bundle
   bundle SHOULD be set to the same values are were present in the
   matching response bundle unless the node is specifically configured
   to do otherwise.

   [question: is that right? do we really want all those reports and
   custody acks?  There may be a wrinkle there with custody.]

   [Lots more tedious but obvious detail TBD.]


5.  Application Considerations

   This section provides some non-normative considerations on how BPQ
   can be used.

5.1.  Usage of Endpoint Identifiers in Bundles

   DTN EIDs usage for BPQ queries and replies needs to be considered
   for:

   o  source EIDs in query bundles




Farrell, et al.         Expires November 15, 2012               [Page 9]

Internet-Draft                  DTNRG BPQ                       May 2012


   o  destination EIDs in query bundles

   o  source EIDs in (copy-) response bundles

   o  destination EIDs in (copy-) response bundles

   Source EIDs in query bundles should normally be set to the node EID
   of query originator.

   For the destination EID in query bundles, there are three different
   options:

   1.  Some destination EID if the source of some content is actually
       known).  This could also be interpreted as a default EID for a
       node to which the query should be forwarded to.

   2.  Some namespace or application identifier such as "dtn:appX"

   3.  An actual information object ID (perhaps with a namespace prefix)
       such as "dtn:appX:45a87e5d"

   Ideally, the destination EID for queries should allow non-BPQ-aware
   DTN nodes to "do the right thing", i.e., forward the bundle to a node
   with (a copy of) the requested resource.  More concretely, specific
   DTN routing protocols should still work as intended, and these
   protocols normally perform decision based on the destination EID.

   For the source EID in (copy-) response bundles, there are essentially
   two options:

   1.  The EID of the origin DTN node for the requested resource

   2.  The EID of the node that generating the reply, which could be an
       intermediate BP node that happens to have a matching resource for
       the request.  This option would make the operation of
       intermediates visible to the actual receivers (normally
       considered a desirable property) but would end-to-end security
       (that is based on the source EID).

   The destination of (copy-) response bundles should normally set to
   the node EID of the original sender of the request to enable a DTN
   network to forward the response bundle to this node.  However,
   specific application scenarios may want to leverage DTN multicast
   capabilities, e.g. when many nodes are interested in a specific
   resource so that other EID naming strategies become more attractive.






Farrell, et al.         Expires November 15, 2012              [Page 10]

Internet-Draft                  DTNRG BPQ                       May 2012


5.2.  Advanced Processing of Query and Copy-Response Bundles

   In some named-content distribution scenarios, BPQ nodes can perform
   additional operations compared to either returning matched bundles or
   forwarding request bundles.  An intermediate BPQ node could also keep
   an interest table for the requested resource and then later, when a
   matching resource is available, satisfy the pending requests.  This
   mode of operation could be extended to fragments as well: an
   intermediate BPQ that has received a request for resource A, for
   which it has only fragments, could decide to send the fragment(s)
   directly, or -- e.g. in case of a disruption -- maintain the pending
   request and complete the response bundle with received fragments
   until a (more) complete response bundle is eventually sent.

   When an intermediate BPQ node follows the strategy of maintaining a
   list of pending requests, there might be a number of requests for the
   same resource, e.g., for popular content.  For such scenarios it
   would be beneficial to not have to create individual response bundles
   for the same resource to be sent to each interested node on the
   network.  Domain-specific routing protocols and adequate usage of
   destination EIDs could be employed in these cases.


6.  Related Work

   Using the Bundle Protocol to query the network for near-by resources
   has been explored in different approaches.  Greifenberg and Kutscher
   have described a DTN Publish-Subscribe Protocol (DPSP) in [ref.dpsp]
   that allows interested nodes to register interest in some names
   resource to the network.  DPSP nodes would aggregate such
   subscriptions and forward it towards the direction of an origin node.
   Corresponding content bundles would be distributed along a tree that
   has been built implicitly by the subscription messages.  In DPSP,
   destination EIDs in subscription bundles specify the named resource
   (e.g. content channel), and the subscription information is conveyed
   in an extension block to enable inter-working with unmodified DTN
   nodes and routing protocols.

   Sollazzo, Musolesi and Mascolo have described a Time-Aware COntent-
   based dissemination system for DTNs (TACO-DTN) in [ref.taco-dtn] that
   takes time-based information into account to optimize content
   dissemination in a subscription-based approach.  Temporal profiles
   are associated to each subscription and allow the construction of
   temporal profiles of info-stations.

   More general, the idea of accessing named information objects in the
   network, regardless of the actual object location, is a key notion in
   different Information-Centric Networking approaches.  Ahlgren,



Farrell, et al.         Expires November 15, 2012              [Page 11]

Internet-Draft                  DTNRG BPQ                       May 2012


   D'Ambrosio, Dannewitz et al have developed an elaborate information
   model for such information objects in [ref.netinf-design].  In the
   Network of Information approach, information objects can be accessed
   by unique names that provide additional properties such as self-
   certification, i.e., provide a cryptographic relation between the
   object and the name.  In such an approach, interested nodes would
   query the network for specific named objects and the network would
   perform name-based routing and/or resolution to locators to satisfy
   such requests.

   A similar approach is the Content-Centric Networking (CCN) approach
   described by Jacobsen, Smetters, Thornton et al in [ref.ccn].  In
   CCN, network nodes receive so-called Interest Packets for names
   content from interested nodes.  Such Interest Packets can be
   aggregated, and forwarded according to name-based routing
   information.  Corresponding data packets are forwarded in the reverse
   direction, based on Interest Table state that is maintained at
   intermediate nodes -- quite similar to the DPSP approach described
   above.

   The Query Extension Block as described in this memo could be used to
   inter-connect DTNs to such Information-Centric Networks and/or to
   implement Information-Centric Networking with the Bundle Protocol.


7.  IANA Considerations

   We'll want an extension block number and maybe a new registry for
   query kinds and matching rule types if we stick with the above.


8.  Security Considerations

   The BPQ in principle allows a node to probe the storage of another
   node.  If BPQ-values are guessable, then this would work.  If this is
   a concern, the unguessable BPQ-values SHOULD be used.

   The BPQ imposes a load on nodes that support it.  If such a load is
   considered a potential DoS vector, then nodes SHOULD implement some
   controls on the amount of searching they are willing to carry out.
   This could be a simple limit, or could depend on the source (or
   authentication status) of the query bundle.

   Since the copy-response comes from the matching node, the response
   bundle's authentication information (e.g.  PIB) will not be usable
   with the copy-response.

   [note: not sure what to do about this as yet.]



Farrell, et al.         Expires November 15, 2012              [Page 12]

Internet-Draft                  DTNRG BPQ                       May 2012


   If confidentiality of the query-response payload is required the PCB
   block can be used to provide that service.  However, BPQ values could
   leak information about the payload, for example if the BPQ value were
   a hash of the payload, then the BPQ value would allow an attacker to
   check whether a guess of the payload value was correct or not.  If
   this is a concern, then BPQ values SHOULD be chosen so as not to leak
   information about the response payload.


9.  References

9.1.  Normative References

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

   [RFC5050]  Scott, K. and S. Burleigh, "Bundle Protocol
              Specification", RFC 5050, November 2007.

9.2.  Informative References

   [RFC4838]  Cerf, V., Burleigh, S., Hooke, A., Torgerson, L., Durst,
              R., Scott, K., Fall, K., and H. Weiss, "Delay-Tolerant
              Networking Architecture", RFC 4838, April 2007.

   [ref.ccn]  Jacobsen, K, D, F, H, and L, "Networking Named Content",
              CoNEXT 2009 , December 2009.

   [ref.dpsp]
              Greifenberg and Kutscher, "Efficient Publish/
              Subscribe-based Multicast for Opportunistic Networking
              with Self-Organized Resource Utilization", The First IEEE
              International Workshop on Opportunistic Networking (WON-
              2008), March 2008.

   [ref.netinf-design]
              Ahlgren, D'Ambrosio, Dannewitz, Marchisio, Marsh, Ohlman,
              Pentikousis, Rembarz, Strandberg, and Vercellone, "Design
              Considerations for a Network of Information", Re-Arch 2008
              Workshop , December 2008.

   [ref.taco-dtn]
              Sollazzo, Musolesi, and Mascolo, "TACO-DTN: A Time-Aware
              COntent-based dissemination system for Delay Tolerant
              Networks", MobiOpp 2007 Workshop , 2007.






Farrell, et al.         Expires November 15, 2012              [Page 13]

Internet-Draft                  DTNRG BPQ                       May 2012


Appendix A.  ChangeLog

   This section to be deleted later.  The most recent changes should be
   added to the end of the list.

      Stephen: initial version

      Dirk: added some text to the introduction

      Dirk: moved some text from introduction to separate section
      "protocol overview"

      Dirk: changes processing requirements for fragmented response
      bundles as discussed

      Dirk: added section on Application Considerations

      Dirk: added text to related work section

      Aidan: Added text about adding already-returned fragments to the
      query

      Stephen: Added payload confidentiality sec. cons. note

      Aidan: Added text intentional naming and combining fragments using
      original src eid


Authors' Addresses

   Stephen Farrell
   Trinity College Dublin
   Dublin,   2
   Ireland

   Phone: +353-1-896-2354
   Email: stephen.farrell@cs.tcd.ie


   Aidan Lynch
   Trinity College Dublin
   Dublin,   2
   Ireland

   Phone:
   Email: lyncha6@tcd.ie





Farrell, et al.         Expires November 15, 2012              [Page 14]

Internet-Draft                  DTNRG BPQ                       May 2012


   Dirk Kutscher
   NEC
   Kurfuersten-Anlage 36
   Heidelberg,
   Germany

   Phone:
   Email: kutscher@neclab.eu


   Anders Lindgren
   Swedish Institute of Computer Science
   Stockholm,
   Sweden

   Phone:
   Email: andersl@sics.se


































Farrell, et al.         Expires November 15, 2012              [Page 15]