| 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> |
| 11 #include <memory> | 11 #include <memory> |
| 12 #include <set> | 12 #include <set> |
| 13 #include <utility> | 13 #include <utility> |
| 14 #include <vector> | 14 #include <vector> |
| 15 | 15 |
| 16 #include "base/macros.h" | 16 #include "base/macros.h" |
| 17 #include "net/base/linked_hash_map.h" | 17 #include "net/base/linked_hash_map.h" |
| 18 #include "net/quic/core/congestion_control/general_loss_algorithm.h" |
| 18 #include "net/quic/core/congestion_control/loss_detection_interface.h" | 19 #include "net/quic/core/congestion_control/loss_detection_interface.h" |
| 19 #include "net/quic/core/congestion_control/pacing_sender.h" | 20 #include "net/quic/core/congestion_control/pacing_sender.h" |
| 20 #include "net/quic/core/congestion_control/rtt_stats.h" | 21 #include "net/quic/core/congestion_control/rtt_stats.h" |
| 21 #include "net/quic/core/congestion_control/send_algorithm_interface.h" | 22 #include "net/quic/core/congestion_control/send_algorithm_interface.h" |
| 22 #include "net/quic/core/quic_protocol.h" | 23 #include "net/quic/core/quic_protocol.h" |
| 23 #include "net/quic/core/quic_sent_packet_manager_interface.h" | 24 #include "net/quic/core/quic_sent_packet_manager_interface.h" |
| 24 #include "net/quic/core/quic_unacked_packet_map.h" | 25 #include "net/quic/core/quic_unacked_packet_map.h" |
| 25 | 26 |
| 26 namespace net { | 27 namespace net { |
| 27 | 28 |
| (...skipping 308 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 336 QuicConnectionStats* stats_; | 337 QuicConnectionStats* stats_; |
| 337 | 338 |
| 338 // Pending retransmissions are managed by delegate_ if it is not null. | 339 // Pending retransmissions are managed by delegate_ if it is not null. |
| 339 MultipathDelegateInterface* delegate_; // Not owned. | 340 MultipathDelegateInterface* delegate_; // Not owned. |
| 340 | 341 |
| 341 DebugDelegate* debug_delegate_; | 342 DebugDelegate* debug_delegate_; |
| 342 NetworkChangeVisitor* network_change_visitor_; | 343 NetworkChangeVisitor* network_change_visitor_; |
| 343 const QuicPacketCount initial_congestion_window_; | 344 const QuicPacketCount initial_congestion_window_; |
| 344 RttStats rtt_stats_; | 345 RttStats rtt_stats_; |
| 345 std::unique_ptr<SendAlgorithmInterface> send_algorithm_; | 346 std::unique_ptr<SendAlgorithmInterface> send_algorithm_; |
| 346 std::unique_ptr<LossDetectionInterface> loss_algorithm_; | 347 // Not owned. Always points to |general_loss_algorithm_| outside of tests. |
| 348 LossDetectionInterface* loss_algorithm_; |
| 349 GeneralLossAlgorithm general_loss_algorithm_; |
| 347 bool n_connection_simulation_; | 350 bool n_connection_simulation_; |
| 348 | 351 |
| 349 // Receiver side buffer in bytes. | 352 // Receiver side buffer in bytes. |
| 350 QuicByteCount receive_buffer_bytes_; | 353 QuicByteCount receive_buffer_bytes_; |
| 351 | 354 |
| 352 // Least packet number which the peer is still waiting for. | 355 // Least packet number which the peer is still waiting for. |
| 353 QuicPacketNumber least_packet_awaited_by_peer_; | 356 QuicPacketNumber least_packet_awaited_by_peer_; |
| 354 | 357 |
| 355 // Tracks the first RTO packet. If any packet before that packet gets acked, | 358 // Tracks the first RTO packet. If any packet before that packet gets acked, |
| 356 // it indicates the RTO was spurious and should be reversed(F-RTO). | 359 // it indicates the RTO was spurious and should be reversed(F-RTO). |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 398 // Records bandwidth from server to client in normal operation, over periods | 401 // Records bandwidth from server to client in normal operation, over periods |
| 399 // of time with no loss events. | 402 // of time with no loss events. |
| 400 QuicSustainedBandwidthRecorder sustained_bandwidth_recorder_; | 403 QuicSustainedBandwidthRecorder sustained_bandwidth_recorder_; |
| 401 | 404 |
| 402 DISALLOW_COPY_AND_ASSIGN(QuicSentPacketManager); | 405 DISALLOW_COPY_AND_ASSIGN(QuicSentPacketManager); |
| 403 }; | 406 }; |
| 404 | 407 |
| 405 } // namespace net | 408 } // namespace net |
| 406 | 409 |
| 407 #endif // NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ | 410 #endif // NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ |
| OLD | NEW |