[dtn] CRCs: optional?

"Burleigh, Scott C (US 312B)" <scott.c.burleigh@jpl.nasa.gov> Fri, 02 August 2019 05:19 UTC

Return-Path: <scott.c.burleigh@jpl.nasa.gov>
X-Original-To: dtn@ietfa.amsl.com
Delivered-To: dtn@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 587A8120135 for <dtn@ietfa.amsl.com>; Thu, 1 Aug 2019 22:19:04 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=jpl.nasa.gov
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id TbN4B6nzWpax for <dtn@ietfa.amsl.com>; Thu, 1 Aug 2019 22:19:02 -0700 (PDT)
Received: from ppa02.jpl.nasa.gov (ppa02.jpl.nasa.gov [128.149.137.113]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5825F120044 for <dtn@ietf.org>; Thu, 1 Aug 2019 22:19:02 -0700 (PDT)
Received: from pps.filterd (ppa02.jpl.nasa.gov [127.0.0.1]) by ppa02.jpl.nasa.gov (8.16.0.27/8.16.0.27) with SMTP id x725Eqwq091898 for <dtn@ietf.org>; Thu, 1 Aug 2019 22:19:01 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=jpl.nasa.gov; h=from : to : subject : date : message-id : content-type : mime-version; s=InSight1906; bh=DdKF6rzY/18kuGXyb8nIDSaIBSDn4k2kPZREmLTBT0Y=; b=Qiobyb5o+E5Sfb/THyMqsyTLhNVBRq47qTU1aAblfLcDqyFpseMFcJbjgRysXfXRAMEO FXc/ax6LGBGUK4A8xlKwhU8htdg5BRr+eUDTprFGfEm1tk/j+sZOml9b+nUy1XJO0qrp GFo7sePa8vXQBoMPCgIWwV0gObQG1bg56tJOFtx79B65Vh/9dZMR0Bue1YYLea2C3R9c p3jTOQ6uXFifSVjSF3e3nPOEzQ140ec6xaBVjQjLPZ4YbXnIl5yif1FEFJMWmW1U8Ve0 r8wj/fFhIaalpXw/q9K2t217bjkYazwT0SBXVLkxQgyxotyPIV6k4yq6CLMVQG8uOine Ug==
Received: from mail.jpl.nasa.gov (altphysenclup03.jpl.nasa.gov [128.149.137.120]) by ppa02.jpl.nasa.gov with ESMTP id 2u4afvgsqx-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for <dtn@ietf.org>; Thu, 01 Aug 2019 22:19:01 -0700
Received: from ap-embx16-sp10.RES.AD.JPL (ap-embx16-sp10.jpl.nasa.gov [128.149.137.83]) by smtp.jpl.nasa.gov (Sentrion-MTA-4.3.1/Sentrion-MTA-4.3.1) with ESMTP id x725J0MV024179 (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128 bits) verified FAIL) for <dtn@ietf.org>; Thu, 1 Aug 2019 22:19:01 -0700
Received: from ap-embx16-sp10.RES.AD.JPL (2002:8095:8953::8095:8953) by ap-embx16-sp10.RES.AD.JPL (2002:8095:8953::8095:8953) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1591.10; Thu, 1 Aug 2019 22:19:00 -0700
Received: from ap-embx16-sp10.RES.AD.JPL ([fe80::4:f430:47b5:767b]) by ap-embx16-sp10.RES.AD.JPL ([fe80::4:f430:47b5:767b%17]) with mapi id 15.01.1591.008; Thu, 1 Aug 2019 22:19:00 -0700
From: "Burleigh, Scott C (US 312B)" <scott.c.burleigh@jpl.nasa.gov>
To: DTN WG <dtn@ietf.org>
Thread-Topic: CRCs: optional?
Thread-Index: AdVI3Bl+uYPZfLvtQvemW03U+c/kOQ==
Date: Fri, 02 Aug 2019 05:19:00 +0000
Message-ID: <d4f569588dac4d2da874913a4682e58c@jpl.nasa.gov>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [207.151.104.72]
Content-Type: multipart/alternative; boundary="_000_d4f569588dac4d2da874913a4682e58cjplnasagov_"
MIME-Version: 1.0
X-Source-IP: ap-embx16-sp10.jpl.nasa.gov [128.149.137.83]
X-Source-Sender: scott.c.burleigh@jpl.nasa.gov
X-AUTH: Authorized
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-08-02_03:, , signatures=0
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1906280000 definitions=main-1908020056
Archived-At: <https://mailarchive.ietf.org/arch/msg/dtn/ceufrOWj8wu6jlrfk1K-S8pKjjA>
Subject: [dtn] CRCs: optional?
X-BeenThere: dtn@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Delay Tolerant Networking \(DTN\) discussion list at the IETF." <dtn.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dtn>, <mailto:dtn-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dtn/>
List-Post: <mailto:dtn@ietf.org>
List-Help: <mailto:dtn-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dtn>, <mailto:dtn-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 02 Aug 2019 05:19:04 -0000

