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

Side by Side Diff: net/docs/crash-course-in-net-internals.md

Issue 2537373002: Use different source types for each ConnectJob subclass. (Closed)
Patch Set: backwards compat Created 4 years 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
OLDNEW
1 # A Crash Course in Debugging with about:net-internals 1 # A Crash Course in Debugging with about:net-internals
2 2
3 This document is intended to help get people started debugging network errors 3 This document is intended to help get people started debugging network errors
4 with about:net-internals, with some commonly useful tips and tricks. This 4 with about:net-internals, with some commonly useful tips and tricks. This
5 document is aimed more at how to get started using some of its features to 5 document is aimed more at how to get started using some of its features to
6 investigate bug reports, rather than as a feature overview. 6 investigate bug reports, rather than as a feature overview.
7 7
8 It would probably be useful to read 8 It would probably be useful to read
9 [life-of-a-url-request.md](life-of-a-url-request.md) before this document. 9 [life-of-a-url-request.md](life-of-a-url-request.md) before this document.
10 10
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
55 handles the response). 55 handles the response).
56 56
57 * HTTP_STREAM_JOB: This corresponds to HttpStreamFactoryImpl::Job (Note that 57 * HTTP_STREAM_JOB: This corresponds to HttpStreamFactoryImpl::Job (Note that
58 one Request can have multiple Jobs). It also includes its proxy and DNS 58 one Request can have multiple Jobs). It also includes its proxy and DNS
59 lookups. HTTP_STREAM_JOB log events are separate from URL_REQUEST because 59 lookups. HTTP_STREAM_JOB log events are separate from URL_REQUEST because
60 two stream jobs may be created and races against each other, in some cases - 60 two stream jobs may be created and races against each other, in some cases -
61 one for one for QUIC, and one for HTTP. One of the final events of this source 61 one for one for QUIC, and one for HTTP. One of the final events of this source
62 indicates how an HttpStream was created (Reusing an existing SOCKET / 62 indicates how an HttpStream was created (Reusing an existing SOCKET /
63 HTTP2_SESSION / QUIC_SESSION, or creating a new one). 63 HTTP2_SESSION / QUIC_SESSION, or creating a new one).
64 64
65 * CONNECT_JOB: This corresponds to the ConnectJob subclasses that each socket 65 * \*_CONNECT_JOB: This corresponds to the ConnectJob subclasses that each socke t
66 pool uses. A successful CONNECT_JOB return a SOCKET. The events here vary a 66 pool uses. A successful CONNECT_JOB return a SOCKET. The events here vary a
67 lot by job type. Their main event is generally either to create a socket, or 67 lot by job type. Their main event is generally either to create a socket, or
68 request a socket from another socket pool (Which creates another CONNECT_JOB) 68 request a socket from another socket pool (Which creates another CONNECT_JOB)
69 and then do some extra work on top of that - like establish an SSL connection on 69 and then do some extra work on top of that - like establish an SSL connection on
70 top of a TCP connection. 70 top of a TCP connection.
71 71
72 * SOCKET: These correspond to TCPSockets, but may also have other classes 72 * SOCKET: These correspond to TCPSockets, but may also have other classes
73 layered on top of them (Like an SSLClientSocket). This is a bit different from 73 layered on top of them (Like an SSLClientSocket). This is a bit different from
74 the other classes, where the name corresponds to the topmost class, instead of 74 the other classes, where the name corresponds to the topmost class, instead of
75 the bottommost one. This is largely an artifact of the fact the socket is 75 the bottommost one. This is largely an artifact of the fact the socket is
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
174 things like HSTS redirects (URLRequestRedirectJob), AppCache, ServiceWorker, 174 things like HSTS redirects (URLRequestRedirectJob), AppCache, ServiceWorker,
175 etc. These generally don't log as much information, so it can be tricky to 175 etc. These generally don't log as much information, so it can be tricky to
176 figure out what's going on with these. 176 figure out what's going on with these.
177 177
178 * Non-HTTP requests also appear in the log, and also generally don't log much 178 * Non-HTTP requests also appear in the log, and also generally don't log much
179 (blob URLs, chrome URLs, etc). 179 (blob URLs, chrome URLs, etc).
180 180
181 * Preconnects create a "HTTP_STREAM_JOB" event that may create multiple 181 * Preconnects create a "HTTP_STREAM_JOB" event that may create multiple
182 CONNECT_JOBs (or none) and is then destroyed. These can be identified by the 182 CONNECT_JOBs (or none) and is then destroyed. These can be identified by the
183 "SOCKET_POOL_CONNECTING_N_SOCKETS" events. 183 "SOCKET_POOL_CONNECTING_N_SOCKETS" events.
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698