Landing Recent QUIC Changes.
commite970ae47a0490d1faafd7d6d1c7891a9c901266c
authorrtenneti <rtenneti@chromium.org>
Thu, 11 Sep 2014 02:00:55 +0000 (10 19:00 -0700)
committerCommit bot <commit-bot@chromium.org>
Thu, 11 Sep 2014 03:07:08 +0000 (11 03:07 +0000)
tree24a002f76d0cee7f49a9ad4b256382e12ae71f19
parent7167ed1557aee86679706f8517e2b433a29325c3
Landing Recent QUIC Changes.

Simplify QuicUnackedPacketMap's RemovePreviousTransmissions by always
removing all old transmissions.

When truncated acks start arriving, they don't stop until least_unacked
is raised, which takes an entire RTT, so this is the eventual effect of
all those truncated acks.  Instead, remove all of them the first time.

Merge internal change: 74881713
https://codereview.chromium.org/556103002/

Discard old packets from the QuicSentPacketManager which are only
present for RTT purposes(typically acks) when the map exceeds 200 packets.

Merge internal change: 74814618
https://codereview.chromium.org/551223002/

Fix a flaky QUIC end_to_end_test when the socket was suddenly unwritable
and the connection closed, but CanWrite returned true.

Merge internal change: 74798317
https://codereview.chromium.org/550703003/

Fix a crash bug in QuicUnackedPacketMap when truncated acks arrived.

Merge internal change: 74792668
https://codereview.chromium.org/554993002/

Send an ack when it 20 packets have been received since the last ack was
sent.

This allows the peer to discard data from the SentPacketManager.

Merge internal change: 74741188
https://codereview.chromium.org/555653002/

R=rch@chromium.org

Review URL: https://codereview.chromium.org/561513003

Cr-Commit-Position: refs/heads/master@{#294295}
net/quic/quic_connection.cc
net/quic/quic_connection.h
net/quic/quic_connection_test.cc
net/quic/quic_protocol.h
net/quic/quic_sent_packet_manager.cc
net/quic/quic_unacked_packet_map.cc
net/quic/quic_unacked_packet_map.h
net/quic/quic_unacked_packet_map_test.cc