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

Implement the ping-pong flow #352

Closed
wants to merge 3 commits into from
Closed

Conversation

cjpatton
Copy link
Contributor

WIP (not ready for review).
Based on #351 (merge that first).
Partially addresses #350.

Implement the new aggregation flow as of DAP spec PR
ietf-wg-ppm/draft-ietf-ppm-dap#393.

This PR introduces the following changes:

* In the current "leader-as-broadcast-channel" flow, the Leader gathers
  each round of prep shares from the Helpers, computes the prep message,
  and broadcasts it to the Helpers in the next round. In the new flow,
  we assume there is exactly one Helper, and each Aggregator runs the
  prep process as far as it it can until it needs input from its peer.
  This results in a significant reduction in the number of HTTP requests
  sent.

* The `Report` serialization has changed in light of specializing the
  protocol for two Aggregators.

* A new `PrepareStepState` variant is defined for signaling commitment
  to the share and transmitting the prep message.

TODO List the code changs that were needed. We've tried to maintain test
coverage, however some tests are no longer relevant since (a) we only
support 1-round VDAFs and (b) draft04 requires one request to complete
aggregation instead of two.
Base automatically changed from cjpatton/350/1/bump to main July 13, 2023 20:42
@cjpatton
Copy link
Contributor Author

Superseded by #409

@cjpatton cjpatton closed this Oct 13, 2023
@cjpatton cjpatton deleted the cjpatton/350/2/ping-pong branch February 13, 2024 17:43
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.

1 participant