| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 // The entity that handles framing writes for a Quic client or server. | 5 // The entity that handles framing writes for a Quic client or server. |
| 6 // Each QuicSession will have a connection associated with it. | 6 // Each QuicSession will have a connection associated with it. |
| 7 // | 7 // |
| 8 // On the server side, the Dispatcher handles the raw reads, and hands off | 8 // On the server side, the Dispatcher handles the raw reads, and hands off |
| 9 // packets via ProcessUdpPacket for framing and processing. | 9 // packets via ProcessUdpPacket for framing and processing. |
| 10 // | 10 // |
| (...skipping 353 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 364 | 364 |
| 365 // These two are called by OnAckFrame to update the appropriate internal | 365 // These two are called by OnAckFrame to update the appropriate internal |
| 366 // state. | 366 // state. |
| 367 // | 367 // |
| 368 // Updates internal state based on incoming_ack.received_info | 368 // Updates internal state based on incoming_ack.received_info |
| 369 void UpdatePacketInformationReceivedByPeer( | 369 void UpdatePacketInformationReceivedByPeer( |
| 370 const QuicAckFrame& incoming_ack); | 370 const QuicAckFrame& incoming_ack); |
| 371 // Updates internal state based in incoming_ack.sent_info | 371 // Updates internal state based in incoming_ack.sent_info |
| 372 void UpdatePacketInformationSentByPeer(const QuicAckFrame& incoming_ack); | 372 void UpdatePacketInformationSentByPeer(const QuicAckFrame& incoming_ack); |
| 373 | 373 |
| 374 QuicConnectionHelperInterface* helper() { return helper_; } | 374 QuicConnectionHelperInterface* helper() { return helper_.get(); } |
| 375 | 375 |
| 376 private: | 376 private: |
| 377 friend class test::QuicConnectionPeer; | 377 friend class test::QuicConnectionPeer; |
| 378 | 378 |
| 379 // Packets which have not been written to the wire. | 379 // Packets which have not been written to the wire. |
| 380 // Owns the QuicPacket* packet. | 380 // Owns the QuicPacket* packet. |
| 381 struct QueuedPacket { | 381 struct QueuedPacket { |
| 382 QueuedPacket(QuicPacketSequenceNumber sequence_number, | 382 QueuedPacket(QuicPacketSequenceNumber sequence_number, |
| 383 QuicPacket* packet, | 383 QuicPacket* packet, |
| 384 bool has_retransmittable_data) | 384 bool has_retransmittable_data) |
| (...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 454 void UpdateOutgoingAck(); | 454 void UpdateOutgoingAck(); |
| 455 | 455 |
| 456 void MaybeSendAckInResponseToPacket(); | 456 void MaybeSendAckInResponseToPacket(); |
| 457 | 457 |
| 458 // Get the FEC group associate with the last processed packet. | 458 // Get the FEC group associate with the last processed packet. |
| 459 QuicFecGroup* GetFecGroup(); | 459 QuicFecGroup* GetFecGroup(); |
| 460 | 460 |
| 461 // Closes any FEC groups protecting packets before |sequence_number|. | 461 // Closes any FEC groups protecting packets before |sequence_number|. |
| 462 void CloseFecGroupsBefore(QuicPacketSequenceNumber sequence_number); | 462 void CloseFecGroupsBefore(QuicPacketSequenceNumber sequence_number); |
| 463 | 463 |
| 464 QuicConnectionHelperInterface* helper_; | 464 scoped_ptr<QuicConnectionHelperInterface> helper_; |
| 465 QuicFramer framer_; | 465 QuicFramer framer_; |
| 466 const QuicClock* clock_; | 466 const QuicClock* clock_; |
| 467 QuicRandom* random_generator_; | 467 QuicRandom* random_generator_; |
| 468 | 468 |
| 469 const QuicGuid guid_; | 469 const QuicGuid guid_; |
| 470 // Address on the last successfully processed packet received from the | 470 // Address on the last successfully processed packet received from the |
| 471 // client. | 471 // client. |
| 472 IPEndPoint self_address_; | 472 IPEndPoint self_address_; |
| 473 IPEndPoint peer_address_; | 473 IPEndPoint peer_address_; |
| 474 // Address on the last(currently being processed) packet received. Not | 474 // Address on the last(currently being processed) packet received. Not |
| (...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 566 bool received_truncated_ack_; | 566 bool received_truncated_ack_; |
| 567 | 567 |
| 568 bool send_ack_in_response_to_packet_; | 568 bool send_ack_in_response_to_packet_; |
| 569 | 569 |
| 570 DISALLOW_COPY_AND_ASSIGN(QuicConnection); | 570 DISALLOW_COPY_AND_ASSIGN(QuicConnection); |
| 571 }; | 571 }; |
| 572 | 572 |
| 573 } // namespace net | 573 } // namespace net |
| 574 | 574 |
| 575 #endif // NET_QUIC_QUIC_CONNECTION_H_ | 575 #endif // NET_QUIC_QUIC_CONNECTION_H_ |
| OLD | NEW |