| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ | 5 #ifndef NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ |
| 6 #define NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ | 6 #define NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ |
| 7 | 7 |
| 8 #include <stddef.h> | 8 #include <stddef.h> |
| 9 | 9 |
| 10 #include <map> | 10 #include <map> |
| (...skipping 368 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 379 size_t max_tail_loss_probes_; | 379 size_t max_tail_loss_probes_; |
| 380 // If true, send the TLP at 0.5 RTT. | 380 // If true, send the TLP at 0.5 RTT. |
| 381 bool enable_half_rtt_tail_loss_probe_; | 381 bool enable_half_rtt_tail_loss_probe_; |
| 382 bool using_pacing_; | 382 bool using_pacing_; |
| 383 // If true, use the new RTO with loss based CWND reduction instead of the send | 383 // If true, use the new RTO with loss based CWND reduction instead of the send |
| 384 // algorithms's OnRetransmissionTimeout to reduce the congestion window. | 384 // algorithms's OnRetransmissionTimeout to reduce the congestion window. |
| 385 bool use_new_rto_; | 385 bool use_new_rto_; |
| 386 // If true, cancel pending retransmissions if they're larger than | 386 // If true, cancel pending retransmissions if they're larger than |
| 387 // largest_newly_acked. | 387 // largest_newly_acked. |
| 388 bool undo_pending_retransmits_; | 388 bool undo_pending_retransmits_; |
| 389 // If true, use a more conservative handshake retransmission policy. |
| 390 bool conservative_handshake_retransmits_; |
| 389 | 391 |
| 390 // Vectors packets acked and lost as a result of the last congestion event. | 392 // Vectors packets acked and lost as a result of the last congestion event. |
| 391 SendAlgorithmInterface::CongestionVector packets_acked_; | 393 SendAlgorithmInterface::CongestionVector packets_acked_; |
| 392 SendAlgorithmInterface::CongestionVector packets_lost_; | 394 SendAlgorithmInterface::CongestionVector packets_lost_; |
| 393 // Largest newly acknowledged packet. | 395 // Largest newly acknowledged packet. |
| 394 QuicPacketNumber largest_newly_acked_; | 396 QuicPacketNumber largest_newly_acked_; |
| 395 // Largest packet in bytes ever acknowledged. | 397 // Largest packet in bytes ever acknowledged. |
| 396 QuicPacketLength largest_mtu_acked_; | 398 QuicPacketLength largest_mtu_acked_; |
| 397 | 399 |
| 398 // Replaces certain calls to |send_algorithm_| when |using_pacing_| is true. | 400 // Replaces certain calls to |send_algorithm_| when |using_pacing_| is true. |
| 399 // Calls into |send_algorithm_| for the underlying congestion control. | 401 // Calls into |send_algorithm_| for the underlying congestion control. |
| 400 PacingSender pacing_sender_; | 402 PacingSender pacing_sender_; |
| 401 | 403 |
| 402 // Set to true after the crypto handshake has successfully completed. After | 404 // Set to true after the crypto handshake has successfully completed. After |
| 403 // this is true we no longer use HANDSHAKE_MODE, and further frames sent on | 405 // this is true we no longer use HANDSHAKE_MODE, and further frames sent on |
| 404 // the crypto stream (i.e. SCUP messages) are treated like normal | 406 // the crypto stream (i.e. SCUP messages) are treated like normal |
| 405 // retransmittable frames. | 407 // retransmittable frames. |
| 406 bool handshake_confirmed_; | 408 bool handshake_confirmed_; |
| 407 | 409 |
| 408 // Records bandwidth from server to client in normal operation, over periods | 410 // Records bandwidth from server to client in normal operation, over periods |
| 409 // of time with no loss events. | 411 // of time with no loss events. |
| 410 QuicSustainedBandwidthRecorder sustained_bandwidth_recorder_; | 412 QuicSustainedBandwidthRecorder sustained_bandwidth_recorder_; |
| 411 | 413 |
| 412 DISALLOW_COPY_AND_ASSIGN(QuicSentPacketManager); | 414 DISALLOW_COPY_AND_ASSIGN(QuicSentPacketManager); |
| 413 }; | 415 }; |
| 414 | 416 |
| 415 } // namespace net | 417 } // namespace net |
| 416 | 418 |
| 417 #endif // NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ | 419 #endif // NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ |
| OLD | NEW |