For purposes of this thread, even if you think PSP violates RFC 8200,
let us assume that it is legal.
As I understand it, the PSP situation is:
o the packet arrives at the place (let's not argue about whether SIDs
are locators) identified by the SID in the destination address field
o that SID is the next to last SID in the SID list
o that sid is marked as / known to be PSP
o at the intended place in the processing pseudocode, the last (first)
entry in the SRH is copied into the destination IPv6 address field of
the packet
-> The SRH being used is then removed from the packet.
In order to evaluate whether this is a good idea, we have to have some
idea of the benefit. It may be that I am missing some of the benefit,
and I would appreciate clarification.
As far as I can tell, the benefit of this removal is that in exchange
for this node doing the work of removing the SRH, the final node in the
SRH does not have to process the SRH at all, as it has been removed.
I have trouble seeing how that work tradeoff can be beneficial.
Removing bytes from the middle of a packet is a complex operation.
Doing so in Silicon (we expect this to be done in the fast path of
significant forwarders as I understand it) requires very special
provision. Even in software, removing bytes from the middle of a packet
requires somewhere between some and a lot of extra work. It is
distinctly NOT free.
In contrast, we have assumed that the work of processing SRH itself is
tractable, since otherwise all of SRv6 would be problematic. So why is
this necessary.
Yours,
Joel
PS: Note that both the MPLS case and the encapsulation case are very
different in that the material being removed is at the front of the IP
packet. Pop or prepend are MUCH easier than middle-removal (or
middle-insertion).
_______________________________________________
spring mailing list
spring@ietf.org
https://www.ietf.org/mailman/listinfo/spring