Re: [Srcomp] Comments on REQ-8-17-FWD-EFFICIENCY

peng.shaofu@zte.com.cn Fri, 25 September 2020 02:09 UTC

Return-Path: <peng.shaofu@zte.com.cn>
X-Original-To: srcomp@ietfa.amsl.com
Delivered-To: srcomp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3A97B3A0CCB for <srcomp@ietfa.amsl.com>; Thu, 24 Sep 2020 19:09:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.917
X-Spam-Level:
X-Spam-Status: No, score=-1.917 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, UNPARSEABLE_RELAY=0.001, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=no
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 Hv_HaiTdImiw for <srcomp@ietfa.amsl.com>; Thu, 24 Sep 2020 19:09:44 -0700 (PDT)
Received: from mxhk.zte.com.cn (mxhk.zte.com.cn [63.217.80.70]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7749F3A0D33 for <srcomp@ietf.org>; Thu, 24 Sep 2020 19:09:44 -0700 (PDT)
Received: from mse-fl1.zte.com.cn (unknown [10.30.14.238]) by Forcepoint Email with ESMTPS id 982C63120B106B7A718A; Fri, 25 Sep 2020 10:09:39 +0800 (CST)
Received: from njxapp04.zte.com.cn ([10.41.132.203]) by mse-fl1.zte.com.cn with SMTP id 08P29TmB093544; Fri, 25 Sep 2020 10:09:29 +0800 (GMT-8) (envelope-from peng.shaofu@zte.com.cn)
Received: from mapi (njxapp01[null]) by mapi (Zmail) with MAPI id mid201; Fri, 25 Sep 2020 10:09:29 +0800 (CST)
Date: Fri, 25 Sep 2020 10:09:29 +0800
X-Zmail-TransId: 2af95f6d51594c619cc3
X-Mailer: Zmail v1.0
Message-ID: <202009251009295623197@zte.com.cn>
In-Reply-To: <DM6PR05MB6348C25B8B6124EF22C296ADAE390@DM6PR05MB6348.namprd05.prod.outlook.com>
References: 8F9A1F05-413F-4652-BB37-6D7E7190A750@nokia.com, DM6PR05MB6348C25B8B6124EF22C296ADAE390@DM6PR05MB6348.namprd05.prod.outlook.com
Mime-Version: 1.0
From: peng.shaofu@zte.com.cn
To: rbonica=40juniper.net@dmarc.ietf.org
Cc: wim.henderickx@nokia.com, srcomp@ietf.org
Content-Type: multipart/mixed; boundary="=====_001_next====="
X-MAIL: mse-fl1.zte.com.cn 08P29TmB093544
Archived-At: <https://mailarchive.ietf.org/arch/msg/srcomp/nDjp_wb4gMw7aAq-1raySu3u-no>
Subject: Re: [Srcomp] Comments on REQ-8-17-FWD-EFFICIENCY
X-BeenThere: srcomp@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: <srcomp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/srcomp>, <mailto:srcomp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/srcomp/>
List-Post: <mailto:srcomp@ietf.org>
List-Help: <mailto:srcomp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/srcomp>, <mailto:srcomp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 25 Sep 2020 02:09:47 -0000

Hi all,






For this point, I agree with Ron. 


If I didn't understand it wrong, an additional index based table can contain full forwarding information, that is easy to do this and implementation related, so that it is exactly an optimization to LPM (i.e, another longest-match looking up according to updated DA after obtaining the next SID is avoied), but not never a degradation to forwarding performance.


I think any optimization that avoids LPM is worth trying.






Regards,



PSF






原始邮件



发件人:RonBonica
收件人:Henderickx, Wim (Nokia - BE/Antwerp);srcomp;
日 期 :2020年09月25日 05:55
主 题 :Re: [Srcomp] Comments on REQ-8-17-FWD-EFFICIENCY


-- 
Srcomp mailing list
Srcomp@ietf.org
https://www.ietf.org/mailman/listinfo/srcomp



Wim,


 


I disagree. The metric is misleading because it assumes that:


 

All lookup are equally expensive.

You can reliably determine how many lookups a compression mechanism requires.


 


Neither of these assumptions are safe.


 


Normally, I would avoid discussing any particular compression mechanism in the requirements stage. But in this case, it is convenient to illustrate my point using the CRH.


 


All lookups are not equally expensive


==============================


When a node process a packet that contains the CRH, it might execute the following lookups:


 

A longest-match lookup of the IPv6 Destination Address in an IPv6 FIB

An indexed lookup of the 16-bit SID in the CRH-FIB


 


The first lookup (i.e., the longest-match lookup) is relatively expensive because:


 

The longest-match lookup algorithm is relatively complex

The IPv6 FIB can be very large


 


The second lookup (i.e., the indexed lookup) is relatively inexpensive because:


 

The indexed lookup algorithm is relatively simple

The CRH-FIB is likely to be small


 


 


It is not always possible to determine how many lookups a compression mechanism requires.


============================================================================


 


For example, the CRH draft describes a simple implementation that maintains the following data structures:


 

An IPv6 FIB that is indexed by a prefix and contains a pointer to the forwarding next-hop table

A CRH-FIB that is indexed by a 16-bit SID and contains an IPv6 address and a forwarding method

A forwarding next hop table that contains layer 2 details


 


Reading through the draft, you might assume that CRH processing requires the following lookups:


 

A longest-match lookup of the IPv6 Destination Address in an IPv6 FIB

An indexed lookup of the 16-bit SID in the CRH-FIB

Another longest-match lookup. This time, we are searching for the IPv6 address that we found in the CRH-FIB. Again, we are searching in the IPv6 FIB.


 


However, this would be a sub-optimal implementation. An optimized implementation would contain the following data structures:


 

An IPv6 FIB that is indexed by a prefix and contains a pointer to the forwarding next-hop table

A CRH-FIB that is indexed by a 16-bit SID and contains an IPv6 address and a * pointer to the forwarding next-hop table*

A forwarding next hop table that contains layer 2 details


 


 


This implementation requires only the following lookups:


 

A longest-match lookup of the IPv6 Destination Address in an IPv6 FIB

An indexed lookup of the 16-bit SID in the CRH-FIB


 


A third lookup is not required because the CRH-FIB contains a pointer to the forwarding next hop table. This implementation is relatively efficient, because it requires one longest-match lookup and one indexed lookup, as opposed to many
 others that require two longest-match lookups.


 


This was a fairly obvious optimization. For any compression mechanism, there may be many optimizations that are not so obvious.


 


 


 


 


 


 


Juniper Business Use Only



From: Henderickx, Wim (Nokia - BE/Antwerp) <wim.henderickx@nokia.com>
Sent: Thursday, September 24, 2020 12:23 AM
To: Ron Bonica <rbonica@juniper.net>; srcomp <srcomp@ietf.org>
Subject: Re: [Srcomp] Comments on REQ-8-17-FWD-EFFICIENCY




 


[External Email. Be cautious of content]


 


I do believe there is value in showing the lookups needed for a certain proposal for srcomp and compare them. The reason is this technology will be implemented by many asic (hopefully) and less lookups will be better. The more you need
 the more transistors/memory you burn and the result will be less performance in a given package. As such this is an important factor in the comparison of the options in my view.


 


In other words a solution that does 2 lookup versus 3 will be more future safe.


 



From: Srcomp <srcomp-bounces@ietf.org> on behalf of Ron Bonica <rbonica=40juniper.net@dmarc.ietf.org>
Date: Wednesday, 23 September 2020 at 21:06
To: "srcomp@ietf.org" <srcomp@ietf.org>
Subject: [Srcomp] Comments on REQ-8-17-FWD-EFFICIENCY



 


Folks,


 


The metrics associate with REQ-8-17-FWD-EFFICIENCY are invalid. Currently, the metrics are:


 

D.PRS(segment list): worst-case number of headers parsed during processing of the segment list.

D.LKU(segment list): worst-case number of FIB lookups during processing of the segment list.


 


D.PRS assumes that parsing a second extension header is expensive on all ASICs. While it may be expensive on some ASIC’s it is extremely inexpensive on others. Retaining this metric doesn’t optimize the solution for operators. It merely
 creates an advantage for the ASIC that can’t parse additional extension headers efficiently.


 


D.LKU assumes that it is possible to determine how many lookups a particular compression mechanism requires. It ignores the fact that the FIB can be optimized to reduce the number of lookups. Furthermore, it fails to make a distinction
 between longest match lookups and index lookups.


 


Finally, this requirement should be stated from the network operators perspective, not the ASIC developer’s. The network operator doesn’t care how many headers were parsed or how many lookups were execute. It cares about:


 

How many packet per second the ASIC can process

How much power the ASIC consumes

How much heat the ASIC generates

How much the ASIC costs


 


Unless we can develop better metric for this requirement, we should drop it.


 


                                                                                           Ron


 


 


 


 


Juniper Business Use Only