Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(56)

Issue 47283002: Land Recent QUIC changes. (Closed)

Created:
7 years, 1 month ago by ramant (doing other things)
Modified:
7 years, 1 month ago
Reviewers:
Ryan Hamilton
CC:
chromium-reviews, cbentzel+watch_chromium.org, dcheng
Visibility:
Public.

Description

Land Recent QUIC changes. Fix a bug in the quic_client where disconnecting and re-connecting would re-use the same packet writer, and attempt to write to the same (now closed) socket. Merge internal change: 55509535 If the most significant byte of a QuicTag is 255 ('\xff'), print that byte as a space rather than printing the QuicTag as a decimal number. Add a unit test for QuicUtils::TagToString. as "CRT " instead of its decimal value "4283716163". Merge internal change: 55493160 Miscellaneous cleanup of the supported_versions CL. Remove QuicVersionArrayToString. Replace the only QuicVersionArrayToString call by QuicVersionVectorToString. Add a protected supported_versions() getter method to QuicDispatcher to allow access to supported_versions_ by derived classes of QuicDispatcher. Document the purpose of each combination of supported versions in gfe/quic/end_to_end_test.cc. "gfe2/quic_versions" and its value no longer has an extraneous comma at the end. For example, "QUIC_VERSION_11,QUIC_VERSION_10" as opposed to "QUIC_VERSION_11,QUIC_VERSION_10," Merge internal change: 55490062 Implement encoding and decoding of unsigned half precision floats in QUIC. Merge internal change: 55454508 Annotate QUIC streams as server/client in DLOG output. Merge internal change: 55419499 Expose methods for getting/setting the QUIC congestion manager's congestion window value. Merge internal change: 55416317 Return the unused server port once EndToEndTest has finished, to reduce the chance PickUnusedPortOrDie will fail in the future. Merge internal change: 55376533 This change hasn't been enabled in chromium. Fix quic prober to use new QuicClient constructor which takes QuicSupportedVersions as argument. Merge internal change: 55353942 Change all QuicConfig constructors to DefaultQuicConfig. Merge internal change: 55307326 Fixing TSAN warnings in the PacketDroppingTestWriter by adding a lock. Merge internal change: 55234723 Fixing potential bugs with write blocking in QuicConnection. Merge internal change: 55230366 Added back QuicVersionMax to fix borg TAP failures. This is a temporary fix until until CL 55170273 lands. Merge internal change: 55173927 Test server/client various combinations of supported versions. - Fix to handle if chrome were to send VERSION 11 and GFE supports version 10 and vice versa (fixes to setting of NULL decrypter). Fixed unit tests to handle different packet sizes between 11 and 10 because of changes to Null encrypter/decrypter. - Send version negotiation packet packet again (from server) if that packet is dropped. - Changed end_to_end_test.cc to configure the client to support multiple versions and configure the server to support only one version and vice versa. - Moved QuicVersionMax and QuicVersonMin to quic_test_utils.cc. Most of the bug fixes are from rch. re-transmitting that packet again. Fixed bugs with server supporting VERSION 10 and chrome negotiating down from 11 to 10. Added tests for version negotiation and testing of various combinations of server and client version negotiation. Merge internal change: 55168938 Don't cast a uint32 to int32 then to a uint64. Seen in test logs: I1018 11:55:44.626228 1775 packet_dropping_test_writer.cc:50] Seeding packet loss with -508765393 I1018 11:55:44.626275 1775 packet_dropping_test_writer.cc:50] Seeding packet loss with 631710332 Merge internal change: 55135280 R=rch@chromium.org Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=231296

Patch Set 1 #

Patch Set 2 : merge #

Patch Set 3 : fix compilation error #

Unified diffs Side-by-side diffs Delta from patch set Stats (+724 lines, -214 lines) Patch
M net/quic/congestion_control/fix_rate_sender.h View 1 chunk +2 lines, -0 lines 0 comments Download
M net/quic/congestion_control/fix_rate_sender.cc View 1 chunk +7 lines, -0 lines 0 comments Download
M net/quic/congestion_control/inter_arrival_sender.h View 1 chunk +2 lines, -0 lines 0 comments Download
M net/quic/congestion_control/inter_arrival_sender.cc View 1 chunk +7 lines, -0 lines 0 comments Download
M net/quic/congestion_control/quic_congestion_manager.h View 1 chunk +8 lines, -0 lines 0 comments Download
M net/quic/congestion_control/quic_congestion_manager.cc View 1 chunk +8 lines, -0 lines 0 comments Download
M net/quic/congestion_control/send_algorithm_interface.h View 1 chunk +8 lines, -0 lines 0 comments Download
M net/quic/congestion_control/tcp_cubic_sender.h View 1 chunk +2 lines, -0 lines 0 comments Download
M net/quic/congestion_control/tcp_cubic_sender.cc View 4 chunks +15 lines, -3 lines 0 comments Download
M net/quic/congestion_control/tcp_cubic_sender_test.cc View 3 chunks +4 lines, -2 lines 0 comments Download
M net/quic/quic_client_session_test.cc View 1 chunk +1 line, -1 line 0 comments Download
M net/quic/quic_connection.h View 1 chunk +1 line, -1 line 0 comments Download
M net/quic/quic_connection.cc View 11 chunks +22 lines, -13 lines 0 comments Download
M net/quic/quic_connection_helper_test.cc View 2 chunks +3 lines, -2 lines 0 comments Download
M net/quic/quic_connection_test.cc View 1 2 7 chunks +40 lines, -8 lines 0 comments Download
M net/quic/quic_crypto_client_stream_test.cc View 1 chunk +1 line, -1 line 0 comments Download
M net/quic/quic_crypto_server_stream_test.cc View 1 chunk +1 line, -1 line 0 comments Download
M net/quic/quic_data_reader.h View 1 chunk +5 lines, -0 lines 0 comments Download
M net/quic/quic_data_reader.cc View 2 chunks +34 lines, -0 lines 0 comments Download
M net/quic/quic_data_writer.h View 1 chunk +4 lines, -0 lines 0 comments Download
M net/quic/quic_data_writer.cc View 1 2 1 chunk +39 lines, -0 lines 0 comments Download
M net/quic/quic_data_writer_test.cc View 1 2 3 chunks +126 lines, -5 lines 0 comments Download
M net/quic/quic_end_to_end_unittest.cc View 1 chunk +1 line, -0 lines 0 comments Download
M net/quic/quic_framer.h View 3 chunks +13 lines, -2 lines 0 comments Download
M net/quic/quic_framer.cc View 5 chunks +14 lines, -8 lines 0 comments Download
M net/quic/quic_framer_test.cc View 5 chunks +13 lines, -5 lines 0 comments Download
M net/quic/quic_http_stream_test.cc View 2 chunks +3 lines, -2 lines 0 comments Download
M net/quic/quic_network_transaction_unittest.cc View 2 chunks +2 lines, -2 lines 0 comments Download
M net/quic/quic_packet_creator_test.cc View 2 chunks +3 lines, -3 lines 0 comments Download
M net/quic/quic_packet_generator_test.cc View 2 chunks +2 lines, -3 lines 0 comments Download
M net/quic/quic_protocol.h View 3 chunks +22 lines, -8 lines 0 comments Download
M net/quic/quic_protocol.cc View 2 chunks +12 lines, -10 lines 0 comments Download
M net/quic/quic_protocol_test.cc View 1 chunk +12 lines, -6 lines 0 comments Download
M net/quic/quic_session.h View 1 chunk +2 lines, -0 lines 0 comments Download
M net/quic/quic_stream_factory.cc View 1 chunk +1 line, -1 line 0 comments Download
M net/quic/quic_stream_factory_test.cc View 2 chunks +2 lines, -2 lines 0 comments Download
M net/quic/quic_stream_sequencer_test.cc View 3 chunks +7 lines, -3 lines 0 comments Download
M net/quic/quic_utils.cc View 1 chunk +1 line, -1 line 0 comments Download
M net/quic/quic_utils_test.cc View 2 chunks +16 lines, -0 lines 0 comments Download
M net/quic/reliable_quic_stream.h View 2 chunks +5 lines, -0 lines 0 comments Download
M net/quic/reliable_quic_stream.cc View 7 chunks +12 lines, -9 lines 0 comments Download
M net/quic/test_tools/crypto_test_utils.cc View 2 chunks +2 lines, -2 lines 0 comments Download
M net/quic/test_tools/quic_test_utils.h View 2 chunks +8 lines, -0 lines 0 comments Download
M net/quic/test_tools/quic_test_utils.cc View 6 chunks +11 lines, -7 lines 0 comments Download
M net/quic/test_tools/simple_quic_framer.cc View 1 chunk +1 line, -1 line 0 comments Download
M net/tools/quic/end_to_end_test.cc View 7 chunks +75 lines, -22 lines 0 comments Download
M net/tools/quic/quic_client.h View 2 chunks +8 lines, -4 lines 0 comments Download
M net/tools/quic/quic_client.cc View 5 chunks +9 lines, -7 lines 0 comments Download
M net/tools/quic/quic_client_bin.cc View 1 chunk +3 lines, -2 lines 0 comments Download
M net/tools/quic/quic_client_session_test.cc View 2 chunks +3 lines, -2 lines 0 comments Download
M net/tools/quic/quic_dispatcher.h View 3 chunks +13 lines, -1 line 0 comments Download
M net/tools/quic/quic_dispatcher.cc View 3 chunks +8 lines, -5 lines 0 comments Download
M net/tools/quic/quic_dispatcher_test.cc View 2 chunks +3 lines, -2 lines 0 comments Download
M net/tools/quic/quic_epoll_connection_helper_test.cc View 3 chunks +4 lines, -3 lines 0 comments Download
M net/tools/quic/quic_reliable_client_stream_test.cc View 2 chunks +2 lines, -1 line 0 comments Download
M net/tools/quic/quic_server.h View 2 chunks +8 lines, -1 line 0 comments Download
M net/tools/quic/quic_server.cc View 2 chunks +9 lines, -5 lines 0 comments Download
M net/tools/quic/quic_time_wait_list_manager.h View 1 chunk +2 lines, -1 line 0 comments Download
M net/tools/quic/quic_time_wait_list_manager.cc View 1 chunk +3 lines, -2 lines 0 comments Download
M net/tools/quic/quic_time_wait_list_manager_test.cc View 6 chunks +17 lines, -21 lines 0 comments Download
M net/tools/quic/test_tools/mock_quic_dispatcher.cc View 1 chunk +3 lines, -1 line 0 comments Download
M net/tools/quic/test_tools/packet_dropping_test_writer.h View 5 chunks +9 lines, -2 lines 0 comments Download
M net/tools/quic/test_tools/packet_dropping_test_writer.cc View 5 chunks +7 lines, -2 lines 0 comments Download
M net/tools/quic/test_tools/quic_test_client.h View 1 chunk +3 lines, -3 lines 0 comments Download
M net/tools/quic/test_tools/quic_test_client.cc View 4 chunks +14 lines, -11 lines 0 comments Download
M net/tools/quic/test_tools/quic_test_utils.h View 1 chunk +6 lines, -0 lines 0 comments Download
M net/tools/quic/test_tools/quic_test_utils.cc View 4 chunks +7 lines, -3 lines 0 comments Download
M net/tools/quic/test_tools/server_thread.h View 1 chunk +1 line, -0 lines 0 comments Download
M net/tools/quic/test_tools/server_thread.cc View 1 chunk +2 lines, -1 line 0 comments Download

Messages

Total messages: 6 (0 generated)
ramant (doing other things)
This is the Final merged CL of recent QUIC changes (previous attempt failed). thanks.
7 years, 1 month ago (2013-10-26 22:20:51 UTC) #1
Ryan Hamilton
lgtm since I have reviewed all the individual changes.
7 years, 1 month ago (2013-10-27 04:01:34 UTC) #2
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/rtenneti@chromium.org/47283002/50001
7 years, 1 month ago (2013-10-28 02:29:59 UTC) #3
commit-bot: I haz the power
Step "update" is always a major failure. Look at the try server FAQ for more ...
7 years, 1 month ago (2013-10-28 02:47:12 UTC) #4
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/rtenneti@chromium.org/47283002/320001
7 years, 1 month ago (2013-10-28 05:13:11 UTC) #5
commit-bot: I haz the power
7 years, 1 month ago (2013-10-28 08:39:28 UTC) #6
Message was sent while issue was closed.
Change committed as 231296

Powered by Google App Engine
This is Rietveld 408576698