Hi Dave,

 

Thanks for forwarding to COIN (and thanks to Marie-Jose for flagging the 
overlap). As with all these types of thread, it is hard to know where to send 
responses, and we end up copying an ever-increasing set of mailing lists. Truly 
sorry for that.

 

Dave, I think you are right to distinguish the overlay and the underlay. I 
think it is important. I believe there is a difference between determining the 
next consumer of the packet (not necessarily the destination, but possibly an 
on-path value-add function), pre-selecting paths or pre-established tunnels, 
and choosing the next hop forwarding path.

 

Semantic Routing [1] is principally concerned with the last of these. That is 
not to say that ICN, overlays, etc. are not valuable tools. Far from it. But we 
wanted to look at the hop-by-hop behaviors commonly known as routing or 
forwarding. And while these approaches are applied per-packet they are 
essentially per-flow tools answering the question: how can the packets of this 
flow be best routed through the network to meet the demands of the flow.

 

Historically, there is a lot of overlap with traffic engineering and 
“policy-based routing”, and there have been very many attempts at an approach 
over time, usually targeting a specific use case or network type. So we want to 
see whether there are trends, common threads, possible generalisations, and big 
holes not being considered properly. For the last of these, we have tried to 
put together a list of things that should be considered in research into 
routing and forwarding [2].

 

It is definitely true, as you note, that a forwarding device can be programmed 
centrally (in an SDN sort of way) to apply specific forwarding policies based 
on the information carried anywhere (accessible, i.e., not within the encrypted 
part) in a packet. That is not enough, however. The fields in the packets have 
to set consistently, and there may be the need to carry further information in 
the packets. Furthermore, a lot of care has to be taken about consistency in 
forwarding policies to avoid loops or packet loss. And, of course, the 
forwarders have to have a consistent view of the network (which may include 
additional information about link/node state and capabilities) if they are to 
behave correctly. I suspect we forget just how fragile a large forwarding 
network can be.

 

Thus, an SDN approach is not the only approach to Semantic Routing. One might 
also consider pre-programmed algorithms (as has been the case in routing for a 
few years) or algorithms and policy distributed horizontally (by the routing 
protocols) rather than vertically by the controller.

 

I suspect none of this is news to you, but it nevertheless seems to be missing 
from a lot of research into the topic.

 

Maybe, however, there is a line to be drawn between engineering and research. 
When you say “I am still befuddled about why one would want this capability in 
an underlay,” I think the answer has to be that that is OK. The whole point of 
research is to find out what works and what might be useful.

 

Best,

Adrian

 

[1] 
https://datatracker.ietf.org/doc/draft-farrel-irtf-introduction-to-semantic-routing/

[2] https://datatracker.ietf.org/doc/draft-king-irtf-challenges-in-routing/ 

 

 

 

From: David R. Oran  <mailto:daveo...@orandom.net> <daveo...@orandom.net>
Reply: David R. Oran  <mailto:daveo...@orandom.net> <daveo...@orandom.net>
Date: January 26, 2022 at 10:37:00 AM
To: architecture-disc...@ietf.org <mailto:architecture-disc...@ietf.org>   
<mailto:architecture-disc...@ietf.org> <architecture-disc...@ietf.org>
Subject:  Re: [arch-d] [Int-area] Continuing the addressing discussion: what is 
an address anyway?





I wade in here with more than a little trepidation, especially with my “ICN 
taint” where there are no classic “flows” and in fact no source addresses to 
apply semantics to, and only weak notions of destination addresses in the sense 
that content names at layer 3 may have a binding only to a single location in 
the network because that’s what you wanted when you constructed the name.

After reading the semantic routing docs, I am still befuddled about why one 
would want this capability in an underlay when it is already very common to 
employ a level of indirection by recursing at layer 3 to construct flexible 
overlays. One might want semantics other than an attachment point in an 
overlay, but we already have that, and can similarly recurse existing routing 
protocols to construct the desired topologies. So, I’m in the uncomfortable 
position of not seeing the need for any of this either as a native IP 
capability, nor going forward as an alternative to architectures like ICN which 
natively provide flexible semantics through the use of hierarchical or 
attribute-based names at L3.

If the goal is to try to decouple the IPv6 packet format from conventional 
notions of forwarding and routing, given the movement toward user-programmable 
switches and routers, we can do that without introducing the notion of semantic 
routing. As a extreme endpoint of this argument, consider the following:

*       Programmable switches can do match operations on any set of contiguous 
bit fields in a packet if they are in the first 256 bytes of the incoming 
buffer.
*       The extracted and matched bit fields can be used as input to a lookup 
table, or a cascaded sequence of lookup tables, or even something with FSM 
computation as long as the cycle count and memory accesses are highly limited.

Given this, there is no need, other than for standards compatibility, to assign 
any fixed semantics to ANY of the fields in an IPv6 packet, be they the 
“addresses”, the hop limit, ports, or anything else. In fact it may be that the 
only thing about the overall packet structure that demands precise 
standardization is how you demultiplex incoming frames/packets to the program 
that is assigned to handle them. Then if you don’t want to have source 
addresses and want to treat the concatenation of SA/DA (in any order or even 
segmented in pieces) as one single key to the forwarding operation, that’s just 
fine.

In this “endgame”, both routing and forwarding is simply defined by the program 
(or programs) you load in the devices. There’s no need to have conventional 
“protocol standards” beyond agreement among packet generators and packet 
parsers as to what the format of the packet is. IPv6 is just fine for this - 
there are enough bits to do a lot of stuff, even ICNish stuff as we’ve seen 
with the hICN effort ( 
<https://datatracker.ietf.org/doc/draft-muscariello-intarea-hicn/> 
https://datatracker.ietf.org/doc/draft-muscariello-intarea-hicn/)

I don’t intend this as a flame; I’m seriously skeptical of the utility of using 
protocol standards as a way to achieve different routing functionality given 
where the technology is today and where it’s moving.

DaveO.

On 26 Jan 2022, at 1:24, Eliot Lear wrote:

[copy architecture-discuss]

Geoff,

This is a pretty good characterization.  In fact, it's exactly where we went in 
the NSRG nearly 20 years ago, just after MO first kicked out 8+8.  For people's 
reference, we looked at naming at different levels, including at L3, in DNS, 
URNs (which were relatively new things then), HIP, etc.  There were then 
several efforts in both the IRTF and IETF to deal with portability of 
connectivity in transport.  I think QUIC gets a lot of that right.  QUIC – at 
least at the moment – as some limitations for local use (either you have certs 
or some sort of prearranged bidirectional authentication).  I think it's a fair 
engineering assumption that those will be kinked out.

With all of that having been said, I go back to Dirk's note: what properties do 
we need at L3?

*       If QoS is still a thing, then admission control has to be part of the 
story.
*       There is a tussle between endpoint privacy and the endpoint itself 
being a threat.  In the latter case, the endpoint has to be identified.  But to 
whom?

As you describe, a lot of routing has moved up a layer.  Sort of.  But not all. 
 CDNs need to be well aware of topology, and that comes from L3, perhaps with 
additional OOB info.

So... what's missing from L3 at this point that we need, and is it even a good 
question to ask?  I ask that because I have seen recently a retrenching AWAY 
from IPv6.  If that is happening, what makes us think that any new L3 beyond 
IPv6 would ever get adopted?  OR... what is missing from IPv6 that would cause 
people to move?

Eliot

On 25.01.22 12:38, Geoff Huston wrote:

 

On 25 Jan 2022, at 6:19 pm, Dirk Trossen  
<mailto:dirk.trossen=40huawei....@dmarc.ietf.org> 
<dirk.trossen=40huawei....@dmarc.ietf.org> wrote:
 
All,
  
Thanks for the great discussion, following our side meeting at IETF 112, so far.
  
I wanted to turn the discussion to a key question which not only arose in the 
side meeting already but also in the discussions since, namely “what is an 
address anyway?”.
  

In this world of NATs it seems that we treat addresses as no more than 
temporary ephemeral session tokens and we've passed all the heavy lifting of 
service identification over to the name system. These days you and I could be 
accessing the same service yet we could b e using entirely different addresses 
to do so. Or I could be accessing the same service at different times, and 
again be using different addresses each time. I find it somewhat ironic that we 
see increasing moves to pull in IP addresses as part of the set of personal 
information in some regulatory regimes, yet what the larger network sees of end 
clients is a temporary NAT binding to a public address that may be shared by 
hundreds if not thousands of others.
 
And IPv6’s use of privacy addressing achieves a similar outcome in a different 
way. And QUIC’s use of the session token inside the encrypted envelope even 
makes the binding of an address to a single session fluid, as the same QUIC 
session can be address agile on the client side.  
 
So perhaps an address these days is just an ephemeral transport token and 
really has little more in the way of semantic intent.
 
Geoff
 
 
_______________________________________________
Int-area mailing list
Int-area@ietf.org <mailto:Int-area@ietf.org> 
https://www.ietf.org/mailman/listinfo/int-area
 

_______________________________________________
Architecture-discuss mailing list
architecture-disc...@ietf.org <mailto:architecture-disc...@ietf.org> 
 <https://www.ietf.org/mailman/listinfo/architecture-discuss> 
https://www.ietf.org/mailman/listinfo/architecture-discuss

DaveO

_______________________________________________
Architecture-discuss mailing list
architecture-disc...@ietf.org <mailto:architecture-disc...@ietf.org> 
https://www.ietf.org/mailman/listinfo/architecture-discuss

_______________________________________________
Int-area mailing list
Int-area@ietf.org
https://www.ietf.org/mailman/listinfo/int-area

Reply via email to