A closely related point: how optional are CRCs?

Historically I think the argument against CRCs in BP has been:

  *   Virtually all convergence-layer protocols we contemplate will provide CRCs or checksums, so CRCs at the bundle layer would be redundant.
  *   Of course, this only protects the data while in transit via those convergence-layer protocols.  Untold mischief might ensue while bundles are at rest awaiting outbound links.
  *   But we can use Block Integrity Blocks, end-to-end, to defend against not only accidental bit flips but also intentional malicious corruption.

In some networks, however, malicious corruption is unlikely and BIBs are overkill, yet accidental corruption is still possible; here, end-to-end CRCs are the remedy.

Since CRCs are computed individually on blocks, making all CRCs mandatory would result in a lot of CRCs; I think this overhead would be fine in some networks but not all.

I would say the main requirement is to ensure that the primary block is not modified at any time, so I would propose that every bundle's primary block MUST have a CRC *unless* the source node has inserted a BIB covering the primary block, in which case the CRC on the primary block is optional.

Next in importance is the payload block.  I would propose that every bundle's payload block SHOULD have a CRC *unless* the source node has inserted a BIB or a BCB covering the payload block, in which case the CRC on the primary block is optional.

And I would propose that CRCs on all other blocks are always optional.

One further note: to protect the integrity of an entire bundle it is always possible to encapsulate it in another bundle (using BIBE) and attach a CRC or BIB or BCB to the payload of the encapsulating bundle.

Comments?

Scott

From: dtn <dtn-bounces@ietf.org> On Behalf Of Burleigh, Scott C (US 312B)
Sent: Monday, July 29, 2019 9:23 PM
To: DTN WG <dtn@ietf.org>
Subject: Re: [dtn] [EXTERNAL] bpbis: BPSEC MUST or SHOULD

Another point on which I don't have a strong opinion, but my vote would be for SHOULD implement.  In real operation I think bpsec (at least a BIB on the primary block) would be mandatory in practice, but some closed environments bpsec might be unnecessary; when this is the case, requiring an implementation seems excessive.

Scott

From: dtn <dtn-bounces@ietf.org<mailto:dtn-bounces@ietf.org>> On Behalf Of Marc Blanchet
Sent: Friday, July 26, 2019 9:52 AM
To: DTN WG <dtn@ietf.org<mailto:dtn@ietf.org>>
Subject: [EXTERNAL] [dtn] bpbis: BPSEC MUST or SHOULD


Hello,
from our AD review of BPBis, there was a question on whether make BPSEC a MUST or SHOULD implement: i.e. a conformant BPbis implementation MAY/SHOULD/MUST also implement BPsec. The concensus in the room was for a SHOULD. This email is to confirm the concensus. Please state your position by replying to the list. If you agree with SHOULD, please also reply so that chairs can see the support of each options.

=====
in BPbis, BPSEC MAY/SHOULD/MUST be implemented? (expected answer: MAY, SHOULD or MUST)

Rationale for your answer?

Regards, Marc, co-chair