Re: [Tsv-art] [lp-wan] Tsvart last call review of draft-ietf-lpwan-coap-static-context-hc-12

dominique.barthel@orange.com Tue, 17 March 2020 22:46 UTC

Return-Path: <dominique.barthel@orange.com>
X-Original-To: tsv-art@ietfa.amsl.com
Delivered-To: tsv-art@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5F0653A088C; Tue, 17 Mar 2020 15:46:26 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, UNPARSEABLE_RELAY=0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=orange.com
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 KGwWc4X3pKAK; Tue, 17 Mar 2020 15:46:24 -0700 (PDT)
Received: from relais-inet.orange.com (relais-inet.orange.com [80.12.66.41]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 352E83A094E; Tue, 17 Mar 2020 15:46:24 -0700 (PDT)
Received: from opfedar05.francetelecom.fr (unknown [xx.xx.xx.7]) by opfedar23.francetelecom.fr (ESMTP service) with ESMTP id 48hpDt34VMzBs6P; Tue, 17 Mar 2020 23:46:22 +0100 (CET)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=orange.com; s=ORANGE001; t=1584485182; bh=NNw706lWrTHmprU7sHTiDhoXUGNQixRQgPahoAII8hk=; h=From:To:Subject:Date:Message-ID:Content-Type: Content-Transfer-Encoding:MIME-Version; b=RNEtPI3+rNhxbvn6WEtpCfjTJ4Jf/bQNzOAvV5lbuYSiptOn0n4HrKVhpzgHNhpXX aroseLi8RkNZjG4ZZqyeXUiC4+UQhtZYeJuMHRS34vWA9eHhi4CINZEmcUxhsEId7V qnT0ne/e16vNnLjtlRPXGja3p9tSxKVoHT2hpIFeLiMTDv1qP+8+WDWUPfRKwdon42 +LyCAdxRYc7qD4EP+qKEKTj1PsqMiO0m/kElkQqW+8qIF33TcVb+V3LqsfNH1pbU3d 8rh3uYRzRiENmPhIrTCVKI2lmp/CGJe2m9Ph56n2QpXPftJACLVBiLpurk4hLWKWt7 551NbUhNIafKQ==
Received: from Exchangemail-eme6.itn.ftgroup (unknown [xx.xx.13.35]) by opfedar05.francetelecom.fr (ESMTP service) with ESMTP id 48hpDt21Jpz2xC2; Tue, 17 Mar 2020 23:46:22 +0100 (CET)
From: <dominique.barthel@orange.com>
To: Joseph Touch <touch@strayalpha.com>, "tsv-art@ietf.org" <tsv-art@ietf.org>, Suresh Krishnan <Suresh@kaloom.com>
CC: "draft-ietf-lpwan-ipv6-static-context-hc@ietf.org" <draft-ietf-lpwan-ipv6-static-context-hc@ietf.org>
Thread-Topic: [lp-wan] Tsvart last call review of draft-ietf-lpwan-coap-static-context-hc-12
Thread-Index: AQHV/K3hQVHKft/CRU6k9exUN6u7og==
Date: Tue, 17 Mar 2020 22:46:21 +0000
Message-ID: =?utf-8?q?=3C32170=5F1584485182=5F5E71533E=5F32170=5F159=5F1=5FD?= =?utf-8?q?A9701E5=2E7204F=25dominique=2Ebarthel=40orange=2Ecom=3E?=
References: <158152010913.17982.18347318138768196852@ietfa.amsl.com> =?utf-8?q?=3C340=5F1584143298=5F5E6C1BC2=5F340=5F169=5F1=5FDA91D669=2E71EAC?= =?utf-8?q?=25dominique=2Ebarthel=40orange=2Ecom=3E?=
In-Reply-To: =?utf-8?q?=3C340=5F1584143298=5F5E6C1BC2=5F340=5F169=5F1=5FDA91?= =?utf-8?q?D669=2E71EAC=25dominique=2Ebarthel=40orange=2Ecom=3E?=
Accept-Language: fr-FR, en-US
Content-Language: fr-FR
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/14.7.3.170325
x-originating-ip: [10.114.13.247]
Content-Type: text/plain; charset="utf-8"
Content-ID: <A0C59492BF0AD54089E4FA611613E890@adroot.infra.ftgroup>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsv-art/FDLxsI1ZEKQacDphPAJEc3HV61c>
Subject: Re: [Tsv-art] [lp-wan] Tsvart last call review of draft-ietf-lpwan-coap-static-context-hc-12
X-BeenThere: tsv-art@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Transport Area Review Team <tsv-art.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tsv-art>, <mailto:tsv-art-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tsv-art/>
List-Post: <mailto:tsv-art@ietf.org>
List-Help: <mailto:tsv-art-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tsv-art>, <mailto:tsv-art-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 17 Mar 2020 22:46:27 -0000

Hello all,

Here are some examples to illustrate my answer in the mail below.

We have the following processing chain:
- protocol parser: breaks the headers of incoming packet into itemised
fields, each with an identifier that tells what they are. Hands this set
of fields to the SCHC compressor.
- SCHC compressor: browses the Rule set to find a Rule that matches the
set of fields. Compresses each field per the Rule, sends RuleID +
compression residues + payload.
- SCHC decompressor: based on the received RuleID and residues, rebuilds
the itemised fields, hands the set of fields to the protocol reconstructor.
- protocol reconstructor: concatenates the itemised fields into protocol
headers, concatenates the payload. Hands to the upper layer.

Here, let's assume we intend to compress the UDP/IPv6 headers. The upper
layers headers are considered "payload" in our discussion.
For this discussion, I will only consider the Length field of IPv6,
ignoring all other IPv6 fields.
Therefore, I will say an old-style UDP/IPv6 packet only has 5 fields:
- IPv6.Length
- UDP.Length
- UDP.Checksum
- UDP.SourcePort
- UDP.DestPort
While a post draft-tsvwg-udp-options UDP/IPv6 packet may have more fields
- UDP.Option1
- UDP.Option2
- etc.

Let's assume ProtocolParserA does not understand draft-tsvwg-udp-options.
Let's assume ProtocolParserB does understand draft-tsvwg-udp-options.
Let's assume PacketU is a well formed old-style UPD/IPv6 packet.
Let's assume PacketV is a post draft-tsvwg-udp-options UPD/IPv6 packet,
that includes UDP.Option1 and UDP.Option2.
Let's assume Rule1 only has the old-style 5 field descriptors. In its
CDAs, the UDP length is elided at the compressor and reconstructed out of
IPv6.Length at the decompressor.
Let's assume Rule2 has the 5 old-style field descriptors plus UDP.Option1
and UDP.Option2. In its CDAs, the UDP length is sent in extenso as a
compression residue.

When PacketU or PacketV is submitted to SystemA, which includes
ProtocolParserA, or to SystemB, which includes ProtocolParserB, the
outcome is described in the following table.

                      PacketU                      PacketV
---------------------------------------------------------------------------
--------------------
     | PPA parser   | 5 itemised fields          | incorrect UDP length,
nothing handed to SCHC
     | SCHC comp    | Matches Rule1              |
SystA|              | UDP.Length elided          |
     | SCHC decomp  | UDP.Length recomputed      |
     | PPA reconstr | correct UDP header         |
---------------------------------------------------------------------------
--------------------
     | PPB parser   | 5 itemised fields          | 7 itemised fields
     | SCHC comp    | Matches Rule1              | Matches Rule2
SystB|              | UDP.Length elided          | UDP.Length sent as a
compression residue
     | SCHC decomp  | UDP.Length recomputed      | UDP.Length retrieved
from residue
     | PPB reconstr | correct UDP header         | correct UDP header

---------------------------------------------------------------------------
--------------------

Further variations:

If a PacketW has 3 options, yielding 8 fields, it does not match Rule2.
With SystB, it will be sent uncompressed.
If case SystB does not have a Rule1 in the Rule set, PacketU will be sent
uncompressed.
If case SystB does not have a Rule2 in the Rule set, PacketV will be sent
uncompressed.
There is no way PacketV will be matched by Rule1, which is the case that
was envisaged as problematic by TSV-ART, if I understood correctly.
Now, if ProtocolParserA does not check for consistency between UDP.Length
and IPv6.Length, then we have a problem.
But the problem is with the protocol parser, not with SCHC.

Best regards

Dominique






Le 14/03/20 00:48, « dominique.barthel@orange.com »
<dominique.barthel@orange.com> a écrit :

>Hello all,
>
>This is the response by the ietf-lpwan-ipv6-static-context-hc co-authors
>to the observation below by Joseph Touch.
>You are right that Section 10 of ietf-lpwan-ipv6-static-context-hc only
>shows how to compress IPv6/UDP packets that have no extensions.
>
>However, the SCHC specification in Section 7.1 states
>"It is assumed that
>   there is a protocol parser alongside SCHC that is able to identify
>   all the fields encountered in the headers to be compressed, and to
>   label them with a Field ID."
>
>Furthermore, Section 7.3 states
>"If any
>         header field of the packet being examined cannot be matched
>         with a Field Description with the correct FID, the Rule MUST be
>         disregarded.  If any Field Description in the Rule has a FID
>         that cannot be matched to one of the header fields of the
>         packet being examined, the Rule MUST be disregarded."
>
>It follows that, if an IPv6 packet does contain the new UDP TLVs
>introduced by draft-tsvwg-udp-options, it will not match a Rule destined
>to compress the IPv6/UDP headers and that does not have these TLVs as part
>of the Field Descriptors.
>Therefore, it will no be compressed by that Rule and will not be
>decompressed with a wrong UDP Length at the receive end.
>
>By contrast, if a Rule destined to compress the IPv6/UDP headers does have
>these UDP TLVs as part of the Field Descriptors, it is responsible for
>reconstructing the UDP Length properly. This can be achieved by means
>already provided by SCHC, such as sending the value over the wire or
>matching it to an expected constant, etc.
>
>In conclusion, the SCHC compression mechanism, if properly implemented, is
>fully compatible with draft-tsvwg-udp-options.
>
>Best regards,
>
>Dominique
>
>
>Le 12/02/20 16:08, « lp-wan on behalf of Joseph Touch via Datatracker »
><lp-wan-bounces@ietf.org on behalf of noreply@ietf.org> a écrit :
>
>>Reviewer: Joseph Touch
>>Review result: Almost Ready
>>
>>This document has been reviewed as part of the transport area review
>>team's
>>ongoing effort to review key IETF documents. These comments were written
>>primarily for the transport area directors, but are copied to the
>>document's
>>authors and WG to allow them to address any issues raised and also to the
>>IETF
>>discussion list for information.
>>
>>When done at the time of IETF Last Call, the authors should consider this
>>review as part of the last-call comments they receive. Please always CC
>>tsv-art@ietf.org if you reply to or forward this review.
>>
>>I found no transport issues with this document.
>>
>>However, this document normatively cites
>>ietf-lpwan-ipv6-static-context-hc,
>>which does have some transport issues of concern. I am listing them here
>>because of the dependency between the two documents.
>>
>>In particular, ietf-lpwan-ipv6-static-context-hc overlooks the case where
>>the
>>IP header indicates a packet longer than the UDP header, a case that is
>>currently being developed for UDP header options in TSVWG. This other
>>document
>>claims that both UDP and IPv6 length fields can be computed from the
>>received
>>data, but this is not the case when the IP header indicates a packet end
>>after
>>that of the UDP header. See draft-tsvwg-udp-options for more information.
>>
>>There are no changes needed to this document to address this length
>>issue, but
>>the normative dependency in this doc is the reason for indicatin this
>>document
>>as "Almost Ready".
>>
>>_______________________________________________
>>lp-wan mailing list
>>lp-wan@ietf.org
>>https://www.ietf.org/mailman/listinfo/lp-wan
>
>
>__________________________________________________________________________
>_______________________________________________
>
>Ce message et ses pieces jointes peuvent contenir des informations
>confidentielles ou privilegiees et ne doivent donc
>pas etre diffuses, exploites ou copies sans autorisation. Si vous avez
>recu ce message par erreur, veuillez le signaler
>a l'expediteur et le detruire ainsi que les pieces jointes. Les messages
>electroniques etant susceptibles d'alteration,
>Orange decline toute responsabilite si ce message a ete altere, deforme
>ou falsifie. Merci.
>
>This message and its attachments may contain confidential or privileged
>information that may be protected by law;
>they should not be distributed, used or copied without authorisation.
>If you have received this email in error, please notify the sender and
>delete this message and its attachments.
>As emails may be altered, Orange is not liable for messages that have
>been modified, changed or falsified.
>Thank you.
>


_________________________________________________________________________________________________________________________

Ce message et ses pieces jointes peuvent contenir des informations confidentielles ou privilegiees et ne doivent donc
pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu ce message par erreur, veuillez le signaler
a l'expediteur et le detruire ainsi que les pieces jointes. Les messages electroniques etant susceptibles d'alteration,
Orange decline toute responsabilite si ce message a ete altere, deforme ou falsifie. Merci.

This message and its attachments may contain confidential or privileged information that may be protected by law;
they should not be distributed, used or copied without authorisation.
If you have received this email in error, please notify the sender and delete this message and its attachments.
As emails may be altered, Orange is not liable for messages that have been modified, changed or falsified.
Thank you.