[RSSAC Caucus] Implementing RSSAC057

Wessels, Duane dwessels at verisign.com
Fri Dec 10 17:25:09 UTC 2021


Hi Andrew,

I think this looks really good!  Thank you for working on this implementation.  

It looks like maybe your latencies are reported in seconds, and the document says it should be milliseconds?

Looking at the data, I admit I was surprised to see 10x COM/NS and COM/DS measurements.  Rereading RSSAC057, I can see why you did that, although I’m not sure that was the intention of the document?  I get why it is a good idea to make 10 queries to average out latency, but I’m not sure we really need to do that for all of the query types. Over all transports and protocols each identity receives 40 COM/NS and 40 COM/DS queries, which seems like a lot.  Do we really expect COM/DS, COM/NS, and hostname.bind latencies to be all that different? Does someone remember the rationale here?

In your JSON structure you have:

        "CH": {
          "ipv4": {
            "udp": {
              ".": [

and

        "NS": {
          "ipv4": {
            "udp": {
              "com": [

I might suggest that something like this might be a little better:

      “hostname.bind/CH/TXT”: {
        “ipv4”: {


      “com/IN/NS”: {
        “ipv4”: {

mostly because “CH” and “NS” and “DS” aren’t from the same set of thing.

DW





> On Dec 10, 2021, at 6:14 AM, Andrew McConachie <andrew.mcconachie at icann.org> wrote:
> 
> Dear RSSAC Caucus Members,
> 
> I’ve been working on an implementation of RSSAC057: Requirements for Measurements of the Local Perspective on the Root Server System.
> 
> It can be found here:
> <https://github.com/rssac-caucus/perf_root>
> 
> It’s a python script that relies heavily on dnspython. It has a bunch of CLI options, but if executed without any options it will perform according to RSSAC057 and output JSON when it finishes. Attaced is a JSON file from running it at an Amsterdam datacenter.
> 
> There are two discrepencies I note below. Otherwise I believe it conforms with RSSAC057.
> - It only performs UDP traceroutes and RSSAC057 specifies UDP and TCP traceroutes. TCP traceroute requires root and I didn’t think it wise for this script to require root.
> - RSSAC057 specifies a traceroute probe timeout of 5 seconds. I instead chose to use the variable default of the traceroute binary judging that it probably knows best.
> 
> And below are a couple gotchas I note for people interested in testing it.
> - It requires dnspython 2.2.0, which is really new. I needed 2.2.0 because it adds the ability to set specific DNS flags in dns.message.make_query().
> - I’ve developed this on Debian Linux, but it theoretically should work on anything that supports python3 and dnspython. The thing that will break is the python mulItprocessing.pool library which I use to perform all the testing asynchronously. I could not get this library to properly handle UNIX signals on OpenBSD, so I don’t recommend running this on OpenBSD. It did work on FreeBSD when I tested it. I’m definitely interested in the experiences of others on OSs other than Linux.
> 
> Thanks,
> Andrew
> 
> 
> <rootperf.json>
> Caution: This email originated from outside the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe. 
> 
> _______________________________________________
> rssac-caucus mailing list
> rssac-caucus at icann.org
> https://secure-web.cisco.com/15Hdo9RHzZrgLQxz5ijxysJBTJ46H2iBrlwafVQnrpUBWzY9x-uJTTeCq7wuIYi51CUozYhCWtbKgzxbP5855M0XfNX1XVnyr-FbKExzNJ_AiEZWashpO5qcvUMCzQPMvnzUSxu_GYkmv0YrnVm0Y48uQ3fnyU74BhVJVP_iHBLyOxXx2LKdsPxBV_CYrm7VLAe5PG_JSjX-mAU4DxDZKwgUzWYUIQGZ_rekniKh5WU6PAIGeKOk8x8n4utIpoBU6/https%3A%2F%2Fmm.icann.org%2Fmailman%2Flistinfo%2Frssac-caucus
> 
> _______________________________________________
> By submitting your personal data, you consent to the processing of your personal data for purposes of subscribing to this mailing list accordance with the ICANN Privacy Policy (https://secure-web.cisco.com/1nPzmve-FV7p-2a1WVud-XludWxgviAXNmNiHSyT7zbOyjfKhezkwd-Y6CrPaglJw49fTGY9uIGvgTAIbfloV-qeYwVuywQFIkuTi9jmqPdP233tfGxXSL91PxKSWIZwjF0ighvnC3lJi9eoUe0Wbd2Z3nGd001zIpQ7PCapqlq8gmp0RuJad7_NRgO2Kf4tbOLqWkd2dBq6iQXszV_808USJmOn5Xq0Njzril1VVFFrUCVa-OeKtL89fCJXUmauV/https%3A%2F%2Fwww.icann.org%2Fprivacy%2Fpolicy) and the website Terms of Service (https://secure-web.cisco.com/1padnI8AIN6nBD0EyIYa0JO6w5uNWAYByjj1VPUUvtpO3XxXU6F3jVeCpZ2kltZgyp2dzgh65_ii16FR3srmxwpFGZsZ_XJfdv1uM4SAXZus35qIgAxgkknNuV7rXgGiP6mBA02FutjzVrzlpZKXkDzoqoazOhu9a55tPAJhBw258vrNUMeHoOrYgVRO4g1jcluJMqoD0hCgOUhHq4Z6gLNjmNf1Pt6p7s0nUXWT6ndz1cjclrNi-R8dlYmXbObg_/https%3A%2F%2Fwww.icann.org%2Fprivacy%2Ftos You can visit the Mailman link above to change your membership status or configuration, including unsubscribing, setting digest-style delivery or disabling delivery altogether (e.g., for a vacation), and so on.



More information about the rssac-caucus mailing list