Closed Bug 1613790 Opened 5 years ago Closed 5 years ago

Experiment: Measure and compare performance of TRR providers

Categories

(Firefox :: Security, task, P1)

task

Tracking

()

VERIFIED FIXED
Firefox 75
Tracking Status
firefox74 --- verified
firefox75 --- verified

People

(Reporter: nhnt11, Assigned: johannh)

References

(Blocks 2 open bugs)

Details

Attachments

(3 files, 1 obsolete file)

No description provided.
Group: mozilla-employee-confidential
Component: Security → Shield Study
Product: Firefox → Shield
Group: mozilla-employee-confidential
Assignee: nobody → nhnt11
Status: NEW → ASSIGNED
Attached file data-review.md (obsolete) —

The only answer I haven't filled out is the one about where the analysis will be shared. Tim can probably help with that. I'd appreciate any corrections or clarifications for the other answers as well. Thanks!

Attachment #9126988 - Flags: data-review?(tdsmith)
Attachment #9126988 - Flags: data-review?(chutten)
Attached file Data collection review

I fleshed it out a little bit. I'll leave this for chutten since I've been involved in the telemetry design.

Attachment #9126988 - Attachment is obsolete: true
Attachment #9126988 - Flags: data-review?(tdsmith)
Attachment #9126988 - Flags: data-review?(chutten)
Attachment #9126999 - Flags: data-review?(chutten)

Here are the prefs that control this module:

doh-rollout.trrRace.trrList: comma-separated list of TRR endpoints to test. e.g. "https://mozilla.cloudflare-dns.com/dns-query, https://trr.dns.nextdns.io/" (omit the quotes, obviously). Defaults to an empty list.

doh-rollout.trrRace.canonicalDomain: the canonical domain that we control. Subdomains will be generated against this. Defaults to "firefox-dns-perf-test.net", the sole purpose of this pref is to allow remotely overriding this if we need to for some reason.

doh-rollout.trrRace.randomSubdomainCount: Number of random subdomains to test per TRR. Defaults to 5.

doh-rollout.trrRace.popularDomains: Comma-separated list of "popular" domains - for cached lookups. Defaults to "google.com, facebook.com, apple.com" (without the quotes, obviously)

doh-rollout.trrRace.enabled: Causes the measurements to run when set, or if true at startup. Note: this has no effect if the complete pref is set to true! See below.

doh-rollout.trrRace.complete: This is set to true when we have completed our measurements and recorded telemetry. If this is set, the enabled pref will not cause us to re-run measurements.

I believe the debug failures in the previous try push can be fixed by removing nsISupports from the QueryInterface list. Pushed that idea to try: https://treeherder.mozilla.org/#/jobs?repo=try&revision=8bdc37df3ff0960eace7a2caa5764626fc074657

Comment on attachment 9126999 [details] Data collection review QUESTIONS: Can we apply some sort of filter to make absolutely certain that the `domain` is only ever in a known list of possibilities? I have concerns about that aspect of the collection and would feel better if there was some sort of set-membership or even regex filter preventing accidental leakage. DATA COLLECTION REVIEW RESPONSE: Is there or will there be documentation that describes the schema for the ultimate data set available publicly, complete and accurate? Yes. This collection is Telemetry so is documented in its definitions file [Events.yaml](https://hg.mozilla.org/mozilla-central/file/tip/toolkit/components/telemetry/Events.yaml) and the [Probe Dictionary](https://telemetry.mozilla.org/probe-dictionary/). Is there a control mechanism that allows the user to turn the data collection on and off? Yes. This collection is Telemetry so can be controlled through Firefox's Preferences. If the request is for permanent data collection, is there someone who will monitor the data over time? No. This collection will expire in Firefox 80. Using the category system of data types on the Mozilla wiki, what collection type of data do the requested measurements fall under? Category 1, Technical. Is the data collection request for default-on or default-off? Default on for all channels, when enabled by Normandy. Does the instrumentation include the addition of any new identifiers? No. Is the data collection covered by the existing Firefox privacy notice? Yes, pending answer to question. Does there need to be a check-in in the future to determine whether to renew the data? Yes. :tdsmith is responsible for renewing or removing the collection before it expires in Firefox 80. --- Result: datareview+, pending :tdsmith's answer
Flags: needinfo?(tdsmith)
Attachment #9126999 - Flags: data-review?(chutten) → data-review+

Thanks for the review. That works for me. I left a review comment in Phabricator.

Flags: needinfo?(tdsmith)
Assignee: nhnt11 → jhofmann
Type: defect → task
Component: Shield Study → Security
Priority: -- → P1
Product: Shield → Firefox
Blocks: 1617845
Pushed by jhofmann@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/a53749907dee Implement module to measure performance of TRRs and send telemetry. r=johannh,dragana,valentin https://hg.mozilla.org/integration/autoland/rev/e45f9aabdc9e Implement unit tests for TRRPerformance module. r=johannh,dragana,valentin
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 75

Comment on attachment 9126594 [details]
Bug 1613790 - Implement module to measure performance of TRRs and send telemetry. r=johannh!,dragana!,valentin!

Beta/Release Uplift Approval Request

It should have no user-visible impact

  • Is this code covered by automated tests?: Yes
  • Has the fix been verified in Nightly?: No
  • Needs manual test from QE?: Yes
  • If yes, steps to reproduce: This experiment has its own QA team
  • List of other uplifts needed: None
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): The experiment itself should not impact the user experience at all, even when turned on. When turned off, it doesn't do anything except listen for the pref to turn it on. Any bugs in the code that's being uplifted should only impact the experiment, which we could delay in case of issues.
  • String changes made/needed: None
Attachment #9126594 - Flags: approval-mozilla-beta?
Attachment #9126856 - Flags: approval-mozilla-beta?
Flags: qe-verify+
Blocks: 1618215
Whiteboard: [post-critsmash-triage]
QA Whiteboard: [qa-triaged]
Whiteboard: [post-critsmash-triage]

Comment on attachment 9126594 [details]
Bug 1613790 - Implement module to measure performance of TRRs and send telemetry. r=johannh!,dragana!,valentin!

Needed for 74, uplift approved for 74 beta 9, thanks.

Attachment #9126594 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
Attachment #9126856 - Flags: approval-mozilla-beta? → approval-mozilla-beta+

@Johann, is this bug actionable at this point?
We manually added the experiment’s preference (doh-rollout.trrRace.enabled = true) in the latest Nightly build, but didn't notice any effect in the browser:

  • the preferences mentioned in comment 6 were not added,
  • the "security.doh.trrPerformance" telemetry event was not generated in the Events section from "about:telemetry".
Flags: needinfo?(jhofmann)

(In reply to Carmen Fat [:cfat] - Ecosystem QA from comment #14)

@Johann, is this bug actionable at this point?
We manually added the experiment’s preference (doh-rollout.trrRace.enabled = true) in the latest Nightly build, but didn't notice any effect in the browser:

  • the preferences mentioned in comment 6 were not added,
  • the "security.doh.trrPerformance" telemetry event was not generated in the Events section from "about:telemetry".

I replied to your email, let me know if you need anything else :)

Thanks!

Flags: needinfo?(jhofmann)
Depends on: 1620006

Multiple default TRR racing

Firefox RC 74.0

We have finished testing the Multiple default TRR racing experiment for Firefox 74.

Quality status: GREEN - SHIP IT

Why is this feature green?

  • During testing, we haven’t found any issues.

Testing Summary:

Tested Platforms:

  • Windows 10 x64

  • macOS 10.15.1

  • Ubuntu 18.04 x64

Tested Firefox versions:

  • Firefox RC 74.0 en-US

Regards,
Robert Martin

Status: RESOLVED → VERIFIED
QA Whiteboard: [qa-triaged]
Flags: qe-verify+
Depends on: 1631822
See Also: → 1643429
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: