Skip to content

Provide guidelines for mitigation algorithms #241

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
Nov 3, 2023
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 47 additions & 3 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -883,7 +883,7 @@

Supporting algorithms

  • set |observer|.{{PressureObserver/[[ObservationWindow]]}} to an [=implementation-defined=] randomized integer value in
    milliseconds within an [=implementation-defined=] range, e.g., random between 300000 and 600000 (5 and 10 minutes).
    milliseconds within an [=implementation-defined=] range.
  • set |observer|.{{PressureObserver/[[MaxChangesThreshold]]}} to an [=implementation-defined=] randomized integer
    Expand Down Expand Up @@ -1429,6 +1429,39 @@

    Rate obfuscation

    received from the platform collector during this penalty.

    Rate obfuscation normative parameters

    Based on implementation experience, implementers must use:
    • a range in between 50 and 100 changes for PressureObserver's {{PressureObserver/[[MaxChangesThreshold]]}} internal slot.
    • a range in between 5000 milliseconds and 10000 milliseconds for PressureObserver's {{PressureObserver/[[PenaltyDuration]]}} internal slot.
      These values are subject to change and are updated based on further implementation experience and research findings.

      Rate obfuscation non-normative parameters

      This section is non-normative.

      Based on implementation experience, implementers are advised to use:
      • a range in between 300000 milliseconds (5 minutes) and 600000 milliseconds (10 minutes) for PressureObserver's
        {{PressureObserver/[[ObservationWindow]]}} internal slot.
        These values are subject to change and are updated based on further implementation experience and research findings.

        Break calibration

        Expand All @@ -1442,14 +1475,25 @@

        Break calibration

        at runtime when this mitigation is running continuously. Any attempts to recalibrate
        will similarly be mitigated against.

        <div class="note">
        <aside class="note">
        Modern browsers throttle background tabs using [=implementation-defined=]
        heuristics in order to reduce resource usage. For example, after a period of
        no user interaction a background tab can be throttled that will influence
        the global pressure state of the system. This built-in feature of modern
        browsers further improves the effectiveness of the break calibration
        mitigation.

        Break calibration parameters

        This section is non-normative.

        Based on implementation experience, implementers are advised to apply the mitigation
        to a randomized time value within a range between 120000 milliseconds (2 minutes) and 240000 milliseconds (4 minutes).

        These values are subject to change and are updated based on further implementation experience and research findings.

        Same-origin restriction

        Expand Down