Re: [Pce] PCEP as an SDN controller protocol?

Robert Varga <nite@hq.sk> Mon, 07 August 2017 23:13 UTC

Return-Path: <nite@hq.sk>
X-Original-To: pce@ietfa.amsl.com
Delivered-To: pce@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A5A15129D9D; Mon, 7 Aug 2017 16:13:43 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=hq.sk
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 trTjMDQDPSfh; Mon, 7 Aug 2017 16:13:40 -0700 (PDT)
Received: from mail.hq.sk (hq.sk [81.89.59.181]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 538A61243F6; Mon, 7 Aug 2017 16:13:40 -0700 (PDT)
Received: from nitebug.localdomain (chello085216197060.chello.sk [85.216.197.60]) by mail.hq.sk (Postfix) with ESMTPSA id 817D02487F2; Tue, 8 Aug 2017 01:13:37 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=hq.sk; s=mail; t=1502147617; bh=R8/1YthKHkKTC1+l6+Rm7vReqlW+BW3McK2ixe0pyMI=; h=Subject:To:Cc:References:From:Date:In-Reply-To; b=M9d3ioiqKqedURFhr4czVxPqoVHqiaGCqoDjRzVR4BUVEXf8jYRl9Sdwdk98pczeu bCayh2zgIk4eP3volpE/bNd2Dq2/Z6KjYqfyfrd4ptb94qDpVckg4+y1s7vHVzAkK0 Jr3vCnj2Y8TZE5Adl08a5V/ieaT8d/dRsqMhoESw=
To: Dhruv Dhody <dhruv.dhody@huawei.com>, "olivier.dugeon@orange.com" <olivier.dugeon@orange.com>, Jonathan Hardwick <Jonathan.Hardwick@metaswitch.com>, "pce@ietf.org" <pce@ietf.org>
Cc: "pce-chairs@ietf.org" <pce-chairs@ietf.org>
References: <BY2PR0201MB1910DD2A0B6FEB576C3D5E9484A70@BY2PR0201MB1910.namprd02.prod.outlook.com> <578_1501179107_597A2CE3_578_20_1_3370ad53-9c64-8048-e75b-d9e825f34a30@orange.com> <23CE718903A838468A8B325B80962F9B8CB993D0@blreml501-mbb>
From: Robert Varga <nite@hq.sk>
Message-ID: <cd64dd3c-96cb-9916-f236-25cdc2267816@hq.sk>
Date: Tue, 08 Aug 2017 01:13:37 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1
MIME-Version: 1.0
In-Reply-To: <23CE718903A838468A8B325B80962F9B8CB993D0@blreml501-mbb>
Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="68Nuc6OxC3lXChG57C9d2iStaHnPmcNpe"
Archived-At: <https://mailarchive.ietf.org/arch/msg/pce/Ig8P-yalcZH_snz6KZNFhLI3zf8>
Subject: Re: [Pce] PCEP as an SDN controller protocol?
X-BeenThere: pce@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Path Computation Element <pce.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/pce>, <mailto:pce-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/pce/>
List-Post: <mailto:pce@ietf.org>
List-Help: <mailto:pce-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/pce>, <mailto:pce-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 07 Aug 2017 23:13:43 -0000

On 07/08/17 13:10, Dhruv Dhody wrote:
> Hi Oliver,

Hello Dhruv,

> Sorry for a late response and thanks for engaging on this topic. With
> this response I would try to clear up some misconceptions, some context
> and counter-viewpoint.  Please see inline…
> 
>  
> 
> *From:*Pce [mailto:pce-bounces@ietf.org] *On Behalf Of
> *olivier.dugeon@orange.com
> *Sent:* 27 July 2017 23:42
> *To:* Jonathan Hardwick <Jonathan.Hardwick@metaswitch.com>; pce@ietf.org
> *Cc:* pce-chairs@ietf.org
> *Subject:* Re: [Pce] PCEP as an SDN controller protocol?
> 
>  
> 
> Hi Jon,
> 
> Thanks to open this thread. As many of you have already said, PCEP is
> already an SDN controller protocol since the work on stateful mode. But,
> IMHO, recent drafts doesn't go into the right direction. Let me explain:
> 
> 1/ On PCE-LS. Of course there is already plenty of solution to learn the
> topology e.g. listen to IGP protocol, BGP-LS ... But, dont forget that
> the primary goal of PCE is to compute a path on a topology. This mean
> that the PCE need a graph which represent the network topology. This
> graph is extract from the TED, later fulfil by the topology learning
> mechanism. Why PCE-LS and other equivalent mechanism that collect
> topology information on a node by node basis ? Simply because you are
> unable to guarantee that the graph you extract from what you learn is
> accurate. Indeed, a node known its interfaces through what the
> administrator configure in this node. But, it doesn't know exactly to
> which neighbour it is connected while there is a protocol between node.
> In IP network, it is the role of the IGP. if there is an error in the
> node configuration, the IGP adjacency doesn't fire up and thus, IGP or
> BGP-LS will not report this link betwenn the two nodes. The graph is not
> complete, but not wrong. So when you learn the topology from the IGP you
> could guarantee that the link between two nodes corresponds effectively
> to what is really configured and physically connected. If there is no
> protocol between the nodes, you can't guarantee that what the node
> announce through PCEP-LS is accurate. E.g. Node A report Link A-B and
> node B report Link B-A instead of Link B-C and Link B-C instead of Link
> B-A due to a wrong manual configuration. You obtain a wrong topology and
> thus a wrong graph as you invert two links between two nodes. An you
> have no way to check it. So, in any case, and it is true for Optical /
> Transport network, you MUST run an IGP in your network to be sure that
> the topology is accurate and so to guarantee that the PCE work on a
> correct graph. A PCE working on a bad topology is painful. So, because
> you must run an IGP in your network, fulfil the PCE TED by listen the
> IGP or BGP-LS is the best solution. IMHO, PCE WG must not work on
> alternative solution to learn topology.
> 
> [[Dhruv Dhody]] When PCEP-LS is deployed in SDN mode (node by node
> basis), the node could run any protocol on the link to make
> verification. Adrian also mentioned in his reply, that device could be
> running, some form of discovery/verification protocol such as LMP, LLDP
> or even IGP on the per link basis. Each node is free to run any local
> mechanism to make sure that the link information is correct. The PCEP-LS
> extension is written in such a way that it could be used in any mode and
> independent of what the device choose to do. The PCEP-LS also support
> “remote data” (data a node would have learned via other protocols as IGP
> - remote nodes and links).
> 
>  
> 
> There are *already* multiple ways to learn TED at PCE – IGP-TE, BGP-LS,
> NetConf/ RestConf – Yang. The architecture allows that. The various
> implementation of SDN also already allow multiple SBI to achieve the
> same result, to allow the SDN solution to be deployed in various
> scenarios and to meet different requirements of the network. The PCEP-LS
> claims that there are specific deployments that would like to use
> PCEP-LS as the mechanism of choice, as the other SBI doesn’t work for
> them.  It does not claim that other mechanism should not be used ever,
> it is just another tool in the tool-set and IMHO we should allow it, if
> does no break/harm the network.

Yes. My question is here is whether the same can be achieved by
tunnelling the same data over BGP-LS.

What advantages does PCEP-LS bring to counter-balance the duplication of
protocol-level work?

Understanding that balance, does the WG feel it should focus on that work?

> 3/ On PCECC-SR. This time, it could make sense. But, again, it is not
> the good way to proceed. In fact, when you use PCEP as control protocol,
> the node doesn't store the configuration like it does with NetConf in
> the standard-config, but it is store in the ephemeral config. This means
> that when the PCEP session break or the node reload, all the
> configuration is loose. If you need to wait PCE configuration to finish
> to boot e.g. advertise Segment Routing capabilities need SRGB, prefix
> SID ... it is not a safe solution. For that kind of information NetConf
> is superior to PCEP. In addition SPRING WG is working on yang model for
> NetConf for this purpose. Not on PCEP extension. One more time, IMHO,
> PCE WG must not spent energy in this direction.
> 
> [[Dhruv Dhody]] PCEP is not (and does not claim to be a) configuration
> protocol. Just like PCE-initiated LSP, you could set local policy on
> node to retain information when the session goes down. Since this is not
> configuration, that information would not survive the node restarts.
> This is true for any PCE interactions, and holds true for PCECC-SR as
> well. But the key is that, PCECC-SR is not trying to be a replacement of
> SR-Yang, it is a way for a PCE-based controller to instruct the SR
> forwarding action each node needs to make via PCEP, alongside the label
> stack instructions to the head node that needs to be attached to packets
> as they enter the network.

I agree. From the protocol perspective, though, stateful PCEP with state
synchronization optimizations makes it possible to retain state across
reboots and skip state resynchronization.

On the other hand, I think NETCONF can make equivalent functionality
available via a rather simple extension, especially with (finally)
revised notifications.

I agree with Olivier that for state transfer design NETCONF/YANG is much
friendlier to extensions than PCEP. It makes much easier to reason about
data structure and interactions, which I think is extremely important
for other WGs.

Regards,
Robert