Re: [Coin] Semantic Routing : Drawing the Lines

Marie-Jose Montpetit <marie@mjmontpetit.com> Tue, 01 March 2022 18:28 UTC

Return-Path: <marie@mjmontpetit.com>
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 A74873A0958 for <coin@ietfa.amsl.com>; Tue, 1 Mar 2022 10:28:41 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.904
X-Spam-Level:
X-Spam-Status: No, score=-1.904 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01, UNPARSEABLE_RELAY=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=mjmontpetit-com.20210112.gappssmtp.com
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 OUvHVVAmXAEa for <coin@ietfa.amsl.com>; Tue, 1 Mar 2022 10:28:36 -0800 (PST)
Received: from mail-lf1-x133.google.com (mail-lf1-x133.google.com [IPv6:2a00:1450:4864:20::133]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3C6463A083C for <coin@irtf.org>; Tue, 1 Mar 2022 10:28:36 -0800 (PST)
Received: by mail-lf1-x133.google.com with SMTP id u20so28376471lff.2 for <coin@irtf.org>; Tue, 01 Mar 2022 10:28:36 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mjmontpetit-com.20210112.gappssmtp.com; s=20210112; h=from:in-reply-to:references:mime-version:date:message-id:subject:to :cc; bh=xb3SyLlt+9lEMXiFpmUGNmsu2sTypEpOeAoxtdW+CUc=; b=CYO0uUarztdUa9maYYCf5rmg5Evhc6jJ8WlRMOob16t8etOZS6a/YeHUrNM1lt089R 1Y7LwFkXfIAab2t3oQDIi1AR8m1yFCWj6FIYPgU6KUsTn/DFvnlRc1NpH9wBNkAwm+ee Dem1HTzaMNzRGrHxRTaVVw9EZ/UzU6l0mEscfsiwtg/ci4vteGmUevEiJiTnv87ectvj /FyQgx75+kJUz/EBVeN+eg/Uz5RkeEAX0HLy6YwOxVeviFuQxl/IU9+jCxJYPuQQ1ub6 2A4WlD/h3QDO/dLaxplSWVCSaiqQCnWMj23f4BfCA4Z/tAjTYRMuDPEjP5uI1l9/lKdq UVNQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:in-reply-to:references:mime-version:date :message-id:subject:to:cc; bh=xb3SyLlt+9lEMXiFpmUGNmsu2sTypEpOeAoxtdW+CUc=; b=L2MnuqZZog5V49ylfT3dmksTpEr4DbnY+yCtB977TbbTR6zhKumqMDCPHKG9a3hhUV 2zixpuFe7VxFtnuxooB9UuWL++6wHiGtERZj/1n2r1NqjxdFej9lpS76tM3oWKKk7Apc z/LoBJ8V5wZEOTMJKvQCZIJs/092EB+7Z2Vq90/D67GyvnLLB4H0Rr9Sbagy7d4I2PDk 7yXM1rsnL3+/Mbp/bPd8lc5nH5KbJ+XIN9sn3FScF49MF/FaIrLhRNPKR8Sw0855tUrw CqdiVciP/+5F/88KM99a/BfMQy35hwjWbHrn6uQ+HifnL7DQ/Heu3aJDfxTyGpTJIsui a1uw==
X-Gm-Message-State: AOAM530tdN7HI/A3NgVcTI8Tdp54hWm5fRn7gS+xtjGj/8El7vwEQw5w kX+a1sj4MhZMEfgoAm9aiiRmO4rtUZNrCZQqemr/nQ==
X-Google-Smtp-Source: ABdhPJxOK9BMkbNsDl6oiLRos0JHXeHSkRrKu3DV3ThR2u4JV5sokiucR91IABL3Kn0zxI+vc6fYfnYqFl5AjILlQPY=
X-Received: by 2002:ac2:4c56:0:b0:443:efbe:4349 with SMTP id o22-20020ac24c56000000b00443efbe4349mr16057969lfk.77.1646159313976; Tue, 01 Mar 2022 10:28:33 -0800 (PST)
Received: from 1058052472880 named unknown by gmailapi.google.com with HTTPREST; Tue, 1 Mar 2022 13:28:33 -0500
From: Marie-Jose Montpetit <marie@mjmontpetit.com>
In-Reply-To: <Yh5eAMrMfyNR8uHe@faui48e.informatik.uni-erlangen.de>
References: <07ac01d82d8d$1e0089a0$5a019ce0$@olddog.co.uk> <Yh5eAMrMfyNR8uHe@faui48e.informatik.uni-erlangen.de>
MIME-Version: 1.0
Date: Tue, 01 Mar 2022 13:28:33 -0500
Message-ID: <CAPjWiCR4bJ2-O7D==0yHQOJT+x2o3H6TNhSudr+O6y585dr-1g@mail.gmail.com>
To: Adrian Farrel <adrian@olddog.co.uk>, Toerless Eckert <tte@cs.fau.de>
Cc: ott@in.tum.de, coin@irtf.org, Dirk Kutscher <ietf@dkutscher.net>
Content-Type: multipart/alternative; boundary="00000000000027525605d92c555a"
Archived-At: <https://mailarchive.ietf.org/arch/msg/coin/qAHQ-SOug3Cc3_i80_b43TvN1fI>
Subject: Re: [Coin] Semantic Routing : Drawing the Lines
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: Tue, 01 Mar 2022 18:28:42 -0000

Dear all:

The COIN chairs are late for the interim minutes but please wait for our
specific recommendations on how to move forward with the semantic routing
research in COIN before continuing this thread.

We will post the minutes and recommendations later today.

Thanks

J/E/M


From: Toerless Eckert <tte@cs.fau.de> <tte@cs.fau.de>
Reply: Toerless Eckert <tte@cs.fau.de> <tte@cs.fau.de>
Date: March 1, 2022 at 12:55:16 PM
To: Adrian Farrel <adrian@olddog.co.uk> <adrian@olddog.co.uk>
Cc: coin@irtf.org <coin@irtf.org> <coin@irtf.org>, Marie-Jose Montpetit
<marie@mjmontpetit.com> <marie@mjmontpetit.com>, ott@in.tum.de
<ott@in.tum.de> <ott@in.tum.de>, Dirk Kutscher <ietf@dkutscher.net>
<ietf@dkutscher.net>
Subject:  Re: [Coin] Semantic Routing : Drawing the Lines

I'd broadly look at "what (semantics)" as one vertical of work,
where worst case we get only completely proprietary secret
implementation sauce of vendors - like what pretty much most of
IETF protocol implementations are.

The other work vertical is the "how (to implement)",
where we have (IMHO) done rather little work in IETF/IRTF.
And worst-case this vertical just improves how IPv4 unicast
gets implemented in future networks, aka: no new "what" semantic routing.

The "how (to implement)" vertical would be quite well-serving for the
research community, because it could help bring back
experimentation/research
into the "what (semantics)", which IMHO we lost in the process of
research-programmable platforms becoming more and more irrelevant for
wide-area networks, leaving researcher to focus on inventing new
protocols/semantic only where the industry would already use software
forwarding.

The whole discussion about how to couple forwarding and control plane
that Adrian recites below is hopefully not at the core of future research
because i think it's been explored more than enough and we know for
every possible solution one candidate deployment sweet spot.

The extend to which we need programmability of forwarding planes to
introduce the routing semantics of interest on the other hand consists IMHO
only
of a lot of historic, common wisdoms that can be challenged or fortified,
and
a lot of gaps.

I think it may be useful to start with scenarios and then explore whats
needed for them. For example:

- regional L3 network in 2030, 1Tbps links in core, 10Gbps in access,
think smaller country or larger urban area in large country -
(200 miles diameter, 20++ million people, 2++ billions things).
- Future virtual private network operator wants to get a programmable
slice across the network, where he can provide for every router the
P5 program to process its packets.
- In one case, this could be one out of few big content aggregators,
maybe wanting to use ICN and/or BIER forwarding plane semantics
- In another case it is criticial infrastructure services such as remote
driving or car2curb operations wanting highly resilient / deterministic
(and better) semantics.
- In hird case its the regions reseaerch community wanting to run some
new research packet semantics.

Of course, this is a vision, and any instance in reality would have to
be darn good before anyone would trust critical infrastructure services
to such a network, but: We do have data-centers mixing critical
infrastucture services with "entertainment" so we know from other
domains whats required, and we had the same concerns back 20 years when
we started to multiplex voice and video into data networks.

And if thats not a useful reference scenario to build out research
aspects for the "how (to implement)" for new semantic routing, then
please suggest what you think useful scenarios to build from would be.

Cheers
Toerless

On Tue, Mar 01, 2022 at 04:55:09PM -0000, Adrian Farrel wrote:
> Hi,
>
> The next thread arising from the discussion at the interim is about where
to
> draw the lines for Semantic Routing.
>
> Specifically, Marie-Jose observed, "It is not network programming - it is
> dataplane programmability." Although she did qualify that with a smiley
> face, it's an important question from a routing and forwarding
perspective
> because simply programming forwarding planes in the network needs careful
> coordination in order to avoid forwarding loops and packet sinks. Anyone
who
> has attempted to install static routes across a large and complex network
> will know the associated risks, and while some work in the IETF (such as,
> draft- ietf-teas-pce-native-ip) has looked at ways of installing static
> forwarding paths into the network, even that assumes the coordination of
a
> central controller and limits the extent of the paths to be installed.
>
> So the point here is that the network has to be viewed as a whole and
> programmed accordingly. That may (will) lead to programming of individual
> forwarding hardware. And there will very probably be an intermediary step
> where the network is partitioned into fragments that are each asked to
> achieve specific results (intent), but left to work out how to program
the
> forwarding hardware within the network fragment.
>
> Some of this plays into Joerg Ott's question, "This seems more about
> 'semantic' forwarding. Could you explain how you envision the routing
part?"
> and Dirk Kutscher's comment "I suggest 'Software-Defined Forwarding
> Strategies' as an alternative name for this" (although Dirk also gave us
a
> smiley face - there's a lot of smiling in COIN :-).
>
> The point is that (of course?) the ultimate objective of any routing
> strategy is to program the forwarding elements in the network. So, in a
> world of SDN and/or programmable devices, it is the forwarding elements
that
> get programmed. And, if the forwarding is acting based on information
> carried in the packets (which is, in any case, how forwarding works
today)
> then, yes, this is semantic forwarding.
>
> But, as observed above, the programming of the forwarding elements cannot
be
> uncoordinated. Indeed, even in networks that simply forward based on the
> destination address, it is necessary to determine the correct forwarding
> actions based on a coherent view of the network topology, an
> objective/algorithm (usually SPF), and an understanding of the current
state
> of the network. That view and the coordination, combined with the
> information and objectives, is the routing policy.
>
> So, when the forwarding decisions get more complicated (some packets to a
> destination go one way in the network, some go another way), there is a
need
> for the routing policy to be more carefully thought-out. For example, a
> policy to reduce end-to-end latency is only practical if it is aware of
the
> risk of causing congestion by sending all the traffic down the small set
of
> lowest-latency links.
>
> So, semantic routing is about determining the right ways to program
> forwarding devices across the whole network, and this is, in its way,
> network programming. In an SDN sense, this is part of the orchestration
> function.
>
> But, please be aware that an SDN approach is only one way of achieving
> semantic forwarding/routing. You could, for example (and I am neither
> advocating for or against this), add lots of additional information to an
> IGP and update the routing algorithms in the routers (allowing them to
> construct their RIBs as they do today but using more information about
the
> network). The update of the algorithms (of course - again?) requires
> coordination to achieve stability and avoid loops etc., and those
algorithms
> may need research. Further, these algorithms could be pushed to the
network
> nodes relatively dynamically (programming of compute resources in the
> network), or could require full software updates.
>
> And this may answer Dirk Kutscher's follow-up: "Isn't a collection of
fields
> to match against effectively a label?" Yes, it is. And so is an address.
We
> are talking about complex, potentially multi-field labels that convey
> information that is used to determine forwarding actions. We are talking
> about forwarding actions that may be simple look-ups or may be "micro
> programs" acting on information about the network and information carried
in
> the packets. We are talking about the routing algorithms that are used to
> generate those forwarding actions. We are talking about how to collect
the
> network state information necessary to derive and operate those routing
> algorithms. And we are talking about how to install the algorithms and
> forwarding instructions into the network. Above all, we are talking about
> how to do this in a stable way within a complex system.
>
> Best,
> Adrian
>
> --
> Coin mailing list
> Coin@irtf.org
> https://www.irtf.org/mailman/listinfo/coin

-- 
---
tte@cs.fau.de