Re: [Detnet] IPv6 encapsulation in dataplane doc

"Jouni" <jouni.nospam@gmail.com> Thu, 08 February 2018 08:49 UTC

Return-Path: <jouni.nospam@gmail.com>
X-Original-To: detnet@ietfa.amsl.com
Delivered-To: detnet@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 56BCF12D86D for <detnet@ietfa.amsl.com>; Thu, 8 Feb 2018 00:49:24 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.698
X-Spam-Level:
X-Spam-Status: No, score=-2.698 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-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=gmail.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 OVa4aoUg4Tuw for <detnet@ietfa.amsl.com>; Thu, 8 Feb 2018 00:49:21 -0800 (PST)
Received: from mail-lf0-x22e.google.com (mail-lf0-x22e.google.com [IPv6:2a00:1450:4010:c07::22e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C850E120726 for <detnet@ietf.org>; Thu, 8 Feb 2018 00:49:20 -0800 (PST)
Received: by mail-lf0-x22e.google.com with SMTP id x20so3324510lff.6 for <detnet@ietf.org>; Thu, 08 Feb 2018 00:49:20 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:references:in-reply-to:subject:date:message-id:mime-version :thread-index:content-language; bh=rS29/0dTT8MGrmRU18wpu8gjhhrETzLA3L/RGnkllQU=; b=KfB9AFKEJooAXFsWGWebhezLNym2aFNA9gfqxpCemFyCzedfi63mSOMsPcPnVTwymk glnODXlXjQG+yTSGku8j5Z8RptFSE8X/v/hApv/MYvdnlROD4fkQGDn04gayVLPUhtbE +ah4c8BLBtOgRAxzAikY+hvGiGL75a67h/hEOlKND4/lO4xmllomZo1V7oMJ2CDFBKGm QCKWHyUNvhjEUn8Hgs8mH8nZDgUOk0AFUD3ziRXYpvAw6kSLWfiuLBMyNqViY/g8IJ7C k66TpkxMV5oekf1svccnNhtuJa8QsAG0us0tWzFqijfP6sAJhEw7p0pREpCy+SWoxT7b FSPA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:references:in-reply-to:subject:date :message-id:mime-version:thread-index:content-language; bh=rS29/0dTT8MGrmRU18wpu8gjhhrETzLA3L/RGnkllQU=; b=T4D1nIzJuO70E79w5lVRtTgI53Lx4+YeP+4Y72D8068t4WynwQf2KTWWrmPY+L9qGP Gs6sR/m+OvCE/dVIolY8uHuE3mGTjIm53JjcGGs7O19YMk5NRhDkO1/ICzILf16Fpwbo nv8CXqpOD9KMyyz2/vlbHAAKpRyHgMlwdQ505jJ70zpmS09YkLDf+myFL6J73MgbssIO Bqn54H2IUkoOwor7LeyBoOSchqubiJgorjFVXesRkx5pFJyNWHfiwBRuxIo+P7qRNnX4 FVcQtH7cJHXk26I6jI4v5zyduSw8xzOad2tOc+uZ4/wVHlWzcFUD4mp+A8GBl4vEfG5k Sk2Q==
X-Gm-Message-State: APf1xPCAk8X9nOl1iszpMFC7SndE1c6VRcNPOJZPc8VevDtAlB1/o7/P LmbyHXIfkC7AEv7YWeiqB9xZ2g==
X-Google-Smtp-Source: AH8x227XNo1+o0hoimArTY4a/CsEXuy/wSgbpZ2YkbJk00W7PC0LY1SGcmMC/YP5dcyI8bDgQEV6Jw==
X-Received: by 10.25.202.9 with SMTP id a9mr6200829lfg.144.1518079758561; Thu, 08 Feb 2018 00:49:18 -0800 (PST)
Received: from JOKO (81-175-169-204.co.dnainternet.fi. [81.175.169.204]) by smtp.gmail.com with ESMTPSA id z14sm690641ljc.23.2018.02.08.00.49.17 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 08 Feb 2018 00:49:17 -0800 (PST)
From: Jouni <jouni.nospam@gmail.com>
To: "'Pascal Thubert (pthubert)'" <pthubert@cisco.com>, detnet@ietf.org
References: <cff50c52d2f945cfa8eff149f5242fb0@XCH-RCD-001.cisco.com>
In-Reply-To: <cff50c52d2f945cfa8eff149f5242fb0@XCH-RCD-001.cisco.com>
Date: Thu, 08 Feb 2018 10:49:16 +0200
Message-ID: <220801d3a0b9$b441ee50$1cc5caf0$@gmail.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_2209_01D3A0CA.77CF0410"
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AQD5O4QjESRxtG/4YhDnUM8lkFE3YKVO+flg
Content-Language: en-us
Archived-At: <https://mailarchive.ietf.org/arch/msg/detnet/1wHuAUO9aFsKLONTWh0S2xhRbgo>
Subject: Re: [Detnet] IPv6 encapsulation in dataplane doc
X-BeenThere: detnet@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Discussions on Deterministic Networking BoF and Proposed WG <detnet.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/detnet>, <mailto:detnet-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/detnet/>
List-Post: <mailto:detnet@ietf.org>
List-Help: <mailto:detnet-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/detnet>, <mailto:detnet-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 08 Feb 2018 08:49:24 -0000

Hi Pascal,

 

Thanks for reading the draft and elaborating the option handling further. In
the current draft Section 6.4.1 elaborates handling/processing of options
further than in the introductory part of the options and packet formats. The
alternative a) below is already described in the draft to some extent - thus
I fully agree. The alternative b) would also fit but there is no explicit
description for it yet - again I fully agree. The figure 11 is heading
exactly where your alternatives point at.

 

Thnaks,

                jouni

 

From: detnet [mailto:detnet-bounces@ietf.org] On Behalf Of Pascal Thubert
(pthubert)
Sent: Wednesday, February 7, 2018 15:27 PM
To: detnet@ietf.org
Subject: [Detnet] IPv6 encapsulation in dataplane doc

 

Dear all

 

This is about the IPv6 encapsulation and more precisely

 

                        Therefore, if a DetNet-aware end system only
   inserted the DetNet Destination Option into the IPv6 but e.g., a
   DetNet Edge node is configured to enforce an explicit route for the
   IPv6 packet using a source routing header, then it has no other
   possibility than add an outer tunneling IPv6 header with required
   extension headers in it.  The processing of IPv6 packets in a DetNet
   Edge node is discussed further in Section 6.4.1
<https://tools.ietf.org/html/draft-ietf-detnet-dp-sol-01#section-6.4.1> .

 

 

With the current spec, a source sends a DetNet packet as

 

                    +---------------------------------+

                    |                                 |

                    |           DetNet Flow           |

                    |             Payload             |

                    |                                 |

                    /---------------------------------\

                    H   Optional DetNet DstOpt Hdr    H

                    \---------------------------------/

                    |          IPv6 header            |

                    |     (with set Flow label)       |

                    +---------------------------------+

 

And then the ingress node needs to re-encapsulate as

 
                    +---------------------------------+
                    |                                 |
                    |           DetNet Flow           |
                    |             Payload             |
                    |                                 |
                    /---------------------------------\
                    H        DetNet DstOpt Hdr        H

                    \---------------------------------/

                    |          IPv6 header            |

                    |     (with set Flow label)       |

                    +=================================+

                    |          Routing header         |
                    /---------------------------------\
                    H        DetNet DstOpt Hdr        H
                    \---------------------------------/
                    |          IPv6 header            |
                    |     (with set Flow label)       |
                    +---------------------------------+

 

This creates a duplication of the DetNet Destination Option.

 

There are alternatives 

 

a)  whereby the packet is tunneled from the source to the detnet ingress,
and based on its state the DetNet ingress accepts the packet, processes it
and then resends it. The tunneled version of this could be:

 

 

                    +---------------------------------+

                    |                                 |

                    |           DetNet Flow           |

                    |             Payload             |

                    |                                 |

                    +---------------------------------+

                    |          IPv6 header            |

                    |   (dest = final destination)    |

                    /=================================\

                    H   Optional DetNet DstOpt Hdr    H

                    \---------------------------------/

                    |          IPv6 header            |

                    |   (dest = DetNet ingress edge)  |

                    |     (with set Flow label)       |

                    +---------------------------------+

 

Which allows the ingress to tunnel to the egress as follows:

 

                    +---------------------------------+

                    |                                 |

                    |           DetNet Flow           |

                    |             Payload             |

                    |                                 |

                    +---------------------------------+

                    |          IPv6 header            |

                    |      (to final destination)     |

                    +=================================+

                    |          Routing header         |
                    /---------------------------------\

                    H   Optional DetNet DstOpt Hdr    H

                    \---------------------------------/

                    |          IPv6 header            |

                    |   (dest = DetNet egress edge)   |

                    |     (with set Flow label)       |

                    +---------------------------------+

 

 

b)  whereby the PREF is done by the end nodes and the tunnel is transport
only, meaning that there are 2 tunnels A and B and that the source sends
twice a packet like this:

 

                    +---------------------------------+

                    |                                 |

                    |           DetNet Flow           |

                    |             Payload             |

                    |                                 |

                    /---------------------------------\

                    H   Optional DetNet DstOpt Hdr    H

                    \---------------------------------/

                    |          IPv6 header            |

                    |   (dest = DetNet ingress edge X)|

                    |     (with set Flow label)       |

                    +---------------------------------+

 

And then the ingress node needs to re-encapsulate as

 
                    +---------------------------------+
                    |                                 |
                    |           DetNet Flow           |
                    |             Payload             |
                    |                                 |
                    /---------------------------------\
                    H        DetNet DstOpt Hdr        H

                    \---------------------------------/

                    |          IPv6 header            |

                    |   (dest = final destination)    |

                    |     (with set Flow label)       |

                    +=================================+

                    |          Routing header         |
                    +---------------------------------+
                    |          IPv6 header            |
                    |   (dest = DetNet egress edge X) |
                    |     (with set Flow label)       |
                    +---------------------------------+

 

Cheers,

 

Pascal