Subject: Re: [lisp] [spring] IPv6-compressed-routing-header-crh

From: Robert Raszuk <[email-masked]>
Date: Sun, 31 Mar 2019 16:39:49 +0200

Hi Mark,

> As MPLS SR SIDs are 20 bits, then rounding up to an octet boundary and a
32 bit alignment,
> I'd think 32 bit SIDs would be adequate to perform SR in an IPv6 network.
>
> As 32 bit SIDs are also the same size as IPv4 addresses, that may also
create some opportunities to
> leverage IPv4 support in existing protocols to suite carrying and
processing 32 bit SIDs with some, possibly
> slight, modification. For example, perhaps IPv4 Address Family support in
OSPFv3 (RFC 5838) could be
> somehow leveraged to suit SR.

Thank you for describing your understanding of fundamentals of SR.

I think SR while indeed started with the story of "less control plane is
good for you" now clearly has evolved into not only reduction of control
plane but what can be even more important to some users ability to request
specific behavior via programmed functions of network elements on a per
flow basis without actually per flow or per path signalling or state.

Yes for some it may be very useful feature and I am sure some will call it
overload of data plane or . There is no one size fits all.

With that let's observe that till today SR did not require any new mapping
plane to be distributed in control plane and to be inserted into data
plane. This is clearly a precedent.

Furthermore as we see in companion documents all additional network
functionality is being taken away from SRH and is being shifted to
Destination Options .

As far as mapping plane I already pointed out in my Vector Routing proposal
that we have one already it is called BGP. One needs to also observe that
we as industry worked number of years of protocol suite called LISP
allowing not only very good mapping plane, but also data plane integration.
CC-ing lisp authors for their comments. Note also work for integrating SRv6
with LISP which is already is published.

Since you correctly observed that now SID can be 32 bit and that is similar
to the size of IPv4 my fundamental question is why not use something which
already exists instead of defining some sort of new  from scratch ?

It will be perfectly fine to have full proper SRv6 with SRH and LISP or
Vector Routing as an alternative options. I really do not see a room or
need for yet one more mapping plane. What problem does it solve which would
not be already solved elsewhere ?

Kind regards,
Robert

2) Is there an agreement that solutions which require additional per SR
>> path state in both control plane and now in data plane are really something
>> we should be endorsing here ?
>>
>
> I think so.
>
> My understanding of what SR is fundamentally about is to reduce control
> plane state and processing. The trade-off for reduced control plane state
> and processing is to instead carry and encode most or all of that
> information or its semantics as per-packet overhead.
>
> If the per-packet overhead becomes too large and expensive, then pushing
> some of that information and processing back into the control plane should
> be ok, as long as there is still a beneficial overall reduction in control
> plane state and processing.
>
> As MPLS SR SIDs are 20 bits, then rounding up to an octet boundary and a
> 32 bit alignment, I'd think 32 bit SIDs would be adequate to perform SR in
> an IPv6 network.
>
> As 32 bit SIDs are also the same size as IPv4 addresses, that may also
> create some opportunities to leverage IPv4 support in existing protocols to
> suite carrying and processing 32 bit SIDs with some, possibly slight,
> modification. For example, perhaps IPv4 Address Family support in OSPFv3
> (RFC 5838) could be somehow leveraged to suit SR.
>
> Regards,
> Mark.
>

---

From: Dino Farinacci <[email-masked]>
Date: Sun, 31 Mar 2019 14:38:49 -0700

> As far as mapping plane I already pointed out in my Vector Routing proposal that we have one already it is called BGP. One needs to also observe that we as industry worked number of years of protocol suite called LISP allowing not only very good mapping plane, but also data plane integration. CC-ing lisp authors for their comments. Note also work for integrating SRv6 with LISP which is already is published. 

The main motivationn to have EID-to-SRH mappings in the LISP mapping system is so you can run a LISP overlay on top of an underlay that supports SR. If you want the paths between LISP RLOCs to be “underlay engineered”, then the elements of the SRH header can be part of the RLOCs LISP selects. 

And when you do underlay path optimization, the new SRHs can be registered dynamically to the mapping system.

> Since you correctly observed that now SID can be 32 bit and that is similar to the size of IPv4 my fundamental question is why not use something which already exists instead of defining some sort of new  from scratch ? 
> 
> It will be perfectly fine to have full proper SRv6 with SRH and LISP or Vector Routing as an alternative options. I really do not see a room or need for yet one more mapping plane. What problem does it solve which would not be already solved elsewhere ? 

In the LISP mapping system I run, I was able to simulate (did not implement referenced draft above), an EID-to-SRH mapping by simply having an IPv6 EID map to an RLOC-set that used ELPs (Explicit Locator Paths - where if the ELP is (A,B,C) it means A encaps to B, B encaps to C), but rather than doing the encapsulation we take the (A,B,C) inserted into one packet as an SRH.
 
The point of the exercise was to show the SR authors that the LISP mapping system was a control-plane they could use and depend on (and ready to go).

Dino