feat(s2n-quic-dc): wire up the recv pool for tokio clients #2533
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of changes:
This change wires up the recv pool to the tokio testing client. The tokio environment is configured to spawn a number of tasks that poll socket messages and then dispatch them to the appropriate queue_id.
For clients, it will not enable REUSE_PORT, which should get some nice benefits of better utilizing network paths due to tuple hashing.
Call-outs:
The server will come in a follow-up PR - it's quite a bit more complicated since the recv pool needs to coordinate with the acceptor tasks.
Testing:
Since this is just switching from one implementation to another, the functionality should be tested in the existing tests. I will be adding more integration-level tests in a follow-up to increase use-case coverage (request/response, etc).
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.