Subject: [Lwip] IoT Performance Measurements

From: Hannes Tschofenig <[email-masked]>
Date: Thu, 13 Aug 2015 17:02:39 +0200

Hi Rafa, Hi Malisa, Hi Pablo,
Hi all,

earlier this year I presented some performance results to the LWIG
working group and the details can be found at:
https://www.ietf.org/proceedings/92/slides/slides-92-lwig-3.pdf

The idea of my presentation at the Dallas IETF meeting was to get some
others to enhance the performance investigations to provide others a
better idea of what they can expect when using state-of-the-art crypto
in IETF protocols as part of their IoT platform.

The results would be summarized in an IETF draft, such as in the TLS
minimal draft (see
https://tools.ietf.org/wg/lwig/draft-ietf-lwig-tls-minimal/).

Subsequently, I also worked with my co-worker Manuel on a submission to
the NIST lightweight cryptography workshop where we summarized our work.
Here is the link to the workshop:
http://www.nist.gov/itl/csd/ct/lwc_workshop2015.cfm

While it was difficult to find someone who is interested in doing some
performance analysis I luckily found some folks, which are on CC, who
said that they might be able to contribute some thoughts.

Malisa mentioned in the ACE working group meeting that he has done some
current consumption measurements.

Rafa has done some ECC measurements previously and those might give
additional data points.

Pablo has done performance measurements and was interested in spending
additional time on that subject. We had the chance to chat at the Prague
IETF meeting.

Here is what I believe we need:
  * Verification of the existing results.
  * More data from other crypto libraries (or even DTLS/TLS stacks).
  * Tests run on other hardware platforms (such as the Cortex M7).
  * Tests beyond performance, such as RAM usage, flash size, etc.
  * Tests that focus on other algorithms.

If would be great if folks could help with that or provide pointers if
they have already done some work. If you are interested please drop
me/us a message.

I am happy to talk about what we should /shouldn't investigate as part
of this exercise.

I am convinced that this data is useful for many engineers and
researchers. While most folks immediately want to create some new
algorithms I believe it is good to know how fast the currently available
algorithms are on modern IoT hardware.

Ciao
Hannes

---

From: Hannes Tschofenig <[email-masked]>
Date: Tue, 1 Sep 2015 05:17:50 +0200

Hi Pablo,

a few minor questions:

On 08/28/2015 10:25 AM, Pablo Puñal Pereira wrote:
> Hi Hannes, Malisa, all,
> 
> Right now I'm doing the performance analysis (in time and power
> consumption) of IPsec, also in the context of IEEE802.15.4.

Why are you focusing your analysis on IPsec? Are you analysis IPsec
AH/ESP or also IKEv2?

How does your test setup look like? How does IEEE 802.15.4 fit into this
analysis? Wouldn't it be sufficient to focus on the performance of
cryptographic algorithms?

How are you doing the power measurements?

 The
> configuration is: IKE negotiation: AES128-CTR, AES-XCBC, SHA1,
> ECP192 ESP encryption: AES128-CTR, AES-XCBC

These are rather unusual choices for algorithms. Why did you pick these
algorithms? I would have accepted to see AES-CCM or something like
ChaCha20 there.

> The platform is based on Freescale MK60, the analysis is focused also
> in the differences between the use of crypto accelerator unit and
> pure software cryptography.

I am not familiar with the Freescale MK60 but it looks like a Cortex M4.
There seem to be different models available with a different CPU speed.
You have chosen this hardware because of the hardware support, I guess.

It would indeed be interesting to see the performance and power
consumption difference between the hardware AES / SHA256 and a software
version.

What software implementation are you going to use for the AES/SHA-256?

> 
> Malisa, could you send me the reference of your publication about
> DTLS performance?

Malisa distributed the link in his email below:
http://arxiv.org/pdf/1507.05810.pdf

Ciao
Hannes

> 
> Regards.
> 
> //Pablo
> 
>> On 19 Aug 2015, at 00:02, Malisa VUCINIC <[email-masked]>
>> wrote:
>> 
>> Hi Hannes, all,
>> 
>> We just recently published some results from 2013 on DTLS handshake
>> performance (tinyDTLS lib) in the context of IEEE802.15.4 and
>> different radio duty-cycling schemes. The accent there is on
>> communication overhead rather than on crypto processing, as we used
>> a PSK suite (TLS_PSK_WITH_AES_128_CCM_8) with no asymmetric
>> operations involved.
>> 
>> Results with beacon-enabled mode of 802.15.4 were obtained on
>> STM32L-based boards (Cortex M3).
>> 
>> Preamble sampling results were obtained by emulating older MSP430F5
>> MCUs (WiSMote boards). From some earlier tests, I remember that the
>> error introduced by emulations in respect to real WiSMote hardware
>> was around 3%.
>> 
>> Handshake duration results are generic as they are heavily
>> influenced by duty-cycle parametrization rather than on hardware
>> and associated processing time that is negligible with PSK-based
>> suites.
>> 
>> Results are available at: http://arxiv.org/pdf/1507.05810.pdf
>> 
>> Let me know if some of this could be interesting.
>> 
>> Regards, Mališa
>> 
>> ________________________________________ From: Hannes Tschofenig
>> [[email-masked]] Sent: Thursday, August 13, 2015 5:02
>> PM To: [email-masked] Cc: Rafa Marin Lopez; Malisa VUCINIC;
>> [email-masked] Subject: IoT Performance Measurements
>> 
>> Hi Rafa, Hi Malisa, Hi Pablo, Hi all,
>> 
>> The idea of my presentation at the Dallas IETF meeting was to get
>> some others to enhance the performance investigations to provide
>> others a better idea of what they can expect when using
>> state-of-the-art crypto in IETF protocols as part of their IoT
>> platform.
>> 
>> The results would be summarized in an IETF draft, such as in the
>> TLS minimal draft (see 
>> Subsequently, I also worked with my co-worker Manuel on a
>> submission to the NIST lightweight cryptography workshop where we
>> summarized our work. Here is the link to the workshop: 
>> While it was difficult to find someone who is interested in doing
>> some performance analysis I luckily found some folks, which are on
>> CC, who said that they might be able to contribute some thoughts.
>> 
>> Malisa mentioned in the ACE working group meeting that he has done
>> some current consumption measurements.
>> 
>> Rafa has done some ECC measurements previously and those might
>> give additional data points.
>> 
>> Pablo has done performance measurements and was interested in
>> spending additional time on that subject. We had the chance to chat
>> at the Prague IETF meeting.
>> 
>> Here is what I believe we need: * Verification of the existing
>> results. * More data from other crypto libraries (or even DTLS/TLS
>> stacks). * Tests run on other hardware platforms (such as the
>> Cortex M7). * Tests beyond performance, such as RAM usage, flash
>> size, etc. * Tests that focus on other algorithms.
>> 
>> If would be great if folks could help with that or provide pointers
>> if they have already done some work. If you are interested please
>> drop me/us a message.
>> 
>> I am happy to talk about what we should /shouldn't investigate as
>> part of this exercise.
>> 
>> algorithms I believe it is good to know how fast the currently
>> available algorithms are on modern IoT hardware.
>> 
>> Ciao Hannes
>