<?xml version="1.0" encoding="US-ASCII"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<?rfc toc="yes"?>
<?rfc tocompact="yes"?>
<?rfc tocdepth="3"?>
<?rfc tocindent="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<?rfc strict='yes'?>
<?rfc iprnotified='no'?>
<rfc category="info" docName="draft-templin-dtnhiaps-00.txt" ipr="trust200902">
  <front>
    <title abbrev="DTNHIAPS">Delay Tolerant Networking Header Integrity
    Assurance - Problem Statement</title>

    <author fullname="Fred L. Templin" initials="F. L." role="editor"
            surname="Templin">
      <organization>Boeing Research &amp; Technology</organization>

      <address>
        <postal>
          <street>P.O. Box 3707</street>

          <city>Seattle</city>

          <region>WA</region>

          <code>98124</code>

          <country>USA</country>
        </postal>

        <email>fltemplin@acm.org</email>
      </address>
    </author>

    <date day="12" month="March" year="2014"/>

    <keyword>I-D</keyword>

    <keyword>Internet-Draft</keyword>

    <abstract>
      <t>Delay/Disruption Tolerant Networking (DTN) introduces a network model
      for environments in which communications may be subject to long delays
      and/or intermittent connectivity. A Bundle Protocol (BP) has been
      designed to accommodate data communications in such challenging
      environments through multi-hop store-and-forward message propagation,
      where each hop may be required to store bundles of data for long periods
      of time. It is therefore essential that bundles with corrupted headers
      (e.g., the primary bundle block) be detected as soon as possible in
      order to avoid resource exhaustion due to accidental or malicious
      factors, and to permit timely retransmission. In this document, we
      discuss the need for a hop-by-hop integrity assurance as a means for
      encouraging suitable solutions.</t>
    </abstract>
  </front>

  <middle>
    <section title="Introduction">
      <t>The Delay/Disruption Tolerant Network (DTN) architecture <xref
      target="RFC4838"/> introduces a data communications concept in which
      "bundles" of data are exchanged in store-and-forward fashion between
      endpoints that may be separated by long-delay or
      intermittently-connected paths. The Bundle Protocol (BP) Specification
      <xref target="RFC5050"/> provides the bundle message format and
      operations, including convergence layer transmission, fragmentation and
      custody transfer. Each bundle further may include extensions, among
      which may be security parameters designed to ensure confidentiality,
      integrity and authorization per the Bundle Security Protocol (BSP) <xref
      target="RFC6257"/> and/or Streamlined Bundle Security Protocol (SBSP)
      <xref target="I-D.irtf-dtnrg-sbsp"/> specifications.</t>

      <t><xref target="WOOD08"/>, Section 4.1 has shown that including
      integrity checks only between the original source and final destination
      can lead to poor performance when primary bundle blocks are corrupted on
      intermediate hops on the path (where the source of corruption may be
      accidental or through the malicious acts of an attacker). Conversely,
      <xref target="WOOD08"/> establishes that adding a hop-by-hop integrity
      check can provide a tighter control loop resulting in faster
      retransmissions and more timely delivery of bundles to the final
      destination. In the following section, we discuss the problem as a means
      for encouraging solution proposals.</t>
    </section>

    <section title="Discussion">
      <t>Internet Protocol, version 4 (IPv4) <xref target="RFC0791"/> includes
      a checksum in the header of each packet as a weak assurance against
      mis-delivery or corruption of critical protocol control fields. The
      checksum is verified then recalculated at each hop along the path from
      source to destination, and the packet is discarded at any hop where the
      checksum is incorrect. Internet Protocol, version 6 (IPv6) <xref
      target="RFC2460"/> does not include a header checksum, but requires
      upper layer protocols (TCP, UDP, etc,) to include a "pseudo-header" of
      the IPv6 header when calculating their checksum values. This means that
      an IPv6 packet with header corruption may traverse many networking hops
      and may even arrive at the final destination before the corruption is
      detected.</t>

      <t>The DTN protocols currently adhere to the example established by
      IPv6, but differ in the sense that for a transport layer connection
      spanning a single Internet the end-to-end delay is typically only a few
      tens to a few hundreds of milliseconds where for a DTN path connecting
      multiple Internets the delay may be substantially longer.</t>

      <t>Since the continued store-and-forward progression of corrupted
      primary bundle block information needlessly consumes resources, and
      since the DTN protocols are typically associated with
      resource-constrained environments, it is critical that some form of
      hop-by-hop integrity solution be incorporated. This could come in the
      form of a security protocol integrity block signed with a key that is
      known to all DTN nodes. At a minimum, the integrity check should cover
      the primary bundle block but may or may not be applied to the payload
      since in some cases delivery of partially-corrupted data is deemed
      acceptable and better than getting no data at all.</t>

      <t>Therefore, a hop-by-hop integrity capability should be included in
      the DTN security protocols and applied as a matter of course in many DTN
      environments. However, it is worth examining each DTN use case
      individually to determine where an integrity check is necessary vs where
      the check can be avoided. This document does not suggest an approach to
      address the issue, but rather outlines the problems and invites solution
      proposals.</t>
    </section>

    <section title="IANA Considerations">
      <t>There are no IANA considerations for this document.</t>
    </section>

    <section anchor="security" title="Security Considerations">
      <t>Message integrity is an integral aspect of security, since corruption
      may occur either as an accident or through the purposeful actions of an
      adversary.</t>

      <t>DTN security considerations are discussed in <xref
      target="RFC6257"/><xref target="I-D.irtf-dtnrg-sbsp"/>.</t>
    </section>

    <section anchor="acknowledge" title="Acknowledgments">
      <t>Integrity issues have been discussed broadly in DTN mailing list
      discussions as well as in many of the documents cited in this
      publication.</t>
    </section>
  </middle>

  <back>
    <references title="Normative References">
      <?rfc include="reference.RFC.0791"?>

      <?rfc include="reference.RFC.2460"?>

      <?rfc include="reference.RFC.4838"?>

      <?rfc include="reference.RFC.5050"?>

      <?rfc ?>

      <?rfc ?>

      <?rfc ?>
    </references>

    <references title="Informative References">
      <?rfc include="reference.RFC.6257"?>

      <?rfc ?>

      <?rfc include="reference.I-D.irtf-dtnrg-sbsp"?>

      <?rfc ?>

      <reference anchor="WOOD08">
        <front>
          <title>A Bundle of Problems</title>

          <author fullname="Lloyd Wood" initials="L" surname="Wood">
            <organization/>
          </author>

          <author fullname="Wesley M. Eddy" initials="W" surname="Eddy">
            <organization/>
          </author>

          <author fullname="Peter Holliday" initials="P" surname="Holliday">
            <organization/>
          </author>

          <date month="December" year="2008"/>
        </front>
      </reference>
    </references>
  </back>
</rfc>
