[Netconf] server-model #43: keep-alive, linger, reconnect interval defaults OK?

Kent Watsen <kwatsen@juniper.net> Sun, 29 March 2015 20:00 UTC

Return-Path: <kwatsen@juniper.net>
X-Original-To: netconf@ietfa.amsl.com
Delivered-To: netconf@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 63F591A8862 for <netconf@ietfa.amsl.com>; Sun, 29 Mar 2015 13:00:39 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.902
X-Spam-Level:
X-Spam-Status: No, score=-1.902 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham
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 p_TEMSp1aHIS for <netconf@ietfa.amsl.com>; Sun, 29 Mar 2015 13:00:37 -0700 (PDT)
Received: from na01-bn1-obe.outbound.protection.outlook.com (mail-bn1bon0744.outbound.protection.outlook.com [IPv6:2a01:111:f400:fc10::1:744]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 238411A885C for <netconf@ietf.org>; Sun, 29 Mar 2015 13:00:37 -0700 (PDT)
Received: from CO1PR05MB458.namprd05.prod.outlook.com (10.141.72.140) by CO1PR05MB457.namprd05.prod.outlook.com (10.141.72.141) with Microsoft SMTP Server (TLS) id 15.1.125.19; Sun, 29 Mar 2015 20:00:16 +0000
Received: from CO1PR05MB458.namprd05.prod.outlook.com ([169.254.10.86]) by CO1PR05MB458.namprd05.prod.outlook.com ([169.254.10.86]) with mapi id 15.01.0125.002; Sun, 29 Mar 2015 20:00:16 +0000
From: Kent Watsen <kwatsen@juniper.net>
To: "netconf@ietf.org" <netconf@ietf.org>
Thread-Topic: server-model #43: keep-alive, linger, reconnect interval defaults OK?
Thread-Index: AQHQalr5OEpeLICj8UOqu96zVYFF7Q==
Date: Sun, 29 Mar 2015 20:00:15 +0000
Message-ID: <D13DC3FC.9C3C6%kwatsen@juniper.net>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/14.4.4.140807
x-ms-exchange-messagesentrepresentingtype: 1
x-originating-ip: [66.129.239.12]
authentication-results: ietf.org; dkim=none (message not signed) header.d=none;
x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CO1PR05MB457;
x-forefront-antispam-report: BMV:1; SFV:NSPM; SFS:(10019020)(6009001)(164054003)(92566002)(450100001)(2900100001)(102836002)(15975445007)(50986999)(54356999)(66066001)(122556002)(99286002)(19580395003)(2501003)(62966003)(77156002)(229853001)(2351001)(110136001)(107886001)(46102003)(40100003)(2656002)(106116001)(87936001)(36756003); DIR:OUT; SFP:1102; SCL:1; SRVR:CO1PR05MB457; H:CO1PR05MB458.namprd05.prod.outlook.com; FPR:; SPF:None; MLV:sfv; LANG:en;
x-microsoft-antispam-prvs: <CO1PR05MB4575AC36161E0BA86A618B7A5F60@CO1PR05MB457.namprd05.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:;
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(601004)(5002010)(5005006); SRVR:CO1PR05MB457; BCL:0; PCL:0; RULEID:; SRVR:CO1PR05MB457;
x-forefront-prvs: 0530FCB552
Content-Type: text/plain; charset="Windows-1252"
Content-ID: <1A0068D2CE76454690B116C2C9966027@namprd05.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Mar 2015 20:00:15.5332 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR05MB457
Archived-At: <http://mailarchive.ietf.org/arch/msg/netconf/_IRevXWyPy8XXdljji_EQWCOxYU>
Subject: [Netconf] server-model #43: keep-alive, linger, reconnect interval defaults OK?
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Network Configuration WG mailing list <netconf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netconf>, <mailto:netconf-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/netconf/>
List-Post: <mailto:netconf@ietf.org>
List-Help: <mailto:netconf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netconf>, <mailto:netconf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 29 Mar 2015 20:00:39 -0000

This issue was discussed during and after the Dallas meeting with the
following status: 

[1]  Š/connection-type/persistent/keep-alives/interval-secs:
This issue is still open - please reply on it if so inclined.  Some felt
that a keep-alive every 15 seconds was too often, and suggested that a
2­hour value would be better.   Searching on this for awhile, it seems
that many use 300 seconds and many others use 15 seconds,  Note, this is a
keep-alive message being sent every 15 to 300 seconds, with a default
count-max of '3', results in a new connection after 45 to 900 seconds -
that's 3/4 of a minute to 15 minutes to proactively bring up a failed
session.  Some of the issue surrounds how the TCP-level  timeout is set.
The introduction in RFC5482 says:

   In the absence of an application-specified user timeout, the TCP
   specification [RFC0793] defines a default user timeout of 5 minutes.
   The Host Requirements RFC [RFC1122] refines this definition by
   introducing two thresholds, R1 and R2 (R2 > R1), that control the
   number of retransmission attempts for a single segment.  It suggests
   that TCP should notify applications when R1 is reached for a segment,
   and close the connection when R2 is reached.  [RFC1122] also defines
   the recommended values for R1 (3 retransmissions) and R2 (100
   seconds), noting that R2 for SYN segments should be at least 3
   minutes.  Instead of a single user timeout, some TCP implementations
   offer finer-grained policies.  For example, Solaris supports
   different timeouts depending on whether a TCP connection is in the
   SYN-SENT, SYN-RECEIVED, or ESTABLISHED state [SOLARIS].

I wonder if we should *add* configuration know for a tcp timeout as well?


[2] Š/connection-type/periodic/linger-secs:
This leaf is to be removed as it is best to let the NETCONF/RESTCONF
client decide when to close the session ­ the server should leave the
session open, up until the /session-options/idle-timeout limit.


[3] Š/reconnect-strategy/interval-secs:
This leaf is to be removed.  It doesn't have enough value to leave exposed
as a configurable know.


Due to [1] being still open, this issue only moves to the OPEN state - not
the VERIFY state.

Reference:  https://github.com/netconf-wg/server-model/issues/43

Thanks,
Kent