Subject: Re: [Srcomp] 2.2.2

From: "Darren Dukes (ddukes)" <[email-masked]>
Date: Fri, 11 Jun 2021 12:45:31 +0000

Hi team, Ron Cheng and I met Wednesday night/Thursday morning.  We analyzed lookups performed for all proposals against the previous, active, and next segment.

I came up with this text I would like us to review today.  I hope this is a good conclusion to the work that is technically true and complete and captures LPM and EM distinctions.
It does leave out analysis of a documented CSID implementation option for simplicity and to complete this text this week.  We can add a one sentence note to capture that.

2.2.2.  Lookups Performed (LKU)

   Some proposals require a different number of lookups per packet,
   depending on the active segment in a segment list.

   An implementation may perform lookups as longest prefix match (LPM)
   or exact match (EM).  CSID, VSID and UIDSR describe SRv6 SID lookup
   from the IPv6 destination address as an LPM, however an
   implementation may use either an LPM or EM lookup for SRv6 SIDs.  CRH
   implementations must always uses an exact match for CRH SID lookups.

   When the active segment is an adjacency or VPN segment the number of
   lookups performed are constant for CSID, VSID and UIDSR.  The number
   of CRH lookups depends on the capabilities of adjacent nodes.

         +-------------------+-------+----------+-------+-------+
         |                   | CSID  | CRH      | VSID  | UIDSR |
         +-------------------+-------+----------+-------+-------+
         | Lookups performed | 1 (a) | 2 (b)    | 1 (a) | 1 (a) |
         |                   |       | or 3 (c) |       |       |
         +-------------------+-------+----------+-------+-------+

          Table 7: Lookups at adjacency and VPN segment endpoints

   o  (a) lookup IPv6 destination address
   o  (b) lookup IPv6 destination address, then one CRH SID
   o  (c) For CRH when active segment is adjacency and adjacent nodes do
      not support CRH (CRH appendix B)
      *  lookup IPv6 destination address, then two CRH SIDs

   When the active segment is a prefix segment the number of lookups
   performed are constant for UIDSR, CSID 32-bit, VSID and CRH.

           +-------------------+-------+-------+-------+-------+
           |                   | CSID  | CRH   | VSID  | UIDSR |
           +-------------------+-------+-------+-------+-------+
           | Lookups performed | 2 (d) | 2 (e) | 2 (d) | 2 (d) |
           +-------------------+-------+-------+-------+-------+

               Table 8: Lookups at prefix segment endpoints

   o  (d) lookup IPv6 destination address, then the next segment in the
      IPv6 destination address
   o  (e) lookup IPv6 destination address, then one CRH SID

   Conclusion 1: CSID, VSID, and UIDSR require a single lookup to
   process an adjacency or VPN segment.  CRH always requires 2 lookups
   for VPN segments, and 2 or 3 lookups for adjacency segments.

   Conclusion 2: All proposals require two lookups to process a prefix
   segment and the next segment.