Re: [Coin] SDN, Network Programming, and Semantic Routing

Jon Crowcroft <Jon.Crowcroft@cl.cam.ac.uk> Fri, 04 February 2022 08:37 UTC

Return-Path: <Jon.Crowcroft@cl.cam.ac.uk>
X-Original-To: coin@ietfa.amsl.com
Delivered-To: coin@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5B01E3A0FE6 for <coin@ietfa.amsl.com>; Fri, 4 Feb 2022 00:37:55 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level:
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, SPF_HELO_NONE=0.001, 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=cl.cam.ac.uk
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 kttJSF7yA-y1 for <coin@ietfa.amsl.com>; Fri, 4 Feb 2022 00:37:50 -0800 (PST)
Received: from mta1.cl.cam.ac.uk (mta1.cl.cam.ac.uk [IPv6:2a05:b400:110::25:1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 745663A0FD3 for <coin@irtf.org>; Fri, 4 Feb 2022 00:37:50 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=cl.cam.ac.uk; s=mta3; h=Message-Id:Date:Content-Transfer-Encoding: Content-ID:Content-Type:MIME-Version:References:In-reply-to:Subject:cc:To: From:Sender:Reply-To:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=nECZiCX1KCfqHe3yqTst56nLMAZXxrSE5JEXSf/vcK0=; t=1643963870; x=1644827870; b=I2nO5DpWIeyaMogLV2zXox3i5opiGIwWThqeb7IGVyHMHesH4pk+7kob39c95ZZGtnvovdcbJ7z Y1r3ITfBplXFVysbGXKnbrsKsUvKP+TYLSq/AL6sp3JKDCsXisa8eo3WdOjkp+0Dr2PRcTiYXOpsB gUFkrwEsLNs0gCHZQ/hFd5FV8pvvgkHld7fTI0FffeMDGIwf02CnPIvHHw0CMtzZ1b3xhr2N+I/t0 O8/RYv5d2mLd5l6S98MPWwgDxmzdGTWKukmv8+81ErGTTQcjdSSKlKxcYJmkiczPpgR+24bPj25Ie lpgmHMT0F50xRA4nzPuh0OJsssv9xyVgSseA==;
Received: from slogin-new.cl.cam.ac.uk ([2a05:b400:110::22:98] helo=svr-ssh-0.cl.cam.ac.uk) (dnseec=no) by mta1.cl.cam.ac.uk:587 [2a05:b400:110::25:1] with esmtp (Exim 4.94) id 1nFu6A-0006jm-T8 (envelope-from <Jon.Crowcroft@cl.cam.ac.uk>); Fri, 04 Feb 2022 08:37:42 +0000
From: Jon Crowcroft <Jon.Crowcroft@cl.cam.ac.uk>
To: adrian@olddog.co.uk
cc: coin@irtf.org, 'Dirk Trossen' <dirk.trossen@huawei.com>, mohamed.boucadair@orange.com, 'George Xylomenos' <xgeorge@aueb.gr>, Jon Crowcroft <Jon.Crowcroft@cl.cam.ac.uk>
In-reply-to: <0be201d81951$cba679c0$62f36d40$@olddog.co.uk>
References: <0be201d81951$cba679c0$62f36d40$@olddog.co.uk>
Comments: In-reply-to "Adrian Farrel" <adrian@olddog.co.uk> message dated "Thu, 03 Feb 2022 23:00:09 +0000."
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-ID: <1005762.1643963862.1@svr-ssh-0.cl.cam.ac.uk>
Content-Transfer-Encoding: quoted-printable
Date: Fri, 04 Feb 2022 08:37:42 +0000
Message-Id: <E1nFu6A-0006jm-T8@mta1.cl.cam.ac.uk>
Archived-At: <https://mailarchive.ietf.org/arch/msg/coin/tJh7zXUjPsE8QRRT0oI8j0DoQcs>
Subject: Re: [Coin] SDN, Network Programming, and Semantic Routing
X-BeenThere: coin@irtf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "COIN: Computing in the Network" <coin.irtf.org>
List-Unsubscribe: <https://www.irtf.org/mailman/options/coin>, <mailto:coin-request@irtf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/coin/>
List-Post: <mailto:coin@irtf.org>
List-Help: <mailto:coin-request@irtf.org?subject=help>
List-Subscribe: <https://www.irtf.org/mailman/listinfo/coin>, <mailto:coin-request@irtf.org?subject=subscribe>
X-List-Received-Date: Fri, 04 Feb 2022 08:37:56 -0000

for me that the phrase semantic routing includes the word "routing" implies one
(and not forwarding) has to consider network wide algorithms  - the sort of thing 
predicate routing and meta-routing do (see prev message and this 
https://www.cl.cam.ac.uk/research/srg/netos/papers/2002-predicate-routing.pdf
and all the work on replicared/coordinated SDN controllers and
consensur/converegence/replication etc

most the questions below are "just" the forwarding treatments

how these are installed on a node is just a simple protocol/api
though how the node is programmed to carry out those treatments efficiently
(s/w and h/w requirements, as you've discussed) are obviously a moving target and of interest
here for sure... next gen of SDN & whatever is after P4 are obviously things to work on 

how they are created, verified, made sense of in a network-wide sense 
(whatever scope that network has) is where I think the harder research challenges lie...
but perhaps are the least coin-like aspect - it would be cool to survey what sorts of
policy engines are out there besides the very cool cloudflare stuff as input to that (if
anyone knows of such a survey, pointers most welcome!!)



> Hi yet again,
> 
> With this email we get on to some of the serious topics for fitting 
> Semantic
> Routing into the context of COIN.
> 
> As we know, a significant part of what COIN is looking at is programmable
> networking and programmable network devices. In this context, the concept 
> of
> programmability is pretty broad ranging from what we have known for years
> (installation of forwarding entries through management system commands -
> CLI, TL1, SNMP, Netconf/YANG), through the more recent development of new
> languages for installing network actions (OpenFlow, P4, BGP policies).
> 
> There are several critical questions to be asked:
> 
> - Is the programming installing forwarding actions based only on
>   "traditional" lookups (typically the 5-tuple, and other flow
>    classification fields), or is it telling the network node to look at
>    other places in the packet?
> 
> - Is the programming coordinated with packet classifiers and
>   markers so that additional information is placed in the packets
>   and used by the network nodes?
> 
> - Is the use of programming the only solution, or is SDN just *an*
>    approach that sits beside or can be integrated with other
>    techniques including "traditional" routing systems?
> 
> - What are the risks to the forwarding system arising from an
>   SDN controller-based system in terms of scalability, flexibility,
>   responsiveness, stability, and vulnerability to failures and attacks?
> 
> - What is the potential for using programming to install algorithms
>   on network devices such that they perform selective forwarding
>   actions dependent on semantic routing information? What are
>   the risks of inconsistent processing on different nodes, and
>   how does the OAM work in such situations?
> 
> This last point will be the subject of a separate thread as it moves 
> beyond
> "network programming" and into "compute in the network".
> 
> It is worth repeating that in all of this discussion, the scope of 
> semantic
> routing remains at the IP-forwarding level. That is, programming functions
> and features above and beyond those used for next-hop routing at the 
> packet
> forwarding layer is out of scope. That is not to say it is not interesting
> and valuable in many scenarios, just that it is not what is handled by the
> forwarding engines.
> 
> In order to start to capture where our thinking is at, and so provide a
> basis for more in-depth discussions, we have posted
> https://datatracker.ietf.org/doc/draft-boucadair-irtf-sdn-and-semantic-routi
> ng/ This is very much "work in progress" as we are still collecting our
> ideas and have a way to go. The references are heavily oriented towards
> existing engineering solutions, and we have some work to do to also 
> include
> the academic and research references. We would appreciate being told where
> we are wrong by experts in SDN and network programming. We would also
> appreciate ideas about how SDN controllers can keep an entire network "in
> synch" so that they are sure that there is consistent forwarding and loops
> and data sinks are avoided.
> 
> Cheers,
> Adrian
> 
> --
> Coin mailing list
> Coin@irtf.org
> https://www.irtf.org/mailman/listinfo/coin
>