[bmwg] Reporting format -- Re: I-D Action: draft-ietf-bmwg-benchmarking-stateful-00.txt

Gabor LENCSE <lencse@hit.bme.hu> Mon, 10 October 2022 01:14 UTC

Return-Path: <lencse@hit.bme.hu>
X-Original-To: bmwg@ietfa.amsl.com
Delivered-To: bmwg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C249BC14F746 for <bmwg@ietfa.amsl.com>; Sun, 9 Oct 2022 18:14:49 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.906
X-Spam-Level:
X-Spam-Status: No, score=-6.906 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id b2hSZsrLOWsl for <bmwg@ietfa.amsl.com>; Sun, 9 Oct 2022 18:14:46 -0700 (PDT)
Received: from frogstar.hit.bme.hu (frogstar.hit.bme.hu [IPv6:2001:738:2001:4020::2c]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7EC24C14F73F for <bmwg@ietf.org>; Sun, 9 Oct 2022 18:14:44 -0700 (PDT)
Received: from [192.168.11.2] (M106153182152.v4.enabler.ne.jp [106.153.182.152]) (authenticated bits=0) by frogstar.hit.bme.hu (8.17.1/8.17.1) with ESMTPSA id 29A1ER9I073019 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NO) for <bmwg@ietf.org>; Mon, 10 Oct 2022 03:14:34 +0200 (CEST) (envelope-from lencse@hit.bme.hu)
X-Authentication-Warning: frogstar.hit.bme.hu: Host M106153182152.v4.enabler.ne.jp [106.153.182.152] claimed to be [192.168.11.2]
Content-Type: multipart/alternative; boundary="------------H3HsVchcY0T1OljPFRFqzaBk"
Message-ID: <36a9fcf2-3509-bb7e-60ec-9f7a0e333633@hit.bme.hu>
Date: Mon, 10 Oct 2022 10:14:26 +0900
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.3.1
Content-Language: en-US
To: bmwg@ietf.org
References: <166404257987.62474.16153916416210946356@ietfa.amsl.com> <a18a8b31-fb8d-4ee6-8092-1a03978d86e5@hit.bme.hu>
From: Gabor LENCSE <lencse@hit.bme.hu>
In-Reply-To: <a18a8b31-fb8d-4ee6-8092-1a03978d86e5@hit.bme.hu>
X-Virus-Scanned: clamav-milter 0.103.7 at frogstar.hit.bme.hu
X-Virus-Status: Clean
Received-SPF: pass (frogstar.hit.bme.hu: authenticated connection) receiver=frogstar.hit.bme.hu; client-ip=106.153.182.152; helo=[192.168.11.2]; envelope-from=lencse@hit.bme.hu; x-software=spfmilter 2.001 http://www.acme.com/software/spfmilter/ with libspf2-1.2.11;
X-DCC-debian-Metrics: frogstar.hit.bme.hu; whitelist
X-Scanned-By: MIMEDefang 2.86 on 152.66.248.44
Archived-At: <https://mailarchive.ietf.org/arch/msg/bmwg/quDKJZw9EgPaVfuKZQFbhmNiuYk>
Subject: [bmwg] Reporting format -- Re: I-D Action: draft-ietf-bmwg-benchmarking-stateful-00.txt
X-BeenThere: bmwg@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Benchmarking Methodology Working Group <bmwg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/bmwg>, <mailto:bmwg-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/bmwg/>
List-Post: <mailto:bmwg@ietf.org>
List-Help: <mailto:bmwg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/bmwg>, <mailto:bmwg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 10 Oct 2022 01:14:49 -0000

Dear BMWG Chairs and List Members,

We have seen that RFC 8219 has a recommendation for reporting format, 
but our draft did not have it yet. Therefore, we drafted the following text:

4.5.1.  Typical Types of Measurement Series and Reporting Format

    Measurements are often taken as measurement series by changing the
    value of one or more parameter(s) to discover how the various values
    of the given parameter(s) influence the performance of the DUT.

    Scalability is a typical issue to be examined.  To that end, we
    RECOMMEND the following two measurement series:

    1.  Scalability against the number of sessions.  We RECOMMEND to use
        some representative values from the range of the potential number
        of sessions (that is, source port number destination port number
        combinations) the DUT may be faced with during its intended
        usage.

    2.  Scalability against the number of active CPU cores.  We RECOMMEND
        this measurement series if the number of active CPU cores of the
        DUT may be adjusted AND it is meaningful to use less than the
        maximum number of active CPU cores (e.g. when testing a software
        NATxy gateway implementation executed by a general purpose
        computer).

    Measurements MUST be executed multiple times.  The report of the
    results MUST contain the number of the repetitions of the
    measurements.  We RECOMMEND median as the summarizing function of the
    results complemented with the first percentile and the 99th
    percentile as indices of the dispersion of the results.  Average and
    standard deviation MAY also be reported.

    All parameters and settings that may influence the performance of the
    DUT MUST be reported.  Some of them may be specific to the given
    NATxy gateway implementation, like the "hashsize" (hash table size)
    and "nf_conntrack_max" (number of connection tracking table entries)
    values for iptables or the limit of the number of states for OpenBSD
    PF (set by the "set limit states number" command in the pf.conf
    file).


     number of sessions (req.)            0.4M       4M     40M     400M
     source port numbers (req.)         40,000   40,000  40,000   40,000
     destination port numbers (req.)        10      100   1,000   10,000
     "hashsize" (i.s.)                    2^17     2^20    2^23     2^27
     "nf_conntrack_max" (i.s.)            2^20     2^23    2^26     2^30
     num. sessions / "hashsize" (i.s.)    3.05     3.81    4.77     2.98
     number of experiments (req.)           10       10      10       10
     error of binary search (req.)       1,000    1,000   1,000    1,000
     connections/s median (req.)
     connections/s 1st perc. (req.)
     connections/s 99th perc. (req.)

       Figure 3: Non-validated maximum connection establishment rate of
         iptables against the number of sessions -- example for table
                                   headings


    Figure 3 shows an example for table headings for reporting the
    measurement results for the scalability of the iptables stateful
    NAT44 implementation against the number of sessions.  We have
    indicated the always required fields (req.) and the implementation
    specific ones (i.s.).  In row 6, we also added a computed value, the
    number of sessions per hashsize ratio, what helps the reader to
    interpret the achieved maximum connection establishment rate.  (A
    lower value results in shorter linked lists hanging on the entries of
    the hash table and thus facilitating higher performance.  The ratio
    is varying, because the number of sessions is always a power of 10,
    whereas hash table size is a power of 2.)  To reflect the accuracy of
    the results, we have also added the value of the error of binary
    search, that is, the difference between the higher bound and lower
    bound when the binary search stops.

    The table MUST be complemented with reporting the relevant parameters
    of the DUT.  If the DUT is a general purpose computer and some
    software NATxy gateway implementation is tested, then hardware
    description SHOULD include: computer type, CPU type and number of
    active CPU cores, memory type, size and speed, network interface card
    type (reflecting also the speed), the fact that direct cable
    connections were used or the type of the switch used for
    interconnecting the Tester and the DUT.  Operating system type and
    version, kernel version, and the version of the NATxy gateway
    implementation (including last commit date and number if applicable)
    SHOULD also be given.

What do you think of the text above?

Is it OK to use an example table here? Or should it go to the Appendix?

All comments are welcome!

Best regards,

Gábor


On 9/26/2022 11:18 AM, Gabor LENCSE wrote:
>
> Dear BMWG Chairs and List Members,
>
> First all, I am very happy for the adoption of our draft and thank you 
> for all your support!
>
> We have made the following main changes:
>
>     Added measurement setup for Stateful NAT64 gateways.
>
>     Consistency checking and corrections.
>
> As for the nit checker report regarding the non-RFC-6890 compliant IP 
> addresses, the following explanation was added:
>
>     Note: We are fully aware of [RFC6890  <https://datatracker.ietf.org/doc/html/rfc6890>] special purpose IP address
>     ranges.  The [RFC1918  <https://datatracker.ietf.org/doc/html/rfc1918>] private IP addresses are used to facilitate an
>     easy understanding of the example.  And we consider the usage of the
>     IP addresses reserved for benchmarking absolutely legitimate.
>
> We would be happy to receive reviews and recommendations how to 
> improve it. We are ready to publish an improved version before the 
> cutoff date of IETF 114 if needed.
>
> I am in Tokyo as a guest researcher at the Research Laboratory of 
> Internet Initiative Japan from September 15 to December 15 to do 
> research in the topic of benchmarking stateful NAT64 gateways. I plan 
> to validate the methodology described in our draft by benchmarking 
> various stateful NAT64 gateway implementations.
>
> So this is the best time, if you could recommend any improvement for 
> the methodology. :-)
>
> Best regards
>
> Gábor
>
>
> On 9/25/2022 3:02 AM, internet-drafts@ietf.org wrote:
>> A New Internet-Draft is available from the on-line Internet-Drafts directories.
>> This draft is a work item of the Benchmarking Methodology WG of the IETF.
>>
>>          Title           : Benchmarking Methodology for Stateful NATxy Gateways using RFC 4814 Pseudorandom Port Numbers
>>          Authors         : Gabor Lencse
>>                            Keiichi Shima
>>    Filename        : draft-ietf-bmwg-benchmarking-stateful-00.txt
>>    Pages           : 23
>>    Date            : 2022-09-24
>>
>> Abstract:
>>     RFC 2544 has defined a benchmarking methodology for network
>>     interconnect devices.  RFC 5180 addressed IPv6 specificities and it
>>     also provided a technology update, but excluded IPv6 transition
>>     technologies.  RFC 8219 addressed IPv6 transition technologies,
>>     including stateful NAT64.  However, none of them discussed how to
>>     apply RFC 4814 pseudorandom port numbers to any stateful NATxy
>>     (NAT44, NAT64, NAT66) technologies.  We discuss why using
>>     pseudorandom port numbers with stateful NATxy gateways is a difficult
>>     problem.  We recommend a solution limiting the port number ranges and
>>     using two phases: the preliminary test phase and the real test phase.
>>     We show how the classic performance measurement procedures (e.g.
>>     throughput, frame loss rate, latency, etc.) can be carried out.  We
>>     also define new performance metrics and measurement procedures for
>>     maximum connection establishment rate, connection tear down rate and
>>     connection tracking table capacity measurements.
>>
>>
>> The IETF datatracker status page for this draft is:
>> https://datatracker.ietf.org/doc/draft-ietf-bmwg-benchmarking-stateful/
>>
>> There is also an htmlized version available at:
>> https://datatracker.ietf.org/doc/html/draft-ietf-bmwg-benchmarking-stateful-00
>>
>>
>> Internet-Drafts are also available by rsync at rsync.ietf.org::internet-drafts
>>
>>
>> _______________________________________________
>> bmwg mailing list
>> bmwg@ietf.org
>> https://www.ietf.org/mailman/listinfo/bmwg
>
> _______________________________________________
> bmwg mailing list
> bmwg@ietf.org
> https://www.ietf.org/mailman/listinfo/bmwg