Skip to content
This repository has been archived by the owner on Aug 11, 2020. It is now read-only.

TODO: Test Flow Control #290

Open
16 tasks
jasnell opened this issue Jan 21, 2020 · 0 comments
Open
16 tasks

TODO: Test Flow Control #290

jasnell opened this issue Jan 21, 2020 · 0 comments

Comments

@jasnell
Copy link
Member

jasnell commented Jan 21, 2020

Need a test that verifies flow control.

  • Verify QUIC honors flow control window by not sending, nor attempting to send, data while flow congested.
  • Verify QUIC never exceeds the session and stream flow control windows
  • Verify QUIC expands the session and stream flow control windows appropriately.
  • Verify flow control operates appropriately under packet loss conditions
  • Verify cryptographic buffering limits are in place (handshake is exempt from flow control)
  • Verify that initial flow control window size is adequate
  • ngtcp2 determines when to send MAX_STREAM_DATA and MAX_DATA frames, need to verify those are being sent predictably and reasonably.
  • Verify that a sender is appropriately sending STREAM_DATA_BLOCKED and DATA_BLOCKED frames when necessary
  • Ensure that flow control deadlocks are avoided
  • Ensure that stream final size is properly handled as a final indication of flow control credit used
  • Ensure that stream final size never changes
  • Ensure that receipt of data at or beyond final size is rejected appropriately with a FINAL_SIZE_ERROR response
  • Verify limits on number of concurrently open and total opened streams
  • Verify that a QUIC endpoint sends MAX_STREAMS frames appropriately to allow new streams
  • Verify that max stream id will never exceed 2^60
  • Verify that STREAM_LIMIT_ERROR is used appropriately
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant