Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright 2004 The WebRTC Project Authors. All rights reserved. | 2 * Copyright 2004 The WebRTC Project Authors. All rights reserved. |
| 3 * | 3 * |
| 4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
| 5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
| 6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
| 7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
| 8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
| 9 */ | 9 */ |
| 10 | 10 |
| (...skipping 457 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 468 | 468 |
| 469 // Estimate of the round-trip time over this connection. | 469 // Estimate of the round-trip time over this connection. |
| 470 int rtt() const { return rtt_; } | 470 int rtt() const { return rtt_; } |
| 471 | 471 |
| 472 size_t sent_total_bytes(); | 472 size_t sent_total_bytes(); |
| 473 size_t sent_bytes_second(); | 473 size_t sent_bytes_second(); |
| 474 // Used to track how many packets are discarded in the application socket due | 474 // Used to track how many packets are discarded in the application socket due |
| 475 // to errors. | 475 // to errors. |
| 476 size_t sent_discarded_packets(); | 476 size_t sent_discarded_packets(); |
| 477 size_t sent_total_packets(); | 477 size_t sent_total_packets(); |
| 478 size_t sent_ping_requests_total(); | |
| 479 size_t sent_ping_requests_before_first_response(); | |
| 480 size_t sent_ping_responses(); | |
| 478 size_t recv_total_bytes(); | 481 size_t recv_total_bytes(); |
| 479 size_t recv_bytes_second(); | 482 size_t recv_bytes_second(); |
| 483 size_t recv_ping_responses(); | |
| 484 size_t recv_ping_requests(); | |
| 480 sigslot::signal1<Connection*> SignalStateChange; | 485 sigslot::signal1<Connection*> SignalStateChange; |
| 481 | 486 |
| 482 // Sent when the connection has decided that it is no longer of value. It | 487 // Sent when the connection has decided that it is no longer of value. It |
| 483 // will delete itself immediately after this call. | 488 // will delete itself immediately after this call. |
| 484 sigslot::signal1<Connection*> SignalDestroyed; | 489 sigslot::signal1<Connection*> SignalDestroyed; |
| 485 | 490 |
| 486 // The connection can send and receive packets asynchronously. This matches | 491 // The connection can send and receive packets asynchronously. This matches |
| 487 // the interface of AsyncPacketSocket, which may use UDP or TCP under the | 492 // the interface of AsyncPacketSocket, which may use UDP or TCP under the |
| 488 // covers. | 493 // covers. |
| 489 virtual int Send(const void* data, size_t size, | 494 virtual int Send(const void* data, size_t size, |
| (...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 638 int64_t last_ping_received_; // last time we received a ping from the other | 643 int64_t last_ping_received_; // last time we received a ping from the other |
| 639 // side | 644 // side |
| 640 int64_t last_data_received_; | 645 int64_t last_data_received_; |
| 641 int64_t last_ping_response_received_; | 646 int64_t last_ping_response_received_; |
| 642 std::vector<SentPing> pings_since_last_response_; | 647 std::vector<SentPing> pings_since_last_response_; |
| 643 | 648 |
| 644 rtc::RateTracker recv_rate_tracker_; | 649 rtc::RateTracker recv_rate_tracker_; |
| 645 rtc::RateTracker send_rate_tracker_; | 650 rtc::RateTracker send_rate_tracker_; |
| 646 uint32_t sent_packets_discarded_; | 651 uint32_t sent_packets_discarded_; |
| 647 uint32_t sent_packets_total_; | 652 uint32_t sent_packets_total_; |
| 653 // Stun ping related stats. | |
| 654 uint32_t sent_ping_requests_total_; | |
| 655 uint32_t sent_ping_requests_before_first_response_; | |
| 656 uint32_t sent_ping_responses_; | |
| 657 uint32_t recv_ping_requests_; | |
| 658 uint32_t recv_ping_responses_; | |
|
pthatcher1
2016/05/27 21:27:15
Can we just store a ConnectionInfo value here inst
zhihuang1
2016/06/01 21:30:05
Do you mean renaming ConnectionInfo -> IceCandidat
pthatcher1
2016/06/01 21:39:48
In a separate CL is fine.
| |
| 648 | 659 |
| 649 private: | 660 private: |
| 650 void MaybeAddPrflxCandidate(ConnectionRequest* request, | 661 void MaybeAddPrflxCandidate(ConnectionRequest* request, |
| 651 StunMessage* response); | 662 StunMessage* response); |
| 652 | 663 |
| 653 bool reported_; | 664 bool reported_; |
| 654 State state_; | 665 State state_; |
| 655 // Time duration to switch from receiving to not receiving. | 666 // Time duration to switch from receiving to not receiving. |
| 656 int receiving_timeout_; | 667 int receiving_timeout_; |
| 657 int64_t time_created_ms_; | 668 int64_t time_created_ms_; |
| 669 bool received_first_response_; | |
|
pthatcher1
2016/05/27 21:27:15
Can you tell by "recv_ping_reponses_ > 0"?
| |
| 658 | 670 |
| 659 friend class Port; | 671 friend class Port; |
| 660 friend class ConnectionRequest; | 672 friend class ConnectionRequest; |
| 661 }; | 673 }; |
| 662 | 674 |
| 663 // ProxyConnection defers all the interesting work to the port. | 675 // ProxyConnection defers all the interesting work to the port. |
| 664 class ProxyConnection : public Connection { | 676 class ProxyConnection : public Connection { |
| 665 public: | 677 public: |
| 666 ProxyConnection(Port* port, size_t index, const Candidate& remote_candidate); | 678 ProxyConnection(Port* port, size_t index, const Candidate& remote_candidate); |
| 667 | 679 |
| 668 int Send(const void* data, | 680 int Send(const void* data, |
| 669 size_t size, | 681 size_t size, |
| 670 const rtc::PacketOptions& options) override; | 682 const rtc::PacketOptions& options) override; |
| 671 int GetError() override { return error_; } | 683 int GetError() override { return error_; } |
| 672 | 684 |
| 673 private: | 685 private: |
| 674 int error_ = 0; | 686 int error_ = 0; |
| 675 }; | 687 }; |
| 676 | 688 |
| 677 } // namespace cricket | 689 } // namespace cricket |
| 678 | 690 |
| 679 #endif // WEBRTC_P2P_BASE_PORT_H_ | 691 #endif // WEBRTC_P2P_BASE_PORT_H_ |
| OLD | NEW |