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

[WIP] benchmark: add basic QUIC benchmark #182

Draft
wants to merge 110 commits into
base: master
Choose a base branch
from
Draft

[WIP] benchmark: add basic QUIC benchmark #182

wants to merge 110 commits into from

Commits on Dec 11, 2019

  1. src: allow unique_ptrs with custom deleter in memory tracker

    PR-URL: #145
    Reviewed-By: James M Snell <[email protected]>
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    ad9d240 View commit details
    Browse the repository at this point in the history
  2. src: enable StreamPipe for generic StreamBases

    PR-URL: #150
    Reviewed-By: James M Snell <[email protected]>
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    fefa469 View commit details
    Browse the repository at this point in the history
  3. dgram: make UDPWrap more reusable

    Allow using the handle more directly for I/O in other parts of
    the codebase.
    
    PR-URL: #165
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Daniel Bevenius <[email protected]>
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    de9a741 View commit details
    Browse the repository at this point in the history
  4. quic: initial protocol implementation

    Co-authored-by: Anna Henningsen <[email protected]>
    Co-authored-by: Daniel Bevenius <[email protected]>
    Co-authored-by: gengjiawen <[email protected]>
    Co-authored-by: James M Snell <[email protected]>
    Co-authored-by: Lucas Pardue <[email protected]>
    Co-authored-by: Ouyang Yadong <[email protected]>
    Co-authored-by: Juan José Arboleda <[email protected]>
    Co-authored-by: Trivikram Kamat <[email protected]>
    8 people committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    57883dd View commit details
    Browse the repository at this point in the history
  5. deps: Add interface required to implement QUIC draft-17

    Ported from
    tatsuhiro-t/openssl@920a331
    
    PR-URL: #6
    Reviewed-By: Daniel Bevenius <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    fd87b2f View commit details
    Browse the repository at this point in the history
  6. deps: Remove EOED when SSL_MODE_QUIC_HACK is enabled

    Ported from
    tatsuhiro-t/openssl@920a331
    
    PR-URL: #6
    Reviewed-By: Daniel Bevenius <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    b26804b View commit details
    Browse the repository at this point in the history
  7. quic: support memory tracking

    Fixes: #59
    PR-URL: #145
    Reviewed-By: James M Snell <[email protected]>
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    455f965 View commit details
    Browse the repository at this point in the history
  8. doc: fix lint issues in quic.md

    PR-URL: #147
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Trivikram Kamat <[email protected]>
    danbev authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    acadf02 View commit details
    Browse the repository at this point in the history
  9. lib: fix typo in stream_base_commons.js

    Introduced in aa99a6a.
    
    PR-URL: #149
    Reviewed-By: James M Snell <[email protected]>
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    fef9d73 View commit details
    Browse the repository at this point in the history
  10. test: fix test-process-versions for QUIC

    PR-URL: #149
    Reviewed-By: James M Snell <[email protected]>
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    2f697d1 View commit details
    Browse the repository at this point in the history
  11. quic: test client connect invalid options

    PR-URL: #154
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Daniel Bevenius <[email protected]>
    trivikr authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    4ffd6ab View commit details
    Browse the repository at this point in the history
  12. quic: test invalid createSocket

    PR-URL: #153
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Daniel Bevenius <[email protected]>
    trivikr authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    de945c2 View commit details
    Browse the repository at this point in the history
  13. quic: default options parameter in constructor

    PR-URL: #152
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Daniel Bevenius <[email protected]>
    trivikr authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    74ce4d8 View commit details
    Browse the repository at this point in the history
  14. quic: compute retransmission timeout correctly

    Previously, if the expiry timestamp was in the future by less
    than 1ms, the retransmission timer would not have been scheduled.
    
    (This also removes an unused line from the test that this
    problem made flaky.)
    
    PR-URL: #157
    Reviewed-By: James M Snell <[email protected]>
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    1210b56 View commit details
    Browse the repository at this point in the history
  15. quic: client should work when receives invalid preferred address

    If we set `preferredAddressPolicy` to `accept` on `QuicClientSession`
    but receives an invalid preferred address, e.g. we don't define
    `preferredAddress` on the server, the `QuicClientSession` should still
    work. Before this PR, the included test will cause segmetation fault.
    
    PR-URL: #155
    Reviewed-By: James M Snell <[email protected]>
    oyyd authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    55c12a0 View commit details
    Browse the repository at this point in the history
  16. test: add tests for quic idleTimeout

    It would be better to add a test to ensure that the timeout is
    greater than the triple PTO if we can get the PTO.
    
    PR-URL: #160
    Reviewed-By: James M Snell <[email protected]>
    oyyd authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    081e1a4 View commit details
    Browse the repository at this point in the history
  17. test: make test-quic-process-cleanup work with --worker

    PR-URL: #159
    Reviewed-By: James M Snell <[email protected]>
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    72d5162 View commit details
    Browse the repository at this point in the history
  18. Revert "deps: Add interface required to implement QUIC draft-17"

    This reverts commit 170c5d0.
    
    PR-URL: #138
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    68ffa82 View commit details
    Browse the repository at this point in the history
  19. Revert "deps: Remove EOED when SSL_MODE_QUIC_HACK is enabled"

    This reverts commit ecda77c.
    
    PR-URL: #138
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    d55b970 View commit details
    Browse the repository at this point in the history
  20. deps: Port BoringSSL QUIC APIs

    PR-URL: #138
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    6ea8048 View commit details
    Browse the repository at this point in the history
  21. deps: update OpenSSL config

    PR-URL: #138
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    0088393 View commit details
    Browse the repository at this point in the history
  22. deps: update ngtcp2

    PR-URL: #138
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    0c0e89d View commit details
    Browse the repository at this point in the history
  23. [Upstream] deps: add handling for x509 and client hello cb

    This commit will need to be submitted upstream then backed out
    once it lands and we can update
    
    PR-URL: #138
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    6b58255 View commit details
    Browse the repository at this point in the history
  24. quic: move to ngtcp2_crypto

    PR-URL: #138
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    e66545a View commit details
    Browse the repository at this point in the history
  25. quic: fix build and tests

    The recent commits have broken the build, tests, and linting.
    
    One cctest is not fixed but rather disabled here.
    
    PR-URL: #162
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    8028d09 View commit details
    Browse the repository at this point in the history
  26. quic: fix idle timeout

    After ngtcp2 being updated, `ngtcp2_conn_get_idle_timeout` is renamed as
    `ngtcp2_conn_get_idle_expiry` which returns `ngtcp2_tstamp` instead of
    `ngtcp2_duration`.
    
    Refs: https://github.com/ngtcp2/ngtcp2/blob/6f40668cdce7db7c043d3a80c07f379841d8c51e/lib/ngtcp2_conn.c#L8604
    PR-URL: #166
    Reviewed-By: Anna Henningsen <[email protected]>
    oyyd authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    37d6d5e View commit details
    Browse the repository at this point in the history
  27. quic: implement sendFD() support

    Fixes: #75
    PR-URL: #150
    Reviewed-By: James M Snell <[email protected]>
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    0785819 View commit details
    Browse the repository at this point in the history
  28. test: add tests for quic

    Also fix some lint issues.
    
    PR-URL: #171
    Reviewed-By: Anna Henningsen <[email protected]>
    Reviewed-By: Trivikram Kamat <[email protected]>
    Reviewed-By: James M Snell <[email protected]>
    oyyd authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    5b6b128 View commit details
    Browse the repository at this point in the history
  29. quic: simplify alpn selection callback

    PR-URL: #167
    Reviewed-By: Daniel Bevenius <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    c93680f View commit details
    Browse the repository at this point in the history
  30. quic: extract tls handshake to QuicCryptoContext object

    PR-URL: #168
    Reviewed-By: Anna Henningsen <[email protected]>
    Reviewed-By: Daniel Bevenius <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    4f49a4b View commit details
    Browse the repository at this point in the history
  31. quic: coalesce QuicClientSession and QuicServerSession

    Eliminate the subclasses at the C++ level. Coalesce into
    a single QuicSession class to help keep things more
    manageable in preparation for the http3 enablement
    
    PR-URL: #168
    Reviewed-By: Anna Henningsen <[email protected]>
    Reviewed-By: Daniel Bevenius <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    0d615d7 View commit details
    Browse the repository at this point in the history
  32. src: fix lint issue in node_quic_session.cc

    PR-URL: #173
    Reviewed-By: Trivikram Kamat <[email protected]>
    Reviewed-By: Anna Henningsen <[email protected]>
    danbev authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    2293861 View commit details
    Browse the repository at this point in the history
  33. quic: use UDP code from dgram

    This simplifies the code quite a bit.
    
    PR-URL: #165
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Daniel Bevenius <[email protected]>
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    973d7ea View commit details
    Browse the repository at this point in the history
  34. quic: remove CleanupHook from Timer

    This means that we always need to use `DeleteFnPtr` to make sure
    that the timer is actually cleaned up, but I guess that’s an
    acceptable restriction for now.
    
    PR-URL: #165
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Daniel Bevenius <[email protected]>
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    672202c View commit details
    Browse the repository at this point in the history
  35. quic: use BaseObjectPtr to keep WriteWrap alive

    Keeping the JS object alive is not enough, because the
    per-Environment cleanup may destroy C++ objects even if
    their JS counterparts are still reachable.
    
    PR-URL: #165
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Daniel Bevenius <[email protected]>
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    2a88f26 View commit details
    Browse the repository at this point in the history
  36. quic: allow .connect() when socket is already bound

    PR-URL: #165
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Daniel Bevenius <[email protected]>
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    72fe66c View commit details
    Browse the repository at this point in the history
  37. quic: allow testing QUIC without real UDP handle

    Provide facilities to test `QUIC` sockets without an actual
    underlying UDP handle for more resilient tests.
    
    PR-URL: #165
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Daniel Bevenius <[email protected]>
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    9de15dd View commit details
    Browse the repository at this point in the history
  38. deps: update nghttp3

    PR-URL: #170
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    620edba View commit details
    Browse the repository at this point in the history
  39. quic: initial addition of QuicApplication

    PR-URL: #170
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    a5bfda5 View commit details
    Browse the repository at this point in the history
  40. deps: update ngtcp2

    PR-URL: #170
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    59ae2e0 View commit details
    Browse the repository at this point in the history
  41. quic: continued implementation of http/3

    PR-URL: #170
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    33a255a View commit details
    Browse the repository at this point in the history
  42. quic: implement memory tracking for QuicApplication

    This addresses a TODO comment.
    
    PR-URL: #178
    Reviewed-By: James M Snell <[email protected]>
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    b24bf7d View commit details
    Browse the repository at this point in the history
  43. test: enable test_quic_verifyhostnameidentity.cc

    This commit adds a suggestion for enabling the cctest
    test_quic_verifyhostnameidentity.cc.
    
    PR-URL: #169
    Reviewed-By: Anna Henningsen <[email protected]>
    danbev authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    be89e9a View commit details
    Browse the repository at this point in the history
  44. quic: allow multiple independent .connect() calls

    Explicitly allow calling `.connect()` multiple times to generate
    separate client sessions on the same socket. This requires making
    `kMaybeBind` call its callback even if the socket is already bound.
    
    PR-URL: #176
    Reviewed-By: James M Snell <[email protected]>
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    b42e28f View commit details
    Browse the repository at this point in the history
  45. quic: fix linting and tests

    Once again, linter and tests have been failing because of recent
    changes. :)
    
    PR-URL: #179
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Trivikram Kamat <[email protected]>
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    065c327 View commit details
    Browse the repository at this point in the history
  46. quic: rename shutdown to reset for RESET_STREAM methods

    `Shutdown()` is already used in our own `StreamBase` API, and
    in particular `QuicStream::Shutdown()` shadowed
    `StreamBase::Shutdown()`; the former cleanly shuts down the
    writable side of a stream, whereas the latter indicates an
    abrupt termination through a `RESET_STREAM` frame.
    
    PR-URL: #180
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Trivikram Kamat <[email protected]>
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    8faf459 View commit details
    Browse the repository at this point in the history
  47. quic: make maxConnectionsPerHost works

    It seems that `Hash` class for `unorderred_map` is used to decide which
    bucket to put the key. But keys that are different pointers with the
    same hash will still be regarded as different keys so that we still need
    to specify a `std::equal_to` to compare the key correctly.
    
    However, when `maxConnectionsPerHost` is exceeded, the new session will
    still be emitted on the server side and won't be destroied automatically.
    We need to figure out the reason and fix it.
    
    PR-URL: #186
    Reviewed-By: Anna Henningsen <[email protected]>
    oyyd authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    1236345 View commit details
    Browse the repository at this point in the history
  48. quic: add pending state for streams

    This resolves the situation in which `openStream()` is called before
    the underlying native `QuicSession` handle exists.
    
    Fixes: #181
    PR-URL: #187
    Reviewed-By: James M Snell <[email protected]>
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    8640fb8 View commit details
    Browse the repository at this point in the history
  49. quic: remove unused vector include

    PR-URL: #188
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Trivikram Kamat <[email protected]>
    danbev authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    a10b1a4 View commit details
    Browse the repository at this point in the history
  50. quic: fix override warnings

    Currently the following compiler warnings are generated:
    In file included from ../src/node_quic_http3_application.cc:4:
    ../src/node_quic_http3_application.h:90:8: warning:
    'StreamClose' overrides a member function but is not marked 'override'
    [-Winconsistent-missing-override]
      void StreamClose(int64_t stream_id, uint64_t app_error_code);
           ^
    ../src/node_quic_session.h:339:16:
    note: overridden virtual function is here
      virtual void StreamClose(
                   ^
    In file included from ../src/node_quic_http3_application.cc:4:
    ../src/node_quic_http3_application.h:123:8:warning:
    'MemoryInfo' overrides a member function but is not marked 'override'
    [-Winconsistent-missing-override]
      void MemoryInfo(MemoryTracker* tracker) const;
           ^
    ../src/memory_tracker.h:121:16: note: overridden virtual function is here
      virtual void MemoryInfo(MemoryTracker* tracker) const = 0;
                   ^
    2 warnings generated.
    In file included from ../src/node_quic_session.cc:19:
    ../src/node_quic_http3_application.h:90:8: warning:
    'StreamClose' overrides a member function but is not marked 'override'
    [-Winconsistent-missing-override]
      void StreamClose(int64_t stream_id, uint64_t app_error_code);
           ^
    ../src/node_quic_session.h:339:16: note: overridden virtual function is here
      virtual void StreamClose(
                   ^
    In file included from ../src/node_quic_session.cc:19:
    ../src/node_quic_http3_application.h:123:8: warning:
    'MemoryInfo' overrides a member function but is not marked 'override'
    [-Winconsistent-missing-override]
      void MemoryInfo(MemoryTracker* tracker) const;
           ^
    ../src/memory_tracker.h:121:16: note: overridden virtual function is here
      virtual void MemoryInfo(MemoryTracker* tracker) const = 0;
                   ^
    2 warnings generated.
    
    This commit adds the missing overrides.
    
    PR-URL: #189
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Trivikram Kamat <[email protected]>
    danbev authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    51fa68b View commit details
    Browse the repository at this point in the history
  51. quic: include limits in node_quic_util.h

    Currently, limits is included implicitly through node_quic_buffer.h
    which includes node_internals.h, which includes util.h, which includes
    limits. This commit makes explicitely include limits.
    
    PR-URL: #190
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Trivikram Kamat <[email protected]>
    Reviewed-By: Anna Henningsen <[email protected]>
    danbev authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    91cba97 View commit details
    Browse the repository at this point in the history
  52. quic: remove unused functional include in session

    This commit removes the include of the functional header from
    node_quic_session.h and node_quic_session.cc as the are not currently
    used.
    
    PR-URL: #191
    Reviewed-By: Trivikram Kamat <[email protected]>
    Reviewed-By: Anna Henningsen <[email protected]>
    danbev authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    ddba7d0 View commit details
    Browse the repository at this point in the history
  53. quic: fix typo on setServerBusy on quic socket

    PR-URL: #195
    Reviewed-By: Anna Henningsen <[email protected]>
    juanarbol authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    345daac View commit details
    Browse the repository at this point in the history
  54. quic: remove algorithm include

    This commit removes the include of the algorithm header as I cannot
    find any usage of it.
    
    PR-URL: #193
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Trivikram Kamat <[email protected]>
    Reviewed-By: Anna Henningsen <[email protected]>
    danbev authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    f51d4b5 View commit details
    Browse the repository at this point in the history
  55. quic: replace unused includes in node_quic.cc

    This commit removes the unused includes climits and algorithm, and adds
    memory (for std::unique_ptr) and utility (for std::move).
    
    PR-URL: #192
    Reviewed-By: Jiawen Geng <[email protected]>
    danbev authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    04ab7d1 View commit details
    Browse the repository at this point in the history
  56. build: fail when quic is enabled with shared_openssl in configure

    PR-URL: #196
    Fixes: #161
    Reviewed-By: Daniel Bevenius <[email protected]>
    Reviewed-By: Trivikram Kamat <[email protected]>
    Reviewed-By: James M Snell <[email protected]>
    lundibundi authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    b367e29 View commit details
    Browse the repository at this point in the history
  57. test: improve code coverage on quic implementation

    PR-URL: #194
    Reviewed-By: Anna Henningsen <[email protected]>
    Reviewed-By: Trivikram Kamat <[email protected]>
    Reviewed-By: James M Snell <[email protected]>
    juanarbol authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    5956ca4 View commit details
    Browse the repository at this point in the history
  58. test: improves quic tests

    PR-URL: #194
    Reviewed-By: Anna Henningsen <[email protected]>
    Reviewed-By: Trivikram Kamat <[email protected]>
    juanarbol authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    006c42f View commit details
    Browse the repository at this point in the history
  59. quic: http3 work in progress

    PR-URL: #177
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    d82766a View commit details
    Browse the repository at this point in the history
  60. deps: update ngtcp2, ngtcp2-crypto, nghttp3

    PR-URL: #177
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    5dcc66a View commit details
    Browse the repository at this point in the history
  61. quic: fixups after dep update

    PR-URL: #177
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    9920b1b View commit details
    Browse the repository at this point in the history
  62. quic: additional progress on http3

    PR-URL: #177
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    b89e2bf View commit details
    Browse the repository at this point in the history
  63. test: temporarily remove updateKey from test-quic-client-server

    PR-URL: #177
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    ed3164a View commit details
    Browse the repository at this point in the history
  64. quic: show alpn identifier in debug output

    PR-URL: #177
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    1f7e7cb View commit details
    Browse the repository at this point in the history
  65. quic: http3 configuration options

    PR-URL: #177
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    a5ea553 View commit details
    Browse the repository at this point in the history
  66. quic: add qlog support

    Fixes: #185
    PR-URL: #200
    Reviewed-By: James M Snell <[email protected]>
    addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    51f4767 View commit details
    Browse the repository at this point in the history
  67. test: close method should throws on closed session

    PR-URL: #204
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Anna Henningsen <[email protected]>
    juanarbol authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    4b5e8e3 View commit details
    Browse the repository at this point in the history
  68. test: throws on ping closed quic session

    PR-URL: #204
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Anna Henningsen <[email protected]>
    juanarbol authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    da0c7cc View commit details
    Browse the repository at this point in the history
  69. test: throws ping and openStream on closed session

    PR-URL: #204
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Anna Henningsen <[email protected]>
    juanarbol authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    09fb293 View commit details
    Browse the repository at this point in the history
  70. test: valid halfOpen param in quic session

    PR-URL: #204
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Anna Henningsen <[email protected]>
    juanarbol authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    7349bb0 View commit details
    Browse the repository at this point in the history
  71. test: can't updateKey when quic session is closed

    PR-URL: #204
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Anna Henningsen <[email protected]>
    juanarbol authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    73c6ad1 View commit details
    Browse the repository at this point in the history
  72. quic: additional sendretry tweaks + bug fix

    PR-URL: #206
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    cbbf2b0 View commit details
    Browse the repository at this point in the history
  73. quic: use const references for QuicCID

    PR-URL: #206
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    de70219 View commit details
    Browse the repository at this point in the history
  74. quic: miscelaneous http3 notes

    PR-URL: #205
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    43d8220 View commit details
    Browse the repository at this point in the history
  75. quic: use const refs for QuicCID passing

    PR-URL: #205
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    bef1b25 View commit details
    Browse the repository at this point in the history
  76. quic: minor additional improvements to QuicCID

    PR-URL: #205
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    ab3557b View commit details
    Browse the repository at this point in the history
  77. quic: move common crypto functions to node_crypto_common.h

    First step to reconciling shared code in node_crypto.cc
    
    PR-URL: #205
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    88f7e95 View commit details
    Browse the repository at this point in the history
  78. src: use node_crypto_common for node_crypto

    PR-URL: #205
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    4868060 View commit details
    Browse the repository at this point in the history
  79. src: move node_crypto_common-inl to cc

    PR-URL: #205
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    166ece1 View commit details
    Browse the repository at this point in the history
  80. quic: use ngtcp2_path_storage and ngtcp2_path structs

    PR-URL: #207
    Reviewed-By: #207
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    be206cf View commit details
    Browse the repository at this point in the history
  81. quic: refine QuicError

    PR-URL: #207
    Reviewed-By: #207
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    5d9fbb2 View commit details
    Browse the repository at this point in the history
  82. quic: refactoring node_quic_util to inline

    PR-URL: #207
    Reviewed-By: #207
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    cb95abb View commit details
    Browse the repository at this point in the history
  83. src: move SocketAddress into separate header

    Allow for better future reuse of sockaddr related code
    by moving SocketAddress into it's own header
    
    PR-URL: #207
    Reviewed-By: #207
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    2b32e5f View commit details
    Browse the repository at this point in the history
  84. quic: add QuicSocketListener

    Fixes: #208
    PR-URL: #207
    Reviewed-By: #207
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    081a37f View commit details
    Browse the repository at this point in the history
  85. quic: minor refactor for QuicStream::Header

    PR-URL: #207
    Reviewed-By: #207
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    3eb955d View commit details
    Browse the repository at this point in the history
  86. quic: add QuicSessionListener

    Fixes: #208
    PR-URL: #207
    Reviewed-By: #207
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    bfc228e View commit details
    Browse the repository at this point in the history
  87. quic: capture received connection_close details

    Fixes: #86
    PR-URL: #207
    Reviewed-By: #207
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    a469bc7 View commit details
    Browse the repository at this point in the history
  88. quic: additional session stats

    PR-URL: #207
    Reviewed-By: #207
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    cbbf74e View commit details
    Browse the repository at this point in the history
  89. quic: expose retransmit counts to JS

    Allows monitoring the number of times packets have to be
    retransmitted because of loss or delayed ack. An implementation
    experiencing a high number of retransmits may need to be torn
    down or mitigated in some way. This allows the user code to keep
    track. Later, we may want to add a setting that enforces a maximum
    number of retransmissions before failing a connection.
    
    Fixes: #78
    PR-URL: #207
    Reviewed-By: #207
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    a8d5f29 View commit details
    Browse the repository at this point in the history
  90. quic: record pkt_num_exhausted error

    Fixes: #58
    PR-URL: #207
    Reviewed-By: #207
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    c7a10c9 View commit details
    Browse the repository at this point in the history
  91. quic: update docs

    PR-URL: #207
    Reviewed-By: #207
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    ac9781a View commit details
    Browse the repository at this point in the history
  92. quic: address multiple nits

    PR-URL: #207
    Reviewed-By: #207
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    046a0d0 View commit details
    Browse the repository at this point in the history
  93. quic: additional suggested updates

    PR-URL: #207
    Reviewed-By: #207
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    81d638f View commit details
    Browse the repository at this point in the history
  94. quic: address build issues on linux

    PR-URL: #207
    Reviewed-By: #207
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    98ea213 View commit details
    Browse the repository at this point in the history
  95. src: fix compiler warnings

    PR-URL: #212
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    42fa245 View commit details
    Browse the repository at this point in the history
  96. quic: add connection id strategy

    We currently generate connection ID's randomly. There are,
    however, alternative schemes being defined. Later we may
    allow user code to select alternative strategies for
    generating connection ids. This adds the basic mechanism.
    
    PR-URL: #211
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    7a5f980 View commit details
    Browse the repository at this point in the history
  97. quic: add blockCount statistic

    Count the number of times sending stream data is blocked by
    flow control
    
    PR-URL: #213
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    9509ec0 View commit details
    Browse the repository at this point in the history
  98. quic: add max offset statistic, expose stream stats to js

    PR-URL: #213
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    9772656 View commit details
    Browse the repository at this point in the history
  99. quic: use constants for QuicSocket stats

    PR-URL: #213
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    ed6a4d0 View commit details
    Browse the repository at this point in the history
  100. quic: fix lint issues

    PR-URL: #213
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    048cdcb View commit details
    Browse the repository at this point in the history
  101. quic: additional doc updates

    PR-URL: #213
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    a025f7f View commit details
    Browse the repository at this point in the history
  102. quic: use const refs

    PR-URL: #216
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    5693be4 View commit details
    Browse the repository at this point in the history
  103. quic: more idiomatic operators

    PR-URL: #216
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    6045212 View commit details
    Browse the repository at this point in the history
  104. quic: stateless reset generate strategy

    Generate stateless reset token cryptographically
    
    Fixes: #62
    PR-URL: #215
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    42cc8ac View commit details
    Browse the repository at this point in the history
  105. quic: simplify and condense

    PR-URL: #217
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    ef1fb08 View commit details
    Browse the repository at this point in the history
  106. quic: minor cleanups

    PR-URL: #217
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    fbafe8d View commit details
    Browse the repository at this point in the history
  107. quic: get name and value as std::string option

    PR-URL: #217
    Reviewed-By: Anna Henningsen <[email protected]>
    jasnell authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    fe26977 View commit details
    Browse the repository at this point in the history
  108. doc,tools: fix make doc target for quic.md

    Currently the doc target fails and this commit attempts for fix these
    errors.
    
    PR-URL: #221
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: Anna Henningsen <[email protected]>
    danbev authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    a8ac638 View commit details
    Browse the repository at this point in the history
  109. src: fix lint-cpp issues

    PR-URL: #224
    Reviewed-By: Anna Henningsen <[email protected]>
    danbev authored and addaleax committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    3bd75b5 View commit details
    Browse the repository at this point in the history
  110. Configuration menu
    Copy the full SHA
    e86a500 View commit details
    Browse the repository at this point in the history