[Coin] SDN, Network Programming, and Semantic Routing

Adrian Farrel <adrian@olddog.co.uk> Thu, 03 February 2022 23:00 UTC

Return-Path: <adrian@olddog.co.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 0514B3A0971 for <coin@ietfa.amsl.com>; Thu, 3 Feb 2022 15:00:31 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.895
X-Spam-Level:
X-Spam-Status: No, score=-1.895 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
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 z5kIxLOA4QLM for <coin@ietfa.amsl.com>; Thu, 3 Feb 2022 15:00:26 -0800 (PST)
Received: from mta6.iomartmail.com (mta6.iomartmail.com [62.128.193.156]) (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 6F18A3A097B for <coin@irtf.org>; Thu, 3 Feb 2022 15:00:25 -0800 (PST)
Received: from vs4.iomartmail.com (vs4.iomartmail.com [10.12.10.122]) by mta6.iomartmail.com (8.14.7/8.14.7) with ESMTP id 213N0AWR014881; Thu, 3 Feb 2022 23:00:10 GMT
Received: from vs4.iomartmail.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 76FD54604C; Thu, 3 Feb 2022 23:00:10 +0000 (GMT)
Received: from vs4.iomartmail.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 6AB744604B; Thu, 3 Feb 2022 23:00:10 +0000 (GMT)
Received: from asmtp2.iomartmail.com (unknown [10.12.10.249]) by vs4.iomartmail.com (Postfix) with ESMTPS; Thu, 3 Feb 2022 23:00:10 +0000 (GMT)
Received: from LAPTOPK7AS653V ([85.255.233.149]) (authenticated bits=0) by asmtp2.iomartmail.com (8.14.7/8.14.7) with ESMTP id 213N08nt026378 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Thu, 3 Feb 2022 23:00:09 GMT
Reply-To: <adrian@olddog.co.uk>
From: "Adrian Farrel" <adrian@olddog.co.uk>
To: <coin@irtf.org>
Cc: <mohamed.boucadair@orange.com>, "'Dirk Trossen'" <dirk.trossen@huawei.com>, "'George Xylomenos'" <xgeorge@aueb.gr>
Date: Thu, 3 Feb 2022 23:00:09 -0000
Organization: Old Dog Consulting
Message-ID: <0be201d81951$cba679c0$62f36d40$@olddog.co.uk>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AdgYUYhTT//bO2yxTqO8yNrw87lw+A==
Content-Language: en-gb
X-Originating-IP: 85.255.233.149
X-Thinkmail-Auth: adrian@olddog.co.uk
X-TM-AS-GCONF: 00
X-TM-AS-Product-Ver: IMSVA-9.1.0.2090-8.6.0.1018-26694.003
X-TM-AS-Result: No--0.869-10.0-31-10
X-imss-scan-details: No--0.869-10.0-31-10
X-TMASE-Version: IMSVA-9.1.0.2090-8.6.1018-26694.003
X-TMASE-Result: 10--0.869400-10.000000
X-TMASE-MatchedRID: 6ZqU4+4mT2Uaf3p8Lo2levrNPkGWAHDfgfgadAMRCRfLkl8e9W70izdp Sh4SBKJLWmsJv3fWRTArf+8f8+PPN/ZXuV5lLvbAalRqQPhHMT6TIp+F7SfdPT+B/tp8itBTp/z LCP4hxoP6Ay573CTimMdYwwDf6pkO1O2xrsUcPqAReM8i8p3vgCkDYTG6KmZaXiAhq1jpYTXPDm paQyREJd5NT3vt8A5Neeg0vWRAG/YuNk4ciCArzTMQaNEu4I25ARmFJs2zrSan7aqfvIkpFDl32 fTh8s1mE2+BZU8pCt6j5CjNmi4NCud2nx61nNoTNkfnRfDWssLLvXkIxHaY2XxDm+Wib1zUKHuT ygr/DT7A8cK2Z0LUn/JNgELJuaOsD4AkNTcf6qC84C/3iwAgxBmyTBaqiJvca73+XlYDLuwRabZ 6+ZfTIoTXEywjhO2Il804Mx+B8hX2opcCeTHg9JjhZxhC9CTjY/8hgefJn7BaSqvd2CpZuDefXB njLkI9x+2kYRtrvrsI4fmoxFRZAe7aGm3+mRuIEclbAMYYY6zkRE2h9ncEXG3D6f6IpbLIBEaDZ BkaAV86ntfeMqRL8apwWiK673RffWolJp7j0jW5R/Gy/ffHbxDDnfn4zhtOvStYzicikmsgYEYK evuTArGfBHotQEtYDUoxougKGyKpwEhc1l2Y8xhTGJQ1M8K9xBQR7LZ2n1MEywlhDtcYBqDCKGs oywiR4vM1YF6AJbZcLc3sLtjOt9CpCFLDTHZU3QfwsVk0UbtuRXh7bFKB7oquXqFHTt+ehWafRr hTQKlyr/nUPyP02JGKK+JvFmuHS4W/MRhJ1X4=
X-TMASE-SNAP-Result: 1.821001.0001-0-1-22:0,33:0,34:0-0
Archived-At: <https://mailarchive.ietf.org/arch/msg/coin/WU3WbWt0bedJZszSGHwUMgYFMzM>
Subject: [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: Thu, 03 Feb 2022 23:00:31 -0000

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