Meeting Date: 2022-03-22 Minutes taken by: Matt Attendees: Dmitry Belyavsky Matthias St. Pierre Shane Lontis Matt Caswell Nicola Tuveri Richard Levitte Tomas Mraz Tim Hudson Paul Dale Hugo Landau Agenda: * Nominate a minute taker and confirm agenda * Agree minutes from previous meeting * Review outstanding actions * Review the QUIC API proposal * Discuss release requirements policy (technical-policies #27) * Performance * Review issues with OTC hold (30 minutes) * Review draft technical policies * Allocation of tasks to staff * Agree agenda for next meeting * AOB ** Nominate a minute taker and confirm agenda Matt volunteered to take the minutes. Proposed: Matt, seconded: Tim Agenda for the meeting agreed. Proposed: Matt, seconded: Tim, Tomas ** Agree minutes from previous meeting Last week minutes were approved. Proposed: Tomas, seconded: Matt ** Review outstanding actions AI: Hugo to repeat the tests in 15199 and get new performance figures. Done AI: Matt to do adjustments on the QUIC technical requirements document: - to add 6 month releases, and internal CI for primary platforms as objectives to the document. Also explicitly mention that in MVP for the next release the pluggable record layer interface will be internal. - to mention the internal plumbing should allow for the fact that we may want to be able to support single copy APIs in future. In addition to the existing interface. And put the existing "single copy" bullets under it. The performance comparability should be aimed at a future release. - to add 'Support' to the last bullet of MVP requirements. Done AI: Matt to update the document and start a vote after two days unless there is a major discussion ongoing on the PR. In Progress ** Review the QUIC API proposal The current proposal does not cover what the API will look like in 3.1 for the MVP. Discussion around how we would handle timer based events in the "simple one line change" to an application for MVP. Possibly with a thread. We will have both the ability to run timer events via a thread AND the ability to run via idle callback. We need some way of hiding the differences between the TCP socket and UDP socket creation. How will we do blocking? How do we work without a visible event capability for existing applications? Discussion about being able to configure which protocol we want via a string. AI: Update the QUIC API proposal with approach to solving the 5 problems (1) timer based events (2) TCP vs UDP socket creation (3) blocking (4) no visible event capability for existing apps (5) configure protocol via a string. AI: Separate out in the API proposal the subset we will implement for MVP. AI: Matt to extend out the description of SSL_new_stream() to make it clearer that in the TLS context it creates a new connection. Discussion about the need for good demos and documentation for QUIC. ** Discuss release requirements policy (technical-policies #22) Requirement is to take the existing text (see technical-policies #22 and main repo #15326) AI: Tomas to write a draft release requirements policy in the next sprint ** Performance Tim provided some links on peformance: https://datatracker.ietf.org/doc/html/draft-banks-quic-performance https://microsoft.github.io/msquic/index.html#hardware ** Review issues with OTC hold (30 minutes) #17931 (lh stats) Discussion about whether this is ok for master. Proposal that we could remove the hash counting code completely. OTC decision is to always report 0 for the stats in both master and 3.0. In addition we should deprecate the functions in master. ** Review draft technical policies Deferred ** Allocation of tasks to staff No change. ** Agree agenda for next meeting * Nominate a minute taker and confirm agenda * Agree minutes from previous meeting * Review outstanding actions * Review the QUIC API * Review issues with OTC hold (30 minutes) * Review draft technical policies * Allocation of tasks to staff * Agree agenda for next meeting * AOB ** AOB None ** New and carried over action items [transported from above]: AI: Matt to update the technical requirements document and start a vote after two days unless there is a major discussion ongoing on the PR. AI: Update the QUIC API proposal with approach to solving the 5 problems (1) timer based events (2) TCP vs UDP socket creation (3) blocking (4) no visible event capability for existing apps (5) configure protocol via a string. AI: Separate out in the API proposal the subset we will implement for MVP. AI: Matt to extend out the description of SSL_new_stream() to make it clearer that in the TLS context it creates a new connection. AI: Tomas to write a draft release requirements policy in the next sprint