Skip to content
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

Integrate MSAK test #67

Merged
merged 6 commits into from
Feb 27, 2024
Merged

Integrate MSAK test #67

merged 6 commits into from
Feb 27, 2024

Conversation

robertodauria
Copy link
Contributor

@robertodauria robertodauria commented Feb 26, 2024

This PR integrates the MSAK javascript client and runs the MSAK test either before or after the ndt7 test (randomly, with a 50% probability for each option).

The MSAK client is currently configured as an ndt7 test (10s, single BBR stream). This will provide easily comparable data to validate MSAK's throughput1 protocol and the server/client implementations.

Preview available at https://mlab-sandbox.web.app

Closes #63.


This change is Reviewable

Copy link
Contributor

@stephen-soltesz stephen-soltesz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed 4 of 6 files at r1.
Reviewable status: 0 of 1 approvals obtained (waiting on @robertodauria)


app/measure/measure.html line 49 at r1 (raw file):
We also discussed a simple message below the results signaling that we will run two tests back to back. Maybe something like:

We are temporarily running two tests back to back to calibrate a new measurement protocol. This means results may take a little longer to appear than usual. Thank you for your help.


app/measure/measure.js line 189 at r1 (raw file):

function uuidv4() {
  return "10000000-1000-4000-8000-100000000000".replace(/[018]/g, c =>
    (c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16)

Please include a link to this: https://en.wikipedia.org/wiki/Universally_unique_identifier#Version_4_(random) - the RFC did not help me recognize this as correct, (nor does the wiki link) but knowing that uuid v4 means random helps. I'm taking most of this logic on faith.

Copy link
Contributor Author

@robertodauria robertodauria left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PTAL again?

Reviewable status: 0 of 1 approvals obtained (waiting on @stephen-soltesz)


app/measure/measure.html line 49 at r1 (raw file):

Previously, stephen-soltesz (Stephen Soltesz) wrote…

We also discussed a simple message below the results signaling that we will run two tests back to back. Maybe something like:

We are temporarily running two tests back to back to calibrate a new measurement protocol. This means results may take a little longer to appear than usual. Thank you for your help.

Done.


app/measure/measure.js line 189 at r1 (raw file):

Previously, stephen-soltesz (Stephen Soltesz) wrote…

Please include a link to this: https://en.wikipedia.org/wiki/Universally_unique_identifier#Version_4_(random) - the RFC did not help me recognize this as correct, (nor does the wiki link) but knowing that uuid v4 means random helps. I'm taking most of this logic on faith.

Done. Also, I've linked to the SO question that code comes from.

Copy link
Contributor

@stephen-soltesz stephen-soltesz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Functional changes :lgtm:

A few suggestions about presentation.

Reviewed 1 of 2 files at r2.
Reviewable status: :shipit: complete! 1 of 1 approvals obtained (waiting on @robertodauria)


app/measure/measure.html line 35 at r2 (raw file):

      </div>
      </p>
      <small>We are temporarily running two tests back to back to calibrate a new measurement protocol. This means

Can this be italics? Right now it blends into the rest of the page, people may not notice it.


app/measure/measure.html line 60 at r2 (raw file):

              <td></td>
              <td>NDT</td>
              <td>MSAK</td>

Should these be links to learn more? Do we have an msak page? Adding a link that will be populated could work too, e.g. https://www.measurementlab.net/tests/msak/

Copy link
Contributor Author

@robertodauria robertodauria left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewable status: :shipit: complete! 1 of 1 approvals obtained (waiting on @stephen-soltesz)


app/measure/measure.html line 35 at r2 (raw file):

Previously, stephen-soltesz (Stephen Soltesz) wrote…

Can this be italics? Right now it blends into the rest of the page, people may not notice it.

Done.


app/measure/measure.html line 60 at r2 (raw file):

Previously, stephen-soltesz (Stephen Soltesz) wrote…

Should these be links to learn more? Do we have an msak page? Adding a link that will be populated could work too, e.g. https://www.measurementlab.net/tests/msak/

Not a huge fan of introducing 404s, but the page is going to be there soon enough. I've added "?" with a link to the test description page.

@robertodauria robertodauria merged commit d2f0fe9 into main Feb 27, 2024
4 checks passed
@robertodauria robertodauria deleted the sandbox-roberto-msak branch February 27, 2024 15:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Integrate msak-js as multi-stream option
2 participants