[113attendees] Network Responsiveness at IETF meeting

Stuart Cheshire <cheshire@apple.com> Wed, 23 March 2022 14:54 UTC

Return-Path: <cheshire@apple.com>
X-Original-To: 113attendees@ietfa.amsl.com
Delivered-To: 113attendees@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D2D4A3A150A for <113attendees@ietfa.amsl.com>; Wed, 23 Mar 2022 07:54:19 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.108
X-Spam-Level:
X-Spam-Status: No, score=-2.108 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=apple.com
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 t0zXghcIRT_z for <113attendees@ietfa.amsl.com>; Wed, 23 Mar 2022 07:54:16 -0700 (PDT)
Received: from rn-mailsvcp-ppex-lapp45.apple.com (rn-mailsvcp-ppex-lapp45.rno.apple.com [17.179.253.49]) (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 014443A10C0 for <113attendees@ietf.org>; Wed, 23 Mar 2022 07:54:15 -0700 (PDT)
Received: from pps.filterd (rn-mailsvcp-ppex-lapp45.rno.apple.com [127.0.0.1]) by rn-mailsvcp-ppex-lapp45.rno.apple.com (8.16.1.2/8.16.1.2) with SMTP id 22NEFKmJ001119 for <113attendees@ietf.org>; Wed, 23 Mar 2022 07:54:15 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=apple.com; h=from : content-type : content-transfer-encoding : mime-version : subject : message-id : date : to; s=20180706; bh=sT9N9ZZNuUkAacPt1Wz7xhJ8IQsQSlc6EN36FGpcvEo=; b=abeHb0qrrFAcbAlA0sA/mMxjDOZiZGnxADTuTGJxe1Qaur6IKwVhb1hcWsvkDIU2Mozp vXB5SBM5IXNJlHQdagLdUhyFsTY2cjSz4ZexzAJ66hUrepJob9BwAzKHh14Lh45H75KY 1h30CVSSdcBMElwmK+9/aKtDVAtpDm3x6qhrXW9LBPsfSKuR8OPrl0E1xQsd5d8YoynS InItYljvTg8qcnq1foyNtQlPuDQ6WfcjNXCSl569Ju+ctd1d1oFw78noFCToTd8mi31X 6TO/w158W/j0wwbywADAXnMlKBYyHVnQNnHKaZOMxsf1oCQw6l9Jm0L6qbWwuBh62GyT CQ==
Received: from crk-mailsvcp-mta-lapp02.euro.apple.com (crk-mailsvcp-mta-lapp02.euro.apple.com [17.66.55.14]) by rn-mailsvcp-ppex-lapp45.rno.apple.com with ESMTP id 3ewdfsv89y-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO) for <113attendees@ietf.org>; Wed, 23 Mar 2022 07:54:15 -0700
Received: from crk-mailsvcp-mmp-lapp03.euro.apple.com (crk-mailsvcp-mmp-lapp03.euro.apple.com [17.72.136.17]) by crk-mailsvcp-mta-lapp02.euro.apple.com (Oracle Communications Messaging Server 8.1.0.16.20220118 64bit (built Jan 18 2022)) with ESMTPS id <0R9700O9NDEE0H00@crk-mailsvcp-mta-lapp02.euro.apple.com> for 113attendees@ietf.org; Wed, 23 Mar 2022 14:54:14 +0000 (GMT)
Received: from process_milters-daemon.crk-mailsvcp-mmp-lapp03.euro.apple.com by crk-mailsvcp-mmp-lapp03.euro.apple.com (Oracle Communications Messaging Server 8.1.0.16.20220118 64bit (built Jan 18 2022)) id <0R9700T00DBIGC00@crk-mailsvcp-mmp-lapp03.euro.apple.com> for 113attendees@ietf.org; Wed, 23 Mar 2022 14:54:14 +0000 (GMT)
X-Va-A:
X-Va-T-CD: 996b8de3dc386c23cef7bfd54513875f
X-Va-E-CD: 4d4df221b573ead291a830bb81d1aa8a
X-Va-R-CD: ab5272d2bd7fc17882debb90249a6ff8
X-Va-CD: 0
X-Va-ID: bfb23894-a89d-47f2-be86-9070ee5cedfe
X-V-A:
X-V-T-CD: 996b8de3dc386c23cef7bfd54513875f
X-V-E-CD: 4d4df221b573ead291a830bb81d1aa8a
X-V-R-CD: ab5272d2bd7fc17882debb90249a6ff8
X-V-CD: 0
X-V-ID: 578ba79e-e452-4a4a-9035-b6b76d6f0dea
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.425, 18.0.850 definitions=2022-03-23_04:2022-03-23, 2022-03-23 signatures=0
Received: from [17.235.210.25] (unknown [17.235.210.25]) by crk-mailsvcp-mmp-lapp03.euro.apple.com (Oracle Communications Messaging Server 8.1.0.16.20220118 64bit (built Jan 18 2022)) with ESMTPSA id <0R9700T1MDECWZ00@crk-mailsvcp-mmp-lapp03.euro.apple.com> for 113attendees@ietf.org; Wed, 23 Mar 2022 14:54:13 +0000 (GMT)
From: Stuart Cheshire <cheshire@apple.com>
Content-type: text/plain; charset="utf-8"
Content-transfer-encoding: quoted-printable
MIME-version: 1.0 (Mac OS X Mail 13.4 \(3608.120.23.2.7\))
Message-id: <0B026A5C-FAFA-4477-9403-90D99680F2EF@apple.com>
Date: Wed, 23 Mar 2022 15:54:11 +0100
To: 113attendees@ietf.org
X-Mailer: Apple Mail (2.3608.120.23.2.7)
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.425, 18.0.850 definitions=2022-03-23_04:2022-03-23, 2022-03-23 signatures=0
Archived-At: <https://mailarchive.ietf.org/arch/msg/113attendees/36nXBX_8ero-agO-fF-V_hjp2kg>
Subject: [113attendees] Network Responsiveness at IETF meeting
X-BeenThere: 113attendees@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Mailing list for IETF 113 attendees <113attendees.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/113attendees>, <mailto:113attendees-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/113attendees/>
List-Post: <mailto:113attendees@ietf.org>
List-Help: <mailto:113attendees-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/113attendees>, <mailto:113attendees-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 23 Mar 2022 14:54:20 -0000

On Monday morning in IPPM (IP Performance Measurement) Christoph Paasch, Randall Meyer (Apple) and William Hawkins (University of Cincinnati) presented a new testing methodology for testing “Responsiveness under Working Conditions”.

(Full disclosure: I am not unbiased here; I have also been involved with this work.)

For those who haven’t heard about this already, instead of recording the best-case ping time on an idle network (like so many network tests do) the “Responsiveness under Working Conditions” test measures the end-to-end application-layer round trip time while the network is also being used to transfer a realistic amount of data.

In this context, “a realistic amount of data” means enough to saturate typical residential upstream and downstream links, such that the intelligence of the buffer management at the respective bottleneck links is exposed. (Saturating upstream and downstream links is not that unusual -- a single smartphone should be able to do that easily. If you send a photograph or a video to a friend, and your smartphone is *not* sending that as fast as your upstream connection can carry it, then send a bug report to the vendor. Unless you have multi-gigabit Internet service to your home, your smartphone or computer should be easily capable of fully using your network capacity.)

Also, the round trip time is not measured using ICMP “ping” messages, because that risks encouraging vendors to implement special-case optimizations for ICMP packets, which might artificially improve benchmarks numbers but would not actually improve the quality of user experience in any useful way. This test measures the application-layer round trip time because that is what affects user experience. (Every time you are watching a streaming video, and you skip ahead to a different part of that video, or to a different video entirely, and you’re then watching a spinning “buffering” indicator before the new video starts playing, that’s mostly because the new video data you want is stuck at the back of a queue somewhere in the network, waiting behind the previously-requested video data that you no longer want. Avoiding excessive queue buildup in the network avoids the long wait for new data to arrive.)

Finally, rather than reporting round trip time in milliseconds, which is a fairly abstract unit to many people, the test instead reports “round-trips per minute” (RPM). This has the nice property of being a metric where bigger is better (like upload and download throughput) which normal people can relate to. It has a typical range from a few hundred to a few thousand RPM, expressed as a three- or four-digit integer, with no fractions or decimal places required.

While here at the IETF meeting in Vienna, I decided to test the various Wi-Fi networks we have available, and report the Responsiveness scores for each.

Presented without comment, here are the results I measured this afternoon while sitting in tcpm in Grand Klimt Hall 2:

ietf            229 RPM
ietf-nat64      225 RPM
ietf-hotel       30 RPM
Hilton Honors   731 RPM

You can try this test for yourself, either here at the IETF meeting, or on your own home or company network.

On macOS 12 (“Monterey”) you can run the networkQuality command-line tool in a Terminal window to see the network’s RPM score.

On iOS 15 you can enable the RPM test by following the instructions here:
<https://support.apple.com/en-us/HT212313>

On other platforms you can use William Hawkins’s Network Responsiveness test written in Go, available here:
<https://github.com/network-quality/goresponsiveness>

Note that these tools are still under development. One area we are still working on is improving the consistency and repeatability of the results. Ideally repeated runs of the test should give comparable results within ±10%; we are not there yet.

The Internet Draft describing how the responsiveness test works is here:
<https://datatracker.ietf.org/doc/html/draft-ietf-ippm-responsiveness>

There’s a video from the Apple developer conference last year which explains this:
<https://developer.apple.com/videos/play/wwdc2021/10239/>

Monday’s IPPM presentation is here:
<https://datatracker.ietf.org/meeting/113/materials/slides-113-ippm-responsiveness-under-working-conditions-00>

Stuart Cheshire