Re: [Detnet] Some initial comments on draft-dt-detnet-dp-sol-00
"Andrew G. Malis" <agmalis@gmail.com> Mon, 05 June 2017 20:55 UTC
Return-Path: <agmalis@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 B86961293EB; Mon, 5 Jun 2017 13:55:52 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.998
X-Spam-Level:
X-Spam-Status: No, score=-1.998 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_NONE=-0.0001, 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 X4PYFQXN3ryu; Mon, 5 Jun 2017 13:55:49 -0700 (PDT)
Received: from mail-ot0-x234.google.com (mail-ot0-x234.google.com [IPv6:2607:f8b0:4003:c0f::234]) (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 25DC81271FD; Mon, 5 Jun 2017 13:55:49 -0700 (PDT)
Received: by mail-ot0-x234.google.com with SMTP id t31so3845623ota.1; Mon, 05 Jun 2017 13:55:49 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=IxCmKih6AFVq8aaulzLgMACvYxy1TbhXpQSlOukez38=; b=BHtLDUvTutE6hQmGQGv6muDtXb2FNoyH9D0rfLEjooCa59Ze5EMnq9RjaO8U9Jolw2 8aZd5Aweu/090l14YFlxsBgJY7XPVqUA07Js2mGo3XypdLAyJTnaGB6F1LOl2fp8RfJi bH8s5/Si69Pv1bVuE9n0T/AxjjMS/EAcfsLOTaq6UdtoDQ0FhuO1qfW8epP5xdSVI5WP sxkk4VxIZm2ft55yUo1xIU8lHs/0H32d6prmwSzaaQixEgKJyQLNsUePYH4xEap/Mm3o TcfJeOYU6gkTQUBzMuD1Tp5ro1vVVU9Uf0zcqyFjK3p5uae0+Om3Io7FUbc7rTjpg9Tp +C8Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=IxCmKih6AFVq8aaulzLgMACvYxy1TbhXpQSlOukez38=; b=ZQcvng91XDOHE8WhOOpVmu50jx9oJDVoZ73q0asJd8ijyFkIkhttoyiHrJ3WNVvHt5 IMxd4lKxfFJQp6vbaU90s59FeGH9y9YkeljjwKSx6CxjN9iQ+/yE+LAkxLx1hxCN1xu3 6hTlRHq6Z5U6exIAjDl74Mp7+JVSISV9AufbM5lILup0Od7zZMfWtYohVJ2caqkMNh7F A8DQyBZ9QRzLL1NktiUrI0GQZ59g1IMpOl02TxbINOgwDE3CxfGldO2Uu4jzDqTSLFmA yNHOdZ94V2yYn3+YlszaU4snHMBukGHM6Shars8jRYMHFgbAzxEIWEOmoPflUE7SLL/q FEFg==
X-Gm-Message-State: AKS2vOwcp/TTEisuW7RxUn0g931ilGC1uuRvNYS8E0sTubFwLl8OisyS s7O06AiopovJADi+AJOTQ2f9lIcORw==
X-Received: by 10.157.56.225 with SMTP id k30mr11984770ote.152.1496696148466; Mon, 05 Jun 2017 13:55:48 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.182.38.162 with HTTP; Mon, 5 Jun 2017 13:55:28 -0700 (PDT)
In-Reply-To: <abacca1f-a8a1-10f4-101f-f3ef08990d3f@gmail.com>
References: <abacca1f-a8a1-10f4-101f-f3ef08990d3f@gmail.com>
From: "Andrew G. Malis" <agmalis@gmail.com>
Date: Mon, 05 Jun 2017 16:55:28 -0400
Message-ID: <CAA=duU1pCRWiSVdVQWvW8dfWVZeS8ci73_t3B7FNdvXvhdG_zw@mail.gmail.com>
To: Stewart Bryant <stewart.bryant@gmail.com>
Cc: draft-dt-detnet-dp-sol@ietf.org, "detnet@ietf.org" <detnet@ietf.org>
Content-Type: multipart/alternative; boundary="001a11c0215844223405513cbaa8"
Archived-At: <https://mailarchive.ietf.org/arch/msg/detnet/yaLcW5qaP2QYQmkGH-m7sBZQBNc>
Subject: Re: [Detnet] Some initial comments on draft-dt-detnet-dp-sol-00
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: Mon, 05 Jun 2017 20:55:53 -0000
In addition to Stewart’s comments, I had commented during the discussion of this draft in Chicago that the PW definition aspects of the draft should be split out to a separate draft that would belong in the PALS WG, taking advantage of the PW expertise there. Cheers, Andy On Mon, Jun 5, 2017 at 4:01 PM, Stewart Bryant <stewart.bryant@gmail.com> wrote: > I took an initial look at the detnet dp document. > > I think that PWs are certainly a good way to go, but I am concerned > about a number of aspects of the proposal. > > My biggest concern is doing the sequence number checking. There have > not been many attempts to do this, and from work that we have done in > the OAM space all the feedback I get is that this is a hard problem. > It might be useful if you constrained the packets to a path and an > interface using MPLS-TP or MPLS-TE, however I don't see a practical > way to do that in a pure IP network. You could of course do it > with SR, but that is v6 only, and the packets could potentially need > a very large SR header. > > Please see the notes inline. > > -Stewart > > > The PW-based data plane can be run over either an IP > or MPLS [RFC4448][RFC6658] Packet Switched Network (PSN). > > SB> I comment on this in detail later > > ============ > > > 5.1. DetNet Control Word > > The DetNet control word (d-CW) is identical to the control word > defined for Ethernet over MPLS networks in [RFC4448]. The DetNet > control word is illustrated in Figure 4. > > 0 1 2 3 > 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 > +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ > |0 0 0 0| reserved - set to 0 | 16 bit Sequence Number | > +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ > > > Figure 4: DetNet Control Word > > [Editor's note: Shoudl we care about high speed links, here 16 bits > of sequence number wraps fast? For example, in a case of 100Gb/s > link, 16 bits of sequence number will wrap in ~6.6ms assuming 1250 > octets of packets and ~3.3ms for 625 octets packets. Both numbers > mean quite long fiber distances, though.] > > SB> This worries me. Doing read modify write on the sequence number is > SB> difficult in the general case, particularly without path constraint > SB> since a packet can arrive on any interface, and this interface can > SB> change. > SB> > SB> Are you thinking that there will be so few DN PWs that you can > SB> put the counters in registers? That might fly at the T-PEs, but > SB> I would be worried at the S-PEs. > SB> > SB> BTW shouldn't you consider much smaller packets, or do you imagine > SB> that DN will be constrained to applications using large packets. > > =========== > > 5.3. DetNet encapsulation > > The DetNet data plane follows PW encapsulation. This document > specifies a single encapsulation that can be used over both MPLS and > IP packet switched Networks (PSN). The DetNet data plane > encapsulation consists of a > > o DetNet control word (d-CW): contains sequencing information for > packet replication and duplicate elimination purposes. There is a > separate sequence number space per each DetNet label. > > SB> Do you mean per DetNet flow ID, or per PW label? > > > o DetNet flow-ID (f-ID): uniquely identifies a DetNet flow within a > DetNet network. Multiple DetNet PWs with different PW labels may > have the same f-ID, which then implies the PWs are actually > subflows of one compound flow. > > SB> I am not sure I understand the definition of a DetNet network yet. > SB> I presume that it is Fig 5 from the architecture draft, which > SB> is a tunnel between two service instances. > SB> However I am having difficulty understanding the scope of the > SB> uniqueness. It sounds as if it needs to be unique between a > SB> pair of service instances is that the case, or does the > SB> uniqueness have greater scope? > SB> PWs are not subflows, they are "A mechanism that carries the > SB> essential elements of an emulated service from one PE to one or > SB> more other PEs over a PSN." > > > o PseudoWire Label (PW Label;): a standard PW label that identifies > a PW Instance within a (DA-)T-PE or (DA-)S-PE device. > > SB> Just so we are all clear the PW label changes at S-PEs > > =========== > > o DetNet topology overlay label (L-label): an optional label used > between (DA-)T-PE or (DA-)S-PE nodes. The main use of L-labels is > to tunnel PWs through a PE node and therefore effectively making a > PE node to behave like a P node. > > SB> This needs more thought. The reason that S-PEs were created > SB> was to minimise the burden of running PWs between different > SB> administrative domains. To make this feasible it was necessary > SB> for the T-PEs to allocate their own PW label and have the > SB> S-PEs swap, that way only the boundary nodes (S-PEs) needed > SB> be worried about the mapping between the PE identity and the > SB> PW label in the data-plane. > SB> If a data-plane identifier is used, then we don't really need > SB> S-PEs as such. So I think that we have to define the new > SB> purpose of the S-PE more clearly when they are used for Detnet. > > > In a case of MPLS-based PSN, the tunnel labels between LSRs are > referred as T-labels. > > SB> I think that they are really LSP labels. > > The DetNet CW and the Detnet flow-ID together constitute the DetNet > PseudoWire encapsulation header. > > [Editor's note: The current design has the DetNet flow-ID as part > of the every DetNet flow packet. The flow-ID identifies the flow > uniquely within the DetNet network and together with the sequence > number information from the DetNet control word is used for PREF > purposes. The flow-ID makes is easy for the DA-*-PE node to > associate different PWs into one compound flow and perform the > elimination of duplicate packets. > > SB> I am not sure this is needed. The DA-*-PE knows the relationship > SB> between the PW labels and can make the decision based on that. > > > > The flow-ID would point at the > node internal construct that holds the received packet history for > > > > Korhonen, et al. Expires September 14, 2017 [Page 8] > > Internet-Draft DetNet data plane solution March 2017 > > > each DetNet flow of interest. However, it could also be possible > to associate multiple PWs into one DetNet flow just using the > control plane provided information. In this case different PWs > (using any PW label) would be mapped internally within a node to a > local-ID (or similar construct), which again points at the > internal per DetNet flow received packets history construct. > > SB> I think you have to do this anyway > > The > explicit in-band flow-ID is easy from the processing and control > plane point of view. > SB> Isn't this a bigger change to the forwarder? What normally > SB> happens is you vector to the instructions and context using > SB> the PW label as the identifier. So I think the flow-ID just adds > SB> complexity. Given that it needs to be unique and known at > SB> each PW node on the path, I do not see what has been gained in > SB> terms of reduction in control plane activity. > > > The local-ID approach does not need the in- > band information (thus has less overhead) but requires more from > the control plane and the mapping information has to be stored > into the LFIB. Current design decision is the in-band flow-ID but > may be changed to local-ID if there is a strong reason to do the > change.] > > Figure 6 illustrates a DetNet PseudoWire encapsulation using an MPLS > PSN. Similarly, Figure 7 illustrates the DetNet PseudoWire > encapsulation when IP PSN is used. The encapsulation is uniform > above the PSN. > > Depending on the network topology the "overlay label" (L-label) may > be part of the label stack. The L-label tunnels guarantee PW labels > remain unchanged between DA-*-PE nodes. > SB> Please see earlier > > Furthermore, L-labels > tunnels allow selectively exposing the PW label to DA-*-PE nodes, > which means some overlay topologies may just pass through specific > DA-S-PEs without any DetNet specific processing. > > SB> They can do this anyway. At an SPE we normally just swap the > SB> PW label, and other than for OAM reasons (trapped by TTL expiry) > SB> we do no processing. So if you do not teach an SPE that the PW > SB> is to be processed, it will just pass through. > SB> > SB> I think that you need to look seriously at deleting this component > SB> of your design and building something much closer to a normal > SB> PW design. > > =============== > > When IP PSN is used, the label stack it transports is only inspected > when the IP packet destination address equals to the IP address of a > DA-*-PE or a P node. Essentially there are one more IP tunnels > between a number of DA-*-PE and/or P nodes. The LFIB and the > forwarding information base (FIB) combination determines whether a PW > gets terminated at the node or forwarded to another node within a new > IP tunnel. > > SB> So, setting aside for the moment the work that we are doing on > SB> unifying SRv6 and MPLS SR, work which as yet has no official status > SB> you should understand that there really is no deployment of > SB> MPLS-PW over IP. All of the deployed PWs are either pure PW over > SB> MPLS, or LT2Pv3. L2TPv3 has no concept of an S-PE. > SB> > SB> Now I think the unified approach is the right one, but so far > SB> there are no real specifications. > SB> > SB> Also you need to think about whether you want ECMP or not, because > SB> if you do you really do need the interstitial UDP layer (RFC7510) > SB> shown below. > > ============== > > > 6.1. Forwarded clarifications > > [Editor's note: The Detnet-aware "extended forwarder" does the heavy > lifting on maintaining the sequence numbers associated with the > DetNet labels. Extended forwarder is also responsible for packet > replication and duplicate elimination. See the excerpt from RFC3985 > Section 4.2.1. about forwarder's functions. We extend that to PREF: > > Some applications have to forward payload elements selectively > from one or more ACs to one or more PWs. In such cases, there > will also be a need to perform the inverse function on PWE3-PDUs > received by a PE from the PSN. This is the function of the > forwarder. > > ] > SB> But note that forwarder function only appears in the T-PE, we > SB> never included it in the S-PE which can be better thought of > SB> as a two layer MPLS switch - it's not how it works although > SB> a modern two label lookup MPLS system could do it like that > SB> but all that happens in an SPE is that you swap two labels > SB> simultaneously - the LSP label and the PW label. > > > The DetNet specific new functionality in a DA-*-PE PW processing is > the packet replication and duplication elimination function (PREF). > This functional is a part of the "extended" forwarder. The PREF > processing is triggered by the LFIB actions i.e., not all PWs receive > > > > Korhonen, et al. Expires September 14, 2017 [Page 11] > > Internet-Draft DetNet data plane solution March 2017 > > > DetNet specific processing. Basically the LFIB has to be extended > with a "PREF enabled" boolean configuration switch that is associated > with the normal label actions (e.g., swap, push, pop, ..). The > output of the PREF elimination function is always a single packet. > The output of the PREF replication function is always one or more > packet (i.e., 1:M replication). The replicated packets MUST share > the same DetNet PW control word sequence number and flow identity > word flow-id. > > The complex part of the DetNet PREF processing is tracking the > history of received packets for multiple PWs. These PWs do not have > the same PW label value while they still share the same PW sequence > number counter and the history information. That is where the DetNet > encapsulation header flow-ID plays an important role and binds the > control word sequence number to the flow specific shared counter and > history information within the PREF function. > > SB> That is certainly one way of doing it, although given that you need > SB> to provision the PW anyway, I an not sure it is needed. > > The DetNet flow word contains a D flag bit (see Section 5.2), which > makes the DA-*-PE node aware of the direction the flow-ID arrived > from. If the node, based on the local policy, checks for the D bit > setting that effectively means the sequence number history has to > contain also the D bit information. > > SB> I am really not sure why you need the D bit a PW received on a given PW > SB> label only goes one way. > > > ============== > > > > > > 7. Other DetNet considerations > > 7.1. Class of Service > > [Editor's note: Discuss the CoS.. and how that is archived when using > MPLS or IP PSN.] > > > SB> Don't all your packets need to go on the highest class of service? > > =========== > > 7.3. Time synchronization > > > o PTP with on-path support: in this approach PTP packets are sent as > DetNet flows, and intermediate nodes take part in the protocol as > Transparent Clocks or Boundary Clocks [IEEE1588]. The on-path PTP > support by intermediate nodes provides a higher degree of accuracy > than the previous approach. The actual accuracy depends on > whether all intermediate nodes are PTP-capable, or only a subset > of them. > > SB> RFC8169 shows how to do TC in an MPLS network. > SB> I am not sure anyone knows how to do this in an IP network. > > =========== > > 7.4. Bidirectional traffic > > Some DetNet applications generate bidirectional traffic and may > require symmetric flows. There are already mechanisms that can be > used to create bidirectional tunnels at the transport network level, > such as MPLS-TP. The data plane solution SHOULD allow establishing > bidirectional symmetric flows. Control plane mechanisms would need > to also support this, though this is out of scope of this document. > [Summary of existing mechanisms to create bidirectional tunnels that > can be used.] > > SB> PWs are always bidirectional of course. > > > > 8.1. PW Label assignment and distribution > > The PW label distribution follows the same mechanisms specified for > MS-PW [RFC6073]. > > SB> This will need extensions to support DETNET > > > > > > _______________________________________________ > detnet mailing list > detnet@ietf.org > https://www.ietf.org/mailman/listinfo/detnet > >
- [Detnet] Some initial comments on draft-dt-detnet… Stewart Bryant
- Re: [Detnet] Some initial comments on draft-dt-de… Andrew G. Malis
- Re: [Detnet] Some initial comments on draft-dt-de… Balázs Varga A
- Re: [Detnet] Some initial comments on draft-dt-de… Stewart Bryant
- Re: [Detnet] Some initial comments on draft-dt-de… Balázs Varga A