[bmwg] the potential falsifying effect of storing the requests in a large queue -- Re: WG Adoption Call: Stateful NATxy Gateways using RFC 4814

Gabor LENCSE <lencse@hit.bme.hu> Fri, 22 July 2022 19:02 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 8D18EC13C538 for <bmwg@ietfa.amsl.com>; Fri, 22 Jul 2022 12:02:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.909
X-Spam-Level:
X-Spam-Status: No, score=-1.909 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=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 tb5X7FeSukJn for <bmwg@ietfa.amsl.com>; Fri, 22 Jul 2022 12:02:36 -0700 (PDT)
Received: from frogstar.hit.bme.hu (frogstar.hit.bme.hu [IPv6:2001:738:2001:4020::2c]) (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 94F20C14F743 for <bmwg@ietf.org>; Fri, 22 Jul 2022 12:00:38 -0700 (PDT)
Received: from [192.168.0.192] (host-88-132-252-9.hirsat.hu [88.132.252.9]) (authenticated bits=0) by frogstar.hit.bme.hu (8.15.2/8.15.2) with ESMTPSA id 26MJ0KAo085684 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO) for <bmwg@ietf.org>; Fri, 22 Jul 2022 21:00:26 +0200 (CEST) (envelope-from lencse@hit.bme.hu)
X-Authentication-Warning: frogstar.hit.bme.hu: Host host-88-132-252-9.hirsat.hu [88.132.252.9] claimed to be [192.168.0.192]
Content-Type: multipart/alternative; boundary="------------AHZPfQECi0OUavWSmrRYSpts"
Message-ID: <82afb82b-762b-eb89-ca48-41e34c061e85@hit.bme.hu>
Date: Fri, 22 Jul 2022 21:00:15 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0
Content-Language: en-US
To: "bmwg@ietf.org" <bmwg@ietf.org>
References: <CH0PR02MB798001E3E9D0D9977474DFF3D3CF9@CH0PR02MB7980.namprd02.prod.outlook.com> <147F6665B1980A4496AE5D06F45C002A025698F66C@hold.ahol.co.hu> <cc1ddc52-6e3b-585a-711c-1f7c7aef05f5@hit.bme.hu> <CH0PR02MB7980AD83F6EC030548630D8AD38E9@CH0PR02MB7980.namprd02.prod.outlook.com>
From: Gabor LENCSE <lencse@hit.bme.hu>
In-Reply-To: <CH0PR02MB7980AD83F6EC030548630D8AD38E9@CH0PR02MB7980.namprd02.prod.outlook.com>
X-Virus-Scanned: clamav-milter 0.103.2 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=88.132.252.9; helo=[192.168.0.192]; envelope-from=lencse@hit.bme.hu; x-software=spfmilter 2.001 http://www.acme.com/software/spfmilter/ with libspf2-1.2.10;
X-DCC--Metrics: frogstar.hit.bme.hu; whitelist
X-Scanned-By: MIMEDefang 2.79 on 152.66.248.44
Archived-At: <https://mailarchive.ietf.org/arch/msg/bmwg/tk0vpZkpqvnm29B98Q07rlq5eNU>
Subject: [bmwg] the potential falsifying effect of storing the requests in a large queue -- Re: WG Adoption Call: Stateful NATxy Gateways using RFC 4814
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: Fri, 22 Jul 2022 19:02:40 -0000

Dear Al,

Let me answer to this part now:

> It seems plausible that the connection tracking table might be larger 
> than the number of successful connections established when setting-up 
> connections at the maximum rate, R. In other words, a derating factor 
> (like the alpha factor you use during connection validation) on 
> Initiator sending rate
>
> r=R*alpha
>
> might result in counting a larger number of successful connection 
> tracking table entries. I can imagine that there might be a queue to 
> establish connections, and rate R does not exhaust the queue, but at 
> R+beta the queue overflows and some connections attempts fail, there 
> might still be unoccupied space in the connection tracking table.
>
I am not sure if you thought the same thing, but it reminded me an old 
experience at the time of writing the draft for RFC 8219.

As for DNS64 benchmarking, 1s second timeout was allowed (and 
individually checked) for every single query. Some of the tested DNS64 
server implementations were able to store the requests and thus exhibit 
somewhat higher performance. E.g. using in a 60s long test, answering 
the requests in 61 seconds may give more than 1% extra performance. This 
is not very bad, but using much shorter tests (e.g. 10s long) could 
result in more cheating. Please see all the details in:

G. Lencse, M. Georgescu, and Y. Kadobayashi, "Benchmarking Methodology 
for DNS64 Servers", /Computer Communications/ (Elsevier), vol. 109, no. 
1, pp. 162-175, September 1, 2017, DOI: 10.1016/j.comcom.2017.06.004
Revised version in PDF 
<http://www.hit.bme.hu/~lencse/publications/ECC-2017-B-M-DNS64-revised.pdf> 
(the link gives you the revised version of the paper)

(Table 3 shows results for rather extreme cases, e.g. 5 seconds trial 
duration and 5 seconds timeout.)

The same thing may happen here, too. For example, I used a relatively 
low number of connections (4M) to speed up experimenting with Jool, when 
I tested, how connection validation works. Please see the results here:

https://datatracker.ietf.org/doc/html/draft-lencse-v6ops-transition-scalability#section-3.6

It is deliberate from the data, that the filling of the connection 
tracking table lasted less than 10 seconds (4,000,000/478,417) and I 
used 500ms (that is 0.5s) global timeout.

If Jool is able to enqueue a high number of requests then the measured 
values may be somewhat false.

Of course, this effect is negligible, when the timeout is at least two 
order of magnitude less than the time needed to fill all the connections 
into the connection tracking table.

Best regards,

Gábor