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

Deal with packet_type and packet_number always being under header #30

Open
rmarx opened this issue Sep 7, 2020 · 2 comments
Open

Deal with packet_type and packet_number always being under header #30

rmarx opened this issue Sep 7, 2020 · 2 comments

Comments

@rmarx
Copy link
Member

rmarx commented Sep 7, 2020

Previously, events packet_dropped and packet_lost and packet_buffered had separate packet_number and packet_type fields. For draft02, these have been replaced to always using a header:PacketHeader field, so we need to update tools that look for those fields (mainly congestion graph).

Related to #8 and quicwg/qlog#40

@kixelated
Copy link

Hey Robin, thank you so much for making this fantastic tool.

I recently implemented qlog in my closed-source QUIC library. The logs load but none of the tabs work due to these fields getting renamed.

I'm gotten it working using a quick hack to rename these fields if found. Is that the approach that you'd like to take? If so I can clean up the code and submit a PR.

Also, would an example NDJSON draft-2 trace help? I could contribute that as well.

@rmarx
Copy link
Member Author

rmarx commented Dec 8, 2020

Hello Luke,

Thanks for the kind words and great to hear you're integrating qlog (does this mean Twitch is also using qlog btw? That would be awesome!)

The problem here is that I want to keep full backwards compatibility with qlog draft-01, since most people will keep using that for some time. As such, I need to transform -01 into -02 at load time, see the QlogLoader classes.

This is not overly difficult, but has a few edge cases to take into account, which is why I haven't done it yet. I am busy now preparing my doctoral thesis defense on December 15th, but plan to fix draft-02 support in qvis near the end of next week, so I'd prefer you wait for that if possible.

With regards to an NDJSON example, that -would- certainly be very interesting. Could you open a PR on https://github.com/quiclog/internet-drafts adding that to an "examples/draft-02" directory maybe? It would be good if the filename could describe the high-level contents (and maybe the protocols it uses, not sure if you're doing both QUIC and H3 atm). Also would be great if it properly set the "title" and "description" fields with some details for newer users.

Finally: I see you've also opened an issue on the I-D repository as well, which is great! I'd be very interested to hear about your experiences implementing qlog from the documents as a bit of an "outsider", to see if we can further improve the process. Feel free to open additional issues here or in the I-D repo.

Thanks again!

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

No branches or pull requests

2 participants