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

Unified Diff: net/base/load_timing_info.h

Issue 1828203005: Expose SPDY pushes in DevTools (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: adjusted time interpolation to not scale outside of source range Created 4 years, 9 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 side-by-side diff with in-line comments
Download patch
Index: net/base/load_timing_info.h
diff --git a/net/base/load_timing_info.h b/net/base/load_timing_info.h
index 8ee5a22ec14c8da3e74dc061d87d3c09f6b13053..2c938df36d7bac191e147995e64bc104896c135d 100644
--- a/net/base/load_timing_info.h
+++ b/net/base/load_timing_info.h
@@ -38,12 +38,20 @@ namespace net {
// send_end
// receive_headers_end
//
-// Times represent when a request starts/stops blocking on an event, not the
-// time the events actually occurred. In particular, in the case of preconnects
+// Times represent when a request starts/stops blocking on an event(*), not the
+// time the events actually occurred. In particular, in the case of preconnects
// and socket reuse, no time may be spent blocking on establishing a connection.
// In the case of SPDY, PAC scripts are only run once for each shared session,
// so no time may be spent blocking on them.
//
+// (*) Note 1: push_start and push_end are the exception to this, as they
+// represent the operation which is asynchronous to normal request flow and
+// hence are provided as absolute values and not converted to "blocking" time.
+//
+// (*) Note 2: Internally to the network stack, times are those of actual event
+// occurrence. URLRequest converts them to time which the network stack was
+// blocked on each state, as per resource timing specs.
+//
// DNS and SSL times are both times for the host, not the proxy, so DNS times
// when using proxies are null, and only requests to HTTPS hosts (Not proxies)
// have SSL times. One exception to this is when a proxy server itself returns
@@ -52,9 +60,6 @@ namespace net {
// See HttpNetworkTransaction::OnHttpsProxyTunnelResponse.
// TODO(mmenke): Is this worth fixing?
//
-// Note that internal to the network stack, times are when events actually
-// occurred. URLRequest converts them to time which the network stack was
-// blocked on each state.
struct NET_EXPORT LoadTimingInfo {
// Contains the LoadTimingInfo events related to establishing a connection.
// These are all set by ConnectJobs.
@@ -136,6 +141,12 @@ struct NET_EXPORT LoadTimingInfo {
// The time at which the end of the HTTP headers were received.
base::TimeTicks receive_headers_end;
+
+ // In case the resource was proactively pushed by the server, these are
+ // the times that push started and ended. Note that push_end will be null
+ // if the request is still being pushed.
+ base::TimeTicks push_start;
+ base::TimeTicks push_end;
};
} // namespace net

Powered by Google App Engine
This is Rietveld 408576698