Re: Remove little-used algorithms from IKEv2

Dan McDonald <danmcd@east.sun.com> Fri, 15 March 2002 19:38 UTC

Received: from lists.tislabs.com (portal.gw.tislabs.com [192.94.214.101]) by above.proper.com (8.11.6/8.11.3) with ESMTP id g2FJc3411527; Fri, 15 Mar 2002 11:38:03 -0800 (PST)
Received: by lists.tislabs.com (8.9.1/8.9.1) id NAA16016 Fri, 15 Mar 2002 13:56:57 -0500 (EST)
Message-Id: <200203151908.g2FJ8V44019311@kebe.east.sun.com>
Subject: Re: Remove little-used algorithms from IKEv2
In-Reply-To: <15506.522.496821.516359@pkoning.dev.equallogic.com> from Paul Koning at "Mar 15, 2002 09:15:38 am"
To: Paul Koning <pkoning@equallogic.com>
Date: Fri, 15 Mar 2002 14:08:31 -0500
CC: ipsec@lists.tislabs.com
From: Dan McDonald <danmcd@east.sun.com>
Organization: Sun Microsystems, Inc. - Solaris Internet Engineering
X-Mailer: ELM [version 2.4ME+ PL66 (25)]
MIME-Version: 1.0
Content-Type: text/plain; charset="US-ASCII"
Content-Transfer-Encoding: 7bit
Sender: owner-ipsec@lists.tislabs.com
Precedence: bulk

> I found it to be about 15% faster than SHA-1, and that on a big endian
> machine.

OTOH, if your big-endian machine can dance the little-endian dance better,
you get noticeable speedup.  The UltraSPARC-tuned MD5 is 30% faster than the
non-UltraSPARC-tuned MD5.  Using your 15% improvement as a base...

		M is MD5
		S is SHA-1
		M' is tuned MD5

	M = 0.85S

	M' = 0.70M

	M' / 0.70 = 0.85S

	M' = 0.70 * 0.85S

	M' = 0.59S

If you want to see what I mean precisely, utter this on a sun4m (e.g. SPARC
20) machine running Solaris 7 or later:

	dis -F MD5Transform /kernel/misc/md5

and utter this on a sun4u (e.g. any UltraSPARC box)

	dis -F MD5Transform /platform/sun4u/kernel/misc/md5

and note the instruction count savings.

> That number makes sense given the structure of the two
> algorithms.  So, somewhat better, yes.  "Far better", no.

See my math above for SW and dancing the little-endian dance.

> In hardware implementations, the two tend to be pretty close, and
> usually faster than the encryption transform so it doesn't matter
> which you chose as far as performance goes.

Now _this_ I'll buy.

Dan