From nobody Fri Jul 29 08:19:56 2022
Return-Path: <hayabusagsm@gmail.com>
X-Original-To: tcpm@ietfa.amsl.com
Delivered-To: tcpm@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1])
 by ietfa.amsl.com (Postfix) with ESMTP id 0EF28C157B52
 for <tcpm@ietfa.amsl.com>; Fri, 29 Jul 2022 08:19:55 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.097
X-Spam-Level: 
X-Spam-Status: No, score=-2.097 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, FREEMAIL_FROM=0.001,
 HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001, T_REMOTE_IMAGE=0.01, T_SCC_BODY_TEXT_LINE=-0.01,
 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 ([50.223.129.194])
 by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id xmyNOh2cISqA for <tcpm@ietfa.amsl.com>;
 Fri, 29 Jul 2022 08:19:50 -0700 (PDT)
Received: from mail-pf1-x432.google.com (mail-pf1-x432.google.com
 [IPv6:2607:f8b0:4864:20::432])
 (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256)
 (No client certificate requested)
 by ietfa.amsl.com (Postfix) with ESMTPS id BE325C157B36
 for <tcpm@ietf.org>; Fri, 29 Jul 2022 08:19:50 -0700 (PDT)
Received: by mail-pf1-x432.google.com with SMTP id g12so4912622pfb.3
 for <tcpm@ietf.org>; Fri, 29 Jul 2022 08:19:50 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; 
 h=mime-version:references:in-reply-to:from:date:message-id:subject:to
 :cc; bh=hyL+HGklZ9VUoNh6EfnGOrI28WMfB6qe9D3EV2H1x3I=;
 b=XVMZ83TmGTFfYhpQT64t1D5+x46XzizZSM45c349CQi+c2lUKr1o5/mzxP+jKHHCvg
 3t5y3IqL08tlTnkY+7FJnoWFfElQnpyGr/TDFKmBgxlv8JD8qfHEfXW/C1P0HnwmfT2P
 MMWKzpscxcWbZeTI7MFDpQvo8n8Ox6J3t9Q/UktQ/vQJ7OzRN42CN5hPp7il+iWwUHyi
 KF914UCNJSRJBWw+vL0k0+y/MF+b9CmZStzJexToPRgoKSwA8VZFkyJWl39LbFdHq+1l
 BugM5fYjYq1tKNaPF9ZDt1ZzbdKOdHs6tOLiwXI4GkekkypUlO7jfLuULHN+O6azNiSo
 hLOg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc;
 bh=hyL+HGklZ9VUoNh6EfnGOrI28WMfB6qe9D3EV2H1x3I=;
 b=eIZWuYap4BKpjIkZRAzZq0O2t1+wSPdCOY23xO9xeqvW4Kon8+d8wux2thWf6fsQet
 nTqgJ/Z2THy1KEv7CpvZXRyfUQj2BGjH6fiNfl5PlU4UtRMr8FnE/bPP+CJ/euHVUEog
 cwJcBOLqNaqX4KmXM/XSaOkCEo534BvDbFfR9xsyzMMNBEyf8bteaK7TYh7u8trnNsTn
 7cJreQD+U+n7Z6wwZQUF/aza0+48brivk6EyYV5lYoMta2F0z1phmHe86hxZ45Mji+Uy
 eVhmSrdG6A3t14bDSbR0iAYh2e0BGyjcFA5DCOR9959r6gZyc22DDG2PTETxyqvrxVb1
 KC8g==
X-Gm-Message-State: AJIora/qpK5VztHvMQ4zEKeHjd45SeLSpscBAknxCsSMGjouEgTgMwfZ
 tJDm3kG9LKztj0rZpptyi8sLXNZzIPzgJGbPlKE=
X-Google-Smtp-Source: AGRyM1sVpOPVNUrSwUrB3Z4pcd4YYxhHe76S5WyLyAlHMjVu4NJDRUw1fvSifKvRPyCowsuS0fThXqe8p4hy0lR9trw=
X-Received: by 2002:a05:6a00:428e:b0:52b:7e40:56cf with SMTP id
 bx14-20020a056a00428e00b0052b7e4056cfmr3934448pfb.72.1659107989820; Fri, 29
 Jul 2022 08:19:49 -0700 (PDT)
MIME-Version: 1.0
References: <CAJhXr9-zcJg99ML3MSNMTvRFiT_BLzJihQucAdX8MZGDZ84dWw@mail.gmail.com>
 <CABNhwV1wz2Uhx+DWjabzVz8GAhQD78NFKhq2az=E7dhnxTC-Ww@mail.gmail.com>
 <A8851A57-748D-4504-97B6-677807EE0DB6@lurchi.franken.de>
 <EF72E595-0B1E-4AD9-BDFE-603B9B200F0D@strayalpha.com>
 <aea35a2d93c544a8affe6b0b75d69eca@hs-esslingen.de>
In-Reply-To: <aea35a2d93c544a8affe6b0b75d69eca@hs-esslingen.de>
From: Gyan Mishra <hayabusagsm@gmail.com>
Date: Fri, 29 Jul 2022 11:19:38 -0400
Message-ID: <CABNhwV3Jsv99qMbO=a=EynTNzC9hUgciTaYscddLnmoU+VzD=g@mail.gmail.com>
To: "Scharf, Michael" <Michael.Scharf@hs-esslingen.de>
Cc: Jeffrey Haas <jhaas@pfrc.org>,
 Michael Tuexen <michael.tuexen@lurchi.franken.de>, 
 Robert Raszuk <robert@raszuk.net>, Susan Hares <shares@ndzh.com>, 
 "Van De Velde, Gunter (Nokia - BE/Antwerp)" <gunter.van_de_velde@nokia.com>,
 tcpm IETF list <tcpm@ietf.org>, 
 "touch@strayalpha.com" <touch@strayalpha.com>
Content-Type: multipart/alternative; boundary="000000000000609a4d05e4f32e36"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/m9DA9AldKrvF8hEHve9MnNyd4xA>
Subject: Re: [tcpm] IETF 114 TCPM WG - NG TCPM Yang Model
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpm>,
 <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tcpm/>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>,
 <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 29 Jul 2022 15:19:55 -0000

--000000000000609a4d05e4f32e36
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hi Michael

See in-line

Thanks

Gyan

On Wed, Jul 27, 2022 at 10:13 AM Scharf, Michael <
Michael.Scharf@hs-esslingen.de> wrote:

> Hi all,
>
> See below...
>
> > -----Original Message-----
> > From: tcpm <tcpm-bounces@ietf.org> On Behalf Of touch@strayalpha.com
> > Sent: Wednesday, July 27, 2022 4:13 AM
> > To: Michael Tuexen <michael.tuexen@lurchi.franken.de>
> > Cc: Gyan Mishra <hayabusagsm@gmail.com>; tcpm IETF list
> > <tcpm@ietf.org>; Robert Raszuk <robert@raszuk.net>; Van De Velde,
> > Gunter (Nokia - BE/Antwerp) <gunter.van_de_velde@nokia.com>; Jeffrey
> > Haas <jhaas@pfrc.org>; Susan Hares <shares@ndzh.com>
> > Subject: Re: [tcpm] IETF 114 TCPM WG - NG TCPM Yang Model
> >
> > Notes below.
> >
> > > On Jul 26, 2022, at 6:19 PM, Michael Tuexen
> > <michael.tuexen@lurchi.franken.de> wrote:
> > >
> > >>
> > >>
> > >> Dear TCPM
> > >>
> > >> Attached is the slide deck for the NG TCP Yang model discussion.
> > >>
> > >> Sue, Robert, Jeff, Gunter
> > >>
> > >> Please review and let me know if I missed any talking points for the
> NG
> > TCP Yang model.
> > > A couple of clarifying questions related to slide "What to add to NG
> TCP
> > Yang Model?",
> > > especially since I know almost nothing about YANG:
> > >
> > > =E2=80=A2 All TCP states part of the FSM state machine.
> > > Understood.
> > These make sense.
>
> Indeed.
>
> draft-ietf-tcpm-yang-tcp-07 already models the states of a TCP connection=
,
> using the definitions from 793bis:
>
> <snip>
> leaf state {
>              type enumeration {
>                enum closed {
>                  value 1;
>                  description
>                    "Connection is closed. Connections in this state
>                     may not appear in this list.";
>                }
>                enum listen {
>                  value 2;
>                  description
>                    "Represents waiting for a connection request from any
>                     remote TCP peer and port.";
>                }
>                enum syn-sent {
>                  value 3;
>                  description
>                    "Represents waiting for a matching connection request
>                     after having sent a connection request.";
>                }
>                enum syn-received {
>                  value 4;
>                  description
>                    "Represents waiting for a confirming connection
>                     request acknowledgment after having both received
>                     and sent a connection request.";
>                }
>                enum established {
>                  value 5;
>                  description
>                    "Represents an open connection, data received can be
>                     delivered to the user. The normal state for the data
>                     transfer phase of the connection.";
>                }
>                enum fin-wait-1 {
>                  value 6;
>                  description
>                    "Represents waiting for a connection termination
>                     request from the remote TCP peer, or an
>                     acknowledgment of the connection termination request
>                     previously sent.";
>                }
>                enum fin-wait-2 {
>                  value 7;
>                  description
>                    "Represents waiting for a connection termination
>                     request from the remote TCP peer.";
>                }
>                enum close-wait {
>                  value 8;
>                  description
>                    "Represents waiting for a connection termination
>                     request from the local user.";
>                }
>                enum last-ack {
>                  value 9;
>                  description
>                    "Represents waiting for an acknowledgment of the
>                     connection termination request previously sent to
>                     the remote TCP peer (this termination request sent
>                     to the remote TCP peer already included an
>                     acknowledgment of the termination request sent from
>                     the remote TCP peer)";
>                }
>                enum closing {
>                  value 10;
>                  description
>                    "Represents waiting for a connection termination
>                     request acknowledgment from the remote TCP peer.";
>                }
>                enum time-wait {
>                  value 11;
>                  description
>                    "Represents waiting for enough time to pass to be
>                     sure the remote TCP peer received the acknowledgment
>                     of its connection termination request, and to avoid
>                     new connections being impacted by delayed segments
>                     from previous connections.";
>                }
>              }
>              description
>                "The state of this TCP connection.";
>            }
>            description
>              "List of TCP connections with their parameters. The list
>               is modeled as writeable, but implementations may not
>               allow creation of new TCP connections by adding entries to
>               the list. Furthermore, the behavior upon removal is
>               implementation-specific. Implementations may support
>               closing or resetting a TCP connection upon an operation
>               that removes the entry from the list.";
>          }
> </snip>
>
> This creates feature parity with the TCP MIB regarding state.
>
> All: Please have a look at this model, which was added to address the IET=
F
> LC feedback, and let us know if anything is missing.
>
> > > =E2=80=A2 All TCP flags and respective states.
> > > Do you mean the TCP flags SYN, FIN, PSH, ... Does a YANG module all t=
o
> > describe
> > > packets sent and received?
> >
> > I can=E2=80=99t see how this can model the TCP flags; all it should be =
modeling
> is the
> > states of the connection. The model is for TCP, not TCP packets.
>
> I am very confused here, too.
>
> > > =E2=80=A2 All TCP parameters that would be accessible with a local OS=
 kernel
> hook.
> > > Doesn't that mean the complete set of state variable the kernel has a=
nd
> > isn't that implementation dependent?
> > > =E2=80=A2 All windowing parameters including window scaling as well a=
s any
> > windowing related optimizations.
> > > You mean the receiver window including the window scaling.
> > > =E2=80=A2 All TCP options and optimizations set such as Selective ACK=
.
> > > I guess you mean the set of TCP extensions which have been negotiated=
.
> > > =E2=80=A2 All TCP slow start congestion control parameters CWIN etc.
> > > There are a multiple Congestion Controls, even ones not being
> specified by
> > the IETF.
> > > So this might get very hard to do. Or do you require a specific CC wh=
en
> > using TCP for BGP?
> >
> > This is where things get confusing to me; it seems that there is either
> a model
> > for TCP or a model for TCP implementations. The two should not be
> confused
> > with each other
>
> Yep, and a lot of details are very implementation specific and differ a
> lot in the long tail of existing TCP implementations.


    Gyan> Understood.  Maybe if we focused on router vendor TCP
implementations.  Also maybe commonality across compute node TCP
implementations

>
>
> In the first discussions regarding draft-scharf-tcpm-yang-tcp, I have
> shown some examples for TCP parameters that are implemented relatively
> similarly across major TCP stacks and that a more comprehensive TCP YANG
> model could possibly include.


    Gyan> Thank you

This includes for instance enabling/disabling ECN, Window Scaling,
> Timestamps, etc.


    Gyan> Perfect

But even in that case different stacks differ *a lot* and I am not aware of
> a simple way to work around that.


    Gyan> Understood

Details can be found in the IETF proceedings for previous TCPM meetings.


   Gyan> Ok

>
>
> If there is interest in modeling TCP beyond draft-ietf-tcpm-yang-tcp-07,
> the discussion needs to ensure that the model roughly corresponds to
> running code.


    Gyan> Understood

>
>
> Unfortunately, I probably cannot attend this TCPM session because of my
> day job, but I obviously follow the mailing list.
>
> Thanks
>
> Michael
>
>
> >
> > Joe
> >
> > >
> > > Best regards
> > > Michael
> > >>
> > >> Thanks
> > >>
> > >> Gyan
> > >>
> > >> ---------- Forwarded message ---------
> > >> From: Mishra, Gyan S <gyan.s.mishra@verizon.com>
> > >> Date: Mon, Jul 25, 2022 at 11:36 PM
> > >> Subject: IETF 114 TCPM WG - NG TCPM Yang Model
> > >> To: Hayabusanew <hayabusagsm@gmail.com>
> > >>
> > >>
> > >> --
> > >>
> > >>
> > >> Gyan Mishra
> > >> Network Solutions Architect
> > >> Email gyan.s.mishra@verizon.com
> > >> M 301 502-1347
> > >>
> > >>
> > >> <IETF-114 TCPM TCP Yang
> > Model.pdf>_______________________________________________
> > >> tcpm mailing list
> > >> tcpm@ietf.org
> > >> https://www.ietf.org/mailman/listinfo/tcpm
> > >
> > > _______________________________________________
> > > tcpm mailing list
> > > tcpm@ietf.org
> > > https://www.ietf.org/mailman/listinfo/tcpm
> >
> > _______________________________________________
> > tcpm mailing list
> > tcpm@ietf.org
> > https://www.ietf.org/mailman/listinfo/tcpm
>
--=20

<http://www.verizon.com/>

*Gyan Mishra*

*Network Solutions A**rchitect *

*Email gyan.s.mishra@verizon.com <gyan.s.mishra@verizon.com>*



*M 301 502-1347*

--000000000000609a4d05e4f32e36
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"auto">Hi Michael=C2=A0</div><div dir=3D"auto"><br></div><div di=
r=3D"auto">See in-line=C2=A0</div><div dir=3D"auto"><br></div><div dir=3D"a=
uto">Thanks=C2=A0</div><div dir=3D"auto"><br></div><div dir=3D"auto">Gyan</=
div><div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_att=
r">On Wed, Jul 27, 2022 at 10:13 AM Scharf, Michael &lt;<a href=3D"mailto:M=
ichael.Scharf@hs-esslingen.de">Michael.Scharf@hs-esslingen.de</a>&gt; wrote=
:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;bor=
der-left:1px #ccc solid;padding-left:1ex">Hi all,<br>
<br>
See below...<br>
<br>
&gt; -----Original Message-----<br>
&gt; From: tcpm &lt;<a href=3D"mailto:tcpm-bounces@ietf.org" target=3D"_bla=
nk">tcpm-bounces@ietf.org</a>&gt; On Behalf Of <a href=3D"mailto:touch@stra=
yalpha.com" target=3D"_blank">touch@strayalpha.com</a><br>
&gt; Sent: Wednesday, July 27, 2022 4:13 AM<br>
&gt; To: Michael Tuexen &lt;<a href=3D"mailto:michael.tuexen@lurchi.franken=
.de" target=3D"_blank">michael.tuexen@lurchi.franken.de</a>&gt;<br>
&gt; Cc: Gyan Mishra &lt;<a href=3D"mailto:hayabusagsm@gmail.com" target=3D=
"_blank">hayabusagsm@gmail.com</a>&gt;; tcpm IETF list<br>
&gt; &lt;<a href=3D"mailto:tcpm@ietf.org" target=3D"_blank">tcpm@ietf.org</=
a>&gt;; Robert Raszuk &lt;<a href=3D"mailto:robert@raszuk.net" target=3D"_b=
lank">robert@raszuk.net</a>&gt;; Van De Velde,<br>
&gt; Gunter (Nokia - BE/Antwerp) &lt;<a href=3D"mailto:gunter.van_de_velde@=
nokia.com" target=3D"_blank">gunter.van_de_velde@nokia.com</a>&gt;; Jeffrey=
<br>
&gt; Haas &lt;<a href=3D"mailto:jhaas@pfrc.org" target=3D"_blank">jhaas@pfr=
c.org</a>&gt;; Susan Hares &lt;<a href=3D"mailto:shares@ndzh.com" target=3D=
"_blank">shares@ndzh.com</a>&gt;<br>
&gt; Subject: Re: [tcpm] IETF 114 TCPM WG - NG TCPM Yang Model<br>
&gt; <br>
&gt; Notes below.<br>
&gt; <br>
&gt; &gt; On Jul 26, 2022, at 6:19 PM, Michael Tuexen<br>
&gt; &lt;<a href=3D"mailto:michael.tuexen@lurchi.franken.de" target=3D"_bla=
nk">michael.tuexen@lurchi.franken.de</a>&gt; wrote:<br>
&gt; &gt;<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; Dear TCPM<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; Attached is the slide deck for the NG TCP Yang model discussi=
on.<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; Sue, Robert, Jeff, Gunter<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; Please review and let me know if I missed any talking points =
for the NG<br>
&gt; TCP Yang model.<br>
&gt; &gt; A couple of clarifying questions related to slide &quot;What to a=
dd to NG TCP<br>
&gt; Yang Model?&quot;,<br>
&gt; &gt; especially since I know almost nothing about YANG:<br>
&gt; &gt;<br>
&gt; &gt; =E2=80=A2 All TCP states part of the FSM state machine.<br>
&gt; &gt; Understood.<br>
&gt; These make sense.<br>
<br>
Indeed.<br>
<br>
draft-ietf-tcpm-yang-tcp-07 already models the states of a TCP connection, =
using the definitions from 793bis:<br>
<br>
&lt;snip&gt;<br>
leaf state {<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0type enumeration {<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0enum closed {<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0value 1;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0description<b=
r>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&quot;=
Connection is closed. Connections in this state<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 may n=
ot appear in this list.&quot;;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0}<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0enum listen {<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0value 2;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0description<b=
r>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&quot;=
Represents waiting for a connection request from any<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 remot=
e TCP peer and port.&quot;;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0}<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0enum syn-sent {<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0value 3;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0description<b=
r>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&quot;=
Represents waiting for a matching connection request<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 after=
 having sent a connection request.&quot;;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0}<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0enum syn-received {<=
br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0value 4;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0description<b=
r>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&quot;=
Represents waiting for a confirming connection<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 reque=
st acknowledgment after having both received<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 and s=
ent a connection request.&quot;;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0}<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0enum established {<b=
r>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0value 5;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0description<b=
r>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&quot;=
Represents an open connection, data received can be<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 deliv=
ered to the user. The normal state for the data<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 trans=
fer phase of the connection.&quot;;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0}<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0enum fin-wait-1 {<br=
>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0value 6;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0description<b=
r>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&quot;=
Represents waiting for a connection termination<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 reque=
st from the remote TCP peer, or an<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ackno=
wledgment of the connection termination request<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 previ=
ously sent.&quot;;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0}<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0enum fin-wait-2 {<br=
>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0value 7;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0description<b=
r>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&quot;=
Represents waiting for a connection termination<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 reque=
st from the remote TCP peer.&quot;;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0}<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0enum close-wait {<br=
>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0value 8;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0description<b=
r>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&quot;=
Represents waiting for a connection termination<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 reque=
st from the local user.&quot;;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0}<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0enum last-ack {<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0value 9;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0description<b=
r>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&quot;=
Represents waiting for an acknowledgment of the<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 conne=
ction termination request previously sent to<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 the r=
emote TCP peer (this termination request sent<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 to th=
e remote TCP peer already included an<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ackno=
wledgment of the termination request sent from<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 the r=
emote TCP peer)&quot;;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0}<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0enum closing {<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0value 10;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0description<b=
r>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&quot;=
Represents waiting for a connection termination<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 reque=
st acknowledgment from the remote TCP peer.&quot;;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0}<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0enum time-wait {<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0value 11;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0description<b=
r>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&quot;=
Represents waiting for enough time to pass to be<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 sure =
the remote TCP peer received the acknowledgment<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 of it=
s connection termination request, and to avoid<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 new c=
onnections being impacted by delayed segments<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 from =
previous connections.&quot;;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0}<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0}<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0description<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&quot;The state of t=
his TCP connection.&quot;;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0}<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0description<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0&quot;List of TCP connectio=
ns with their parameters. The list<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 is modeled as writeable, b=
ut implementations may not<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 allow creation of new TCP =
connections by adding entries to<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 the list. Furthermore, the=
 behavior upon removal is<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 implementation-specific. I=
mplementations may support<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 closing or resetting a TCP=
 connection upon an operation<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 that removes the entry fro=
m the list.&quot;;<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0}<br>
&lt;/snip&gt;<br>
<br>
This creates feature parity with the TCP MIB regarding state.<br>
<br>
All: Please have a look at this model, which was added to address the IETF =
LC feedback, and let us know if anything is missing.<br>
<br>
&gt; &gt; =E2=80=A2 All TCP flags and respective states.<br>
&gt; &gt; Do you mean the TCP flags SYN, FIN, PSH, ... Does a YANG module a=
ll to<br>
&gt; describe<br>
&gt; &gt; packets sent and received?<br>
&gt; <br>
&gt; I can=E2=80=99t see how this can model the TCP flags; all it should be=
 modeling is the<br>
&gt; states of the connection. The model is for TCP, not TCP packets.<br>
<br>
I am very confused here, too.<br>
<br>
&gt; &gt; =E2=80=A2 All TCP parameters that would be accessible with a loca=
l OS kernel hook.<br>
&gt; &gt; Doesn&#39;t that mean the complete set of state variable the kern=
el has and<br>
&gt; isn&#39;t that implementation dependent?<br>
&gt; &gt; =E2=80=A2 All windowing parameters including window scaling as we=
ll as any<br>
&gt; windowing related optimizations.<br>
&gt; &gt; You mean the receiver window including the window scaling.<br>
&gt; &gt; =E2=80=A2 All TCP options and optimizations set such as Selective=
 ACK.<br>
&gt; &gt; I guess you mean the set of TCP extensions which have been negoti=
ated.<br>
&gt; &gt; =E2=80=A2 All TCP slow start congestion control parameters CWIN e=
tc.<br>
&gt; &gt; There are a multiple Congestion Controls, even ones not being spe=
cified by<br>
&gt; the IETF.<br>
&gt; &gt; So this might get very hard to do. Or do you require a specific C=
C when<br>
&gt; using TCP for BGP?<br>
&gt; <br>
&gt; This is where things get confusing to me; it seems that there is eithe=
r a model<br>
&gt; for TCP or a model for TCP implementations. The two should not be conf=
used<br>
&gt; with each other<br>
<br>
Yep, and a lot of details are very implementation specific and differ a lot=
 in the long tail of existing TCP implementations.</blockquote><div dir=3D"=
auto"><br></div><div dir=3D"auto">=C2=A0 =C2=A0 Gyan&gt; Understood.=C2=A0 =
Maybe if we focused on router vendor TCP implementations.=C2=A0 Also maybe =
commonality across compute node TCP implementations=C2=A0</div><blockquote =
class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid=
;padding-left:1ex" dir=3D"auto"><br>
<br>
In the first discussions regarding draft-scharf-tcpm-yang-tcp, I have shown=
 some examples for TCP parameters that are implemented relatively similarly=
 across major TCP stacks and that a more comprehensive TCP YANG model could=
 possibly include. </blockquote><div dir=3D"auto"><br></div><div dir=3D"aut=
o">=C2=A0 =C2=A0 Gyan&gt; Thank you</div><div dir=3D"auto"><br></div><block=
quote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc=
 solid;padding-left:1ex" dir=3D"auto">This includes for instance enabling/d=
isabling ECN, Window Scaling, Timestamps, etc. </blockquote><div dir=3D"aut=
o"><br></div><div dir=3D"auto">=C2=A0 =C2=A0 Gyan&gt; Perfect=C2=A0</div><d=
iv dir=3D"auto"><br></div><blockquote class=3D"gmail_quote" style=3D"margin=
:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex" dir=3D"auto">But e=
ven in that case different stacks differ *a lot* and I am not aware of a si=
mple way to work around that. </blockquote><div dir=3D"auto"><br></div><div=
 dir=3D"auto">=C2=A0 =C2=A0 Gyan&gt; Understood=C2=A0</div><div dir=3D"auto=
"><br></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;bo=
rder-left:1px #ccc solid;padding-left:1ex" dir=3D"auto">Details can be foun=
d in the IETF proceedings for previous TCPM meetings.</blockquote><div dir=
=3D"auto"><br></div><div dir=3D"auto">=C2=A0 =C2=A0Gyan&gt; Ok</div><blockq=
uote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc =
solid;padding-left:1ex" dir=3D"auto"><br>
<br>
If there is interest in modeling TCP beyond draft-ietf-tcpm-yang-tcp-07, th=
e discussion needs to ensure that the model roughly corresponds to running =
code. </blockquote><div dir=3D"auto"><br></div><div dir=3D"auto">=C2=A0 =C2=
=A0 Gyan&gt; Understood=C2=A0</div><blockquote class=3D"gmail_quote" style=
=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex" dir=3D"a=
uto"><br>
<br>
Unfortunately, I probably cannot attend this TCPM session because of my day=
 job, but I obviously follow the mailing list.<br>
<br>
Thanks<br>
<br>
Michael<br>
<br>
<br>
&gt; <br>
&gt; Joe<br>
&gt; <br>
&gt; &gt;<br>
&gt; &gt; Best regards<br>
&gt; &gt; Michael<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; Thanks<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; Gyan<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; ---------- Forwarded message ---------<br>
&gt; &gt;&gt; From: Mishra, Gyan S &lt;<a href=3D"mailto:gyan.s.mishra@veri=
zon.com" target=3D"_blank">gyan.s.mishra@verizon.com</a>&gt;<br>
&gt; &gt;&gt; Date: Mon, Jul 25, 2022 at 11:36 PM<br>
&gt; &gt;&gt; Subject: IETF 114 TCPM WG - NG TCPM Yang Model<br>
&gt; &gt;&gt; To: Hayabusanew &lt;<a href=3D"mailto:hayabusagsm@gmail.com" =
target=3D"_blank">hayabusagsm@gmail.com</a>&gt;<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; --<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; Gyan Mishra<br>
&gt; &gt;&gt; Network Solutions Architect<br>
&gt; &gt;&gt; Email <a href=3D"mailto:gyan.s.mishra@verizon.com" target=3D"=
_blank">gyan.s.mishra@verizon.com</a><br>
&gt; &gt;&gt; M 301 502-1347<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt; &lt;IETF-114 TCPM TCP Yang<br>
&gt; Model.pdf&gt;_______________________________________________<br>
&gt; &gt;&gt; tcpm mailing list<br>
&gt; &gt;&gt; <a href=3D"mailto:tcpm@ietf.org" target=3D"_blank">tcpm@ietf.=
org</a><br>
&gt; &gt;&gt; <a href=3D"https://www.ietf.org/mailman/listinfo/tcpm" rel=3D=
"noreferrer" target=3D"_blank">https://www.ietf.org/mailman/listinfo/tcpm</=
a><br>
&gt; &gt;<br>
&gt; &gt; _______________________________________________<br>
&gt; &gt; tcpm mailing list<br>
&gt; &gt; <a href=3D"mailto:tcpm@ietf.org" target=3D"_blank">tcpm@ietf.org<=
/a><br>
&gt; &gt; <a href=3D"https://www.ietf.org/mailman/listinfo/tcpm" rel=3D"nor=
eferrer" target=3D"_blank">https://www.ietf.org/mailman/listinfo/tcpm</a><b=
r>
&gt; <br>
&gt; _______________________________________________<br>
&gt; tcpm mailing list<br>
&gt; <a href=3D"mailto:tcpm@ietf.org" target=3D"_blank">tcpm@ietf.org</a><b=
r>
&gt; <a href=3D"https://www.ietf.org/mailman/listinfo/tcpm" rel=3D"noreferr=
er" target=3D"_blank">https://www.ietf.org/mailman/listinfo/tcpm</a><br>
</blockquote></div></div>-- <br><div dir=3D"ltr" class=3D"gmail_signature" =
data-smartmail=3D"gmail_signature"><div dir=3D"ltr"><div dir=3D"ltr"><div d=
ir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"l=
tr"><div><p style=3D"color:rgb(34,34,34)"><a href=3D"http://www.verizon.com=
/" style=3D"color:rgb(17,85,204);padding-bottom:1em;display:inline-block" t=
arget=3D"_blank"><img src=3D"http://ss7.vzw.com/is/image/VerizonWireless/vz=
-logo-email" width=3D"81" height=3D"18" style=3D"height:18px;width:81px"></=
a><br></p><p style=3D"font-size:1em;margin:0px;font-family:&quot;Verizon NH=
G DS&quot;,Arial,sans-serif;line-height:13px;color:black"><b>Gyan Mishra</b=
></p><p style=3D"color:rgb(34,34,34);margin:0px;line-height:13px"><font fac=
e=3D"georgia, serif" style=3D"color:black;font-size:1em"><i>Network Solutio=
ns A</i></font><font color=3D"#000000" face=3D"georgia, serif"><i>rchitect=
=C2=A0</i></font></p><p style=3D"color:rgb(34,34,34);margin:0px;line-height=
:13px"><i style=3D"color:rgb(0,0,0);font-size:13px"><font face=3D"georgia, =
serif">Email <a href=3D"mailto:gyan.s.mishra@verizon.com" target=3D"_blank"=
>gyan.s.mishra@verizon.com</a></font></i><font color=3D"#000000" face=3D"ge=
orgia, serif"><i><br></i></font></p><p style=3D"font-size:1em;margin:0px;li=
ne-height:13px;color:black"><i><font face=3D"georgia, serif">M 301 502-1347=
<br><br></font></i></p></div><div><br></div></div></div></div></div></div><=
/div></div></div>

--000000000000609a4d05e4f32e36--

