[Netconf] periodic connections, heartbeats, reconnection, timeout was Re: WG Last Call Comments ondraft-ietf-netconf-reverse-ssh-03.txt

t.petch <ietfc@btconnect.com> Fri, 11 April 2014 09:07 UTC

Return-Path: <ietfc@btconnect.com>
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 A59861A044D for <netconf@ietfa.amsl.com>; Fri, 11 Apr 2014 02:07:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.702
X-Spam-Level:
X-Spam-Status: No, score=-0.702 tagged_above=-999 required=5 tests=[BAYES_20=-0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_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 DE5P3XyDieFQ for <netconf@ietfa.amsl.com>; Fri, 11 Apr 2014 02:07:47 -0700 (PDT)
Received: from emea01-am1-obe.outbound.protection.outlook.com (mail-am1lp0016.outbound.protection.outlook.com [213.199.154.16]) by ietfa.amsl.com (Postfix) with ESMTP id B3A161A0196 for <netconf@ietf.org>; Fri, 11 Apr 2014 02:07:46 -0700 (PDT)
Received: from DB3PRD0210HT003.eurprd02.prod.outlook.com (157.56.253.69) by DBXPR07MB064.eurprd07.prod.outlook.com (10.242.147.24) with Microsoft SMTP Server (TLS) id 15.0.918.8; Fri, 11 Apr 2014 09:07:43 +0000
Message-ID: <008701cf5565$408130a0$4001a8c0@gateway.2wire.net>
From: "t.petch" <ietfc@btconnect.com>
To: Kent Watsen <kwatsen@juniper.net>, "Bert Wijnen (IETF)" <bertietf@bwijnen.net>
References: <201403251517.LAA15291@adminfs.snmp.com> <CF58ED17.65F0C%kwatsen@juniper.net> <533D47CF.30402@bwijnen.net> <01f401cf5342$4d48d740$4001a8c0@gateway.2wire.net> <CF69971C.685E2%kwatsen@juniper.net> <005101cf54b0$16a93940$4001a8c0@gateway.2wire.net> <CF6C7090.68D97%kwatsen@juniper.net>
Date: Fri, 11 Apr 2014 10:00:27 +0100
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
X-Originating-IP: [157.56.253.69]
X-ClientProxiedBy: DB3PR07CA001.eurprd07.prod.outlook.com (10.242.134.41) To DBXPR07MB064.eurprd07.prod.outlook.com (10.242.147.24)
X-Forefront-PRVS: 0178184651
X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009001)(6009001)(428001)(199002)(189002)(377454003)(13464003)(164054003)(19580405001)(80976001)(74662001)(31966008)(81816999)(19580395003)(50226001)(83322001)(76176999)(81686999)(50986999)(74502001)(92566001)(33646001)(79102001)(44716002)(89996001)(62236002)(50466002)(88136002)(85852003)(83072002)(23756003)(62966002)(61296002)(77982001)(66066001)(87286001)(4396001)(81342001)(20776003)(47776003)(87976001)(81542001)(99396002)(76482001)(44736004)(77156001)(84392001)(93916002)(46102001)(42186004)(1941001)(80022001)(86362001)(92726001)(14496001)(74416001)(7726001); DIR:OUT; SFP:1101; SCL:1; SRVR:DBXPR07MB064; H:DB3PRD0210HT003.eurprd02.prod.outlook.com; FPR:ECBBC2E5.A3FA81BA.7CD39D77.8AFAF141.2043B; PTR:InfoNoRecords; A:0; MX:1; LANG:en;
Received-SPF: None (: btconnect.com does not designate permitted sender hosts)
X-OriginatorOrg: btconnect.com
Archived-At: http://mailarchive.ietf.org/arch/msg/netconf/b3YTCV1qjDPS6BYtSlp7kcBhzk8
Cc: netconf@ietf.org
Subject: [Netconf] periodic connections, heartbeats, reconnection, timeout was Re: WG Last Call Comments ondraft-ietf-netconf-reverse-ssh-03.txt
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: Fri, 11 Apr 2014 09:07:51 -0000

Snipping out the issues of terminology and security

----- Original Message -----
From: "Kent Watsen" <kwatsen@juniper.net>
To: "t.petch" <ietfc@btconnect.com>; "Bert Wijnen (IETF)"
<bertietf@bwijnen.net>
Cc: <netconf@ietf.org>
Sent: Thursday, April 10, 2014 10:55 PM

>The other grey area is that netconf-server introduces periodic
>connections, heartbeats, reconnection, timeouts.  All good transport-ey
>stuff which impacts both SSH and TLS transports and, at least for
>heartbeats and probably for more than that, needs protocol specific
>details.  I think reverse-ssh and 5539-bis incomplete if netconf-server
>includes these features and the other two do not at least reference
>them; which makes netconf-server a Normative Reference.

All but heartbeats don't require interoperability.   It was mentioned in
London that Heartbeats were under-specified.  For SSH, heartbeats are
done
within the existing SSH protocol, so there is nothing for an NMS to do
special in order to reply to heartbeats from a device, but I'm perfectly
OK with calling it out explicitly in the reverse-ssh draft.  For TLS,
heartbeats depend on rfc6520 (e.g. run a OpenSSL version 1.0.1 or
greater*), which *needs* to be called out in 5539-bis.  Once how
heartbeating is needed and is implemented is called out in both drafts,
then I believe NMS/device interoperability can be achieve, without a
Normative reference to netconf-server-model.   For instance, the NMS
doesn't need to know if the device's connection is periodic or a
reconnection, or if it was disconnected due to a timeout - all that
state
is solely on the device side.  Thus I still think that the
netconf-server-model is optional to support and hence should be
Informational.

* or the very very latest if you want to avoid the recent "heartbleed"
bug

<tp>

ssh-server introduces introduces periodic connections, heartbeats,
reconnection and timeouts, all good functions to have in a transport
protocol.  There is at least some impact on 5539-bis, perhaps on
reverse-ssh, but the starting point that I would like clarified is a
question of scope.

Reading the details, I struggle to see why these functions should be
tied to
 - SSH
 - TLS
 - listen
 - call home
 - NETCONF client
 - NETCONF server
That is, why shouldn't any NETCONF engine send a heartbeat, timeout if
no response in a suitable period, drop a connection and reconnect when
it wants to?  These functions seem useful in any setting, rather than
specific to a particular scenario.

So, as and when this I-D is put up for adoption by the WG, I would like
that to be clarified before the I-D is adopted, not after.  What is the
scope, what is the applicability of these new transport functions?  Not
what the I-D currently says, I can see that, but where do we want to end
up?

This then has consequences.  Do we, for example, need a different
message for 'I am closing in the normal fashion' v 'I am closing for a
timeout' (tricky -  long established protocols are still wrestling with
this one) v 'I am closing pro tem but expect to return when I have
something to do'?

(And may be the answer is that we do not want to progress all of these
functions at this time).

Tom Petch

Thanks,
Kent