Skip to content

Conversation

Spiffyk
Copy link

@Spiffyk Spiffyk commented Jul 31, 2023

This commit adds an echo server that reflects queries back at the sender. May be used for determining the baseline performance of QUIC (or, at least, of the quic-go implementation in combination with the client's QUIC implementation).

Copy link
Member

@fcelda fcelda left a comment

Choose a reason for hiding this comment

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

Thank you for the contribution. Please, do you mind checking the comments below? I don't insist on all changes.

This commit adds an echo server that reflects queries back at the
sender. May be used for determining the baseline performance of QUIC
(or, at least, of the `quic-go` implementation in combination with the
client's QUIC implementation).
ReadAll is apparently SLOW for our purposes. Reading into a fixed-size
buffer seems to be much better.
This allows developers to analyze the traffic using Wireshark, even when
it is encrypted.
@Spiffyk
Copy link
Author

Spiffyk commented Dec 7, 2023

I have updated quic-go, which now supports 0-RTT (supported by the in-development version of DNS Shotgun with QUIC support - I use this echo server to test that). It now however requires Go >=1.20 - is that okay?

Another improvement is the addition of the -keylog string flag that makes the server (both echo and proxy) write TLS keys into the specified file, which is useful for Wireshark analysis.

@Spiffyk Spiffyk requested a review from fcelda December 7, 2023 16:08
For testing purposes, a -reset option that randomly resets streams.
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.

2 participants