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 #include "net/quic/chromium/quic_chromium_client_session.h" | 5 #include "net/quic/chromium/quic_chromium_client_session.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/callback_helpers.h" | 9 #include "base/callback_helpers.h" |
10 #include "base/location.h" | 10 #include "base/location.h" |
(...skipping 13 matching lines...) Expand all Loading... |
24 #include "net/log/net_log_event_type.h" | 24 #include "net/log/net_log_event_type.h" |
25 #include "net/log/net_log_source_type.h" | 25 #include "net/log/net_log_source_type.h" |
26 #include "net/quic/chromium/crypto/proof_verifier_chromium.h" | 26 #include "net/quic/chromium/crypto/proof_verifier_chromium.h" |
27 #include "net/quic/chromium/quic_chromium_connection_helper.h" | 27 #include "net/quic/chromium/quic_chromium_connection_helper.h" |
28 #include "net/quic/chromium/quic_chromium_packet_writer.h" | 28 #include "net/quic/chromium/quic_chromium_packet_writer.h" |
29 #include "net/quic/chromium/quic_crypto_client_stream_factory.h" | 29 #include "net/quic/chromium/quic_crypto_client_stream_factory.h" |
30 #include "net/quic/chromium/quic_server_info.h" | 30 #include "net/quic/chromium/quic_server_info.h" |
31 #include "net/quic/chromium/quic_stream_factory.h" | 31 #include "net/quic/chromium/quic_stream_factory.h" |
32 #include "net/quic/core/quic_client_promised_info.h" | 32 #include "net/quic/core/quic_client_promised_info.h" |
33 #include "net/quic/core/spdy_utils.h" | 33 #include "net/quic/core/spdy_utils.h" |
| 34 #include "net/quic/platform/api/quic_ptr_util.h" |
34 #include "net/socket/datagram_client_socket.h" | 35 #include "net/socket/datagram_client_socket.h" |
35 #include "net/spdy/chromium/spdy_http_utils.h" | 36 #include "net/spdy/chromium/spdy_http_utils.h" |
36 #include "net/spdy/chromium/spdy_log_util.h" | 37 #include "net/spdy/chromium/spdy_log_util.h" |
37 #include "net/spdy/chromium/spdy_session.h" | 38 #include "net/spdy/chromium/spdy_session.h" |
38 #include "net/ssl/channel_id_service.h" | 39 #include "net/ssl/channel_id_service.h" |
39 #include "net/ssl/ssl_connection_status_flags.h" | 40 #include "net/ssl/ssl_connection_status_flags.h" |
40 #include "net/ssl/ssl_info.h" | 41 #include "net/ssl/ssl_info.h" |
41 #include "net/ssl/token_binding.h" | 42 #include "net/ssl/token_binding.h" |
42 #include "third_party/boringssl/src/include/openssl/ssl.h" | 43 #include "third_party/boringssl/src/include/openssl/ssl.h" |
43 | 44 |
(...skipping 452 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
496 1, kMaxReordering, 50); | 497 1, kMaxReordering, 50); |
497 if (stats.min_rtt_us > 100 * 1000) { | 498 if (stats.min_rtt_us > 100 * 1000) { |
498 UMA_HISTOGRAM_CUSTOM_COUNTS("Net.QuicSession.MaxReorderingTimeLongRtt", | 499 UMA_HISTOGRAM_CUSTOM_COUNTS("Net.QuicSession.MaxReorderingTimeLongRtt", |
499 reordering, 1, kMaxReordering, 50); | 500 reordering, 1, kMaxReordering, 50); |
500 } | 501 } |
501 UMA_HISTOGRAM_COUNTS( | 502 UMA_HISTOGRAM_COUNTS( |
502 "Net.QuicSession.MaxReordering", | 503 "Net.QuicSession.MaxReordering", |
503 static_cast<base::HistogramBase::Sample>(stats.max_sequence_reordering)); | 504 static_cast<base::HistogramBase::Sample>(stats.max_sequence_reordering)); |
504 } | 505 } |
505 | 506 |
| 507 std::unique_ptr<QuicStream> QuicChromiumClientSession::CreateStream( |
| 508 QuicStreamId id) { |
| 509 return QuicMakeUnique<QuicChromiumClientStream>(id, this, net_log_); |
| 510 } |
| 511 |
506 void QuicChromiumClientSession::Initialize() { | 512 void QuicChromiumClientSession::Initialize() { |
507 QuicClientSessionBase::Initialize(); | 513 QuicClientSessionBase::Initialize(); |
508 SetHpackEncoderDebugVisitor( | 514 SetHpackEncoderDebugVisitor( |
509 base::MakeUnique<HpackEncoderDebugVisitor>()); | 515 base::MakeUnique<HpackEncoderDebugVisitor>()); |
510 SetHpackDecoderDebugVisitor( | 516 SetHpackDecoderDebugVisitor( |
511 base::MakeUnique<HpackDecoderDebugVisitor>()); | 517 base::MakeUnique<HpackDecoderDebugVisitor>()); |
512 } | 518 } |
513 | 519 |
514 void QuicChromiumClientSession::OnHeadersHeadOfLineBlocking( | 520 void QuicChromiumClientSession::OnHeadersHeadOfLineBlocking( |
515 QuicTime::Delta delta) { | 521 QuicTime::Delta delta) { |
(...skipping 1085 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1601 } | 1607 } |
1602 | 1608 |
1603 size_t QuicChromiumClientSession::EstimateMemoryUsage() const { | 1609 size_t QuicChromiumClientSession::EstimateMemoryUsage() const { |
1604 // TODO(xunjieli): Estimate |crypto_stream_|, QuicSpdySession's | 1610 // TODO(xunjieli): Estimate |crypto_stream_|, QuicSpdySession's |
1605 // QuicHeaderList, QuicSession's QuiCWriteBlockedList, open streams and | 1611 // QuicHeaderList, QuicSession's QuiCWriteBlockedList, open streams and |
1606 // unacked packet map. | 1612 // unacked packet map. |
1607 return base::trace_event::EstimateMemoryUsage(packet_readers_); | 1613 return base::trace_event::EstimateMemoryUsage(packet_readers_); |
1608 } | 1614 } |
1609 | 1615 |
1610 } // namespace net | 1616 } // namespace net |
OLD | NEW |