Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(835)

Side by Side Diff: net/quic/quic_connection_logger.cc

Issue 670183003: Update from chromium 62675d9fb31fb8cedc40f68e78e8445a74f362e7 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « net/http/http_cache_unittest.cc ('k') | net/quic/quic_session_test.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 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 #include "net/quic/quic_connection_logger.h" 5 #include "net/quic/quic_connection_logger.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <string> 8 #include <string>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 29 matching lines...) Expand all
40 NetLog::LogLevel /* log_level */) { 40 NetLog::LogLevel /* log_level */) {
41 base::DictionaryValue* dict = new base::DictionaryValue(); 41 base::DictionaryValue* dict = new base::DictionaryValue();
42 dict->SetString("self_address", self_address->ToString()); 42 dict->SetString("self_address", self_address->ToString());
43 dict->SetString("peer_address", peer_address->ToString()); 43 dict->SetString("peer_address", peer_address->ToString());
44 dict->SetInteger("size", packet_size); 44 dict->SetInteger("size", packet_size);
45 return dict; 45 return dict;
46 } 46 }
47 47
48 base::Value* NetLogQuicPacketSentCallback( 48 base::Value* NetLogQuicPacketSentCallback(
49 const SerializedPacket& serialized_packet, 49 const SerializedPacket& serialized_packet,
50 QuicPacketSequenceNumber original_sequence_number,
51 EncryptionLevel level, 50 EncryptionLevel level,
52 TransmissionType transmission_type, 51 TransmissionType transmission_type,
53 size_t packet_size, 52 size_t packet_size,
54 QuicTime sent_time, 53 QuicTime sent_time,
55 NetLog::LogLevel /* log_level */) { 54 NetLog::LogLevel /* log_level */) {
56 base::DictionaryValue* dict = new base::DictionaryValue(); 55 base::DictionaryValue* dict = new base::DictionaryValue();
57 dict->SetInteger("encryption_level", level); 56 dict->SetInteger("encryption_level", level);
58 dict->SetInteger("transmission_type", transmission_type); 57 dict->SetInteger("transmission_type", transmission_type);
59 dict->SetString("packet_sequence_number", 58 dict->SetString("packet_sequence_number",
60 base::Uint64ToString(serialized_packet.sequence_number)); 59 base::Uint64ToString(serialized_packet.sequence_number));
61 dict->SetString("original_sequence_number",
62 base::Uint64ToString(original_sequence_number));
63 dict->SetInteger("size", packet_size); 60 dict->SetInteger("size", packet_size);
64 dict->SetInteger("sent_time_us", sent_time.ToDebuggingValue()); 61 dict->SetInteger("sent_time_us", sent_time.ToDebuggingValue());
65 return dict; 62 return dict;
66 } 63 }
67 64
65 base::Value* NetLogQuicPacketRetransmittedCallback(
66 QuicPacketSequenceNumber old_sequence_number,
67 QuicPacketSequenceNumber new_sequence_number,
68 NetLog::LogLevel /* log_level */) {
69 base::DictionaryValue* dict = new base::DictionaryValue();
70 dict->SetString("old_packet_sequence_number",
71 base::Uint64ToString(old_sequence_number));
72 dict->SetString("new_packet_sequence_number",
73 base::Uint64ToString(new_sequence_number));
74 return dict;
75 }
76
68 base::Value* NetLogQuicPacketHeaderCallback(const QuicPacketHeader* header, 77 base::Value* NetLogQuicPacketHeaderCallback(const QuicPacketHeader* header,
69 NetLog::LogLevel /* log_level */) { 78 NetLog::LogLevel /* log_level */) {
70 base::DictionaryValue* dict = new base::DictionaryValue(); 79 base::DictionaryValue* dict = new base::DictionaryValue();
71 dict->SetString("connection_id", 80 dict->SetString("connection_id",
72 base::Uint64ToString(header->public_header.connection_id)); 81 base::Uint64ToString(header->public_header.connection_id));
73 dict->SetInteger("reset_flag", header->public_header.reset_flag); 82 dict->SetInteger("reset_flag", header->public_header.reset_flag);
74 dict->SetInteger("version_flag", header->public_header.version_flag); 83 dict->SetInteger("version_flag", header->public_header.version_flag);
75 dict->SetString("packet_sequence_number", 84 dict->SetString("packet_sequence_number",
76 base::Uint64ToString(header->packet_sequence_number)); 85 base::Uint64ToString(header->packet_sequence_number));
77 dict->SetInteger("entropy_flag", header->entropy_flag); 86 dict->SetInteger("entropy_flag", header->entropy_flag);
(...skipping 395 matching lines...) Expand 10 before | Expand all | Expand 10 after
473 } 482 }
474 } 483 }
475 484
476 void QuicConnectionLogger::OnPacketSent( 485 void QuicConnectionLogger::OnPacketSent(
477 const SerializedPacket& serialized_packet, 486 const SerializedPacket& serialized_packet,
478 QuicPacketSequenceNumber original_sequence_number, 487 QuicPacketSequenceNumber original_sequence_number,
479 EncryptionLevel level, 488 EncryptionLevel level,
480 TransmissionType transmission_type, 489 TransmissionType transmission_type,
481 const QuicEncryptedPacket& packet, 490 const QuicEncryptedPacket& packet,
482 QuicTime sent_time) { 491 QuicTime sent_time) {
483 net_log_.AddEvent( 492 if (original_sequence_number == 0) {
484 NetLog::TYPE_QUIC_SESSION_PACKET_SENT, 493 net_log_.AddEvent(
485 base::Bind(&NetLogQuicPacketSentCallback, serialized_packet, 494 NetLog::TYPE_QUIC_SESSION_PACKET_SENT,
486 original_sequence_number, level, transmission_type, 495 base::Bind(&NetLogQuicPacketSentCallback, serialized_packet,
487 packet.length(), sent_time)); 496 level, transmission_type, packet.length(), sent_time));
497 } else {
498 net_log_.AddEvent(
499 NetLog::TYPE_QUIC_SESSION_PACKET_RETRANSMITTED,
500 base::Bind(&NetLogQuicPacketRetransmittedCallback,
501 original_sequence_number,
502 serialized_packet.sequence_number));
503 }
488 } 504 }
489 505
490 void QuicConnectionLogger::OnPacketReceived(const IPEndPoint& self_address, 506 void QuicConnectionLogger::OnPacketReceived(const IPEndPoint& self_address,
491 const IPEndPoint& peer_address, 507 const IPEndPoint& peer_address,
492 const QuicEncryptedPacket& packet) { 508 const QuicEncryptedPacket& packet) {
493 if (local_address_from_self_.GetFamily() == ADDRESS_FAMILY_UNSPECIFIED) { 509 if (local_address_from_self_.GetFamily() == ADDRESS_FAMILY_UNSPECIFIED) {
494 local_address_from_self_ = self_address; 510 local_address_from_self_ = self_address;
495 UMA_HISTOGRAM_ENUMERATION("Net.QuicSession.ConnectionTypeFromSelf", 511 UMA_HISTOGRAM_ENUMERATION("Net.QuicSession.ConnectionTypeFromSelf",
496 GetRealAddressFamily(self_address.address()), 512 GetRealAddressFamily(self_address.address()),
497 ADDRESS_FAMILY_LAST); 513 ADDRESS_FAMILY_LAST);
(...skipping 394 matching lines...) Expand 10 before | Expand all | Expand 10 after
892 continue; 908 continue;
893 } 909 }
894 // Record some overlapping patterns, to get a better picture, since this is 910 // Record some overlapping patterns, to get a better picture, since this is
895 // not very expensive. 911 // not very expensive.
896 if (i % 3 == 0) 912 if (i % 3 == 0)
897 six_packet_histogram->Add(recent_6_mask); 913 six_packet_histogram->Add(recent_6_mask);
898 } 914 }
899 } 915 }
900 916
901 } // namespace net 917 } // namespace net
OLDNEW
« no previous file with comments | « net/http/http_cache_unittest.cc ('k') | net/quic/quic_session_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698