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

Side by Side Diff: docs/memory-infra/probe-net.md

Issue 2949063002: Add documentation for //net MemoryDumpProvider (Closed)
Patch Set: self Created 3 years, 6 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 | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 # Network Stack Memory Tracing
2
3 This is an overview of the Net column in [MemoryInfra][memory-infra].
4
5 [TOC]
6
7 ## Quick Start
8
9 To get an overview of total network stack memory usage, select the Browser
10 process' *net* category and look at *effective_size* or *size* column.
11
12 ![net stack column][net-stack-column]
13
14 [memory-infra]: README.md
15 [net-stack-column]: https://storage.googleapis.com/chromium-docs.appspot.com/net _category.png
16
17 ## Detailed Information
18
19 The numbers are reported by the network stack’s MemoryDumpProvider, which is
20 implemented by URLRequestContext class. URLRequestContext calls into major
21 network stack objects (such as HttpNetworkSession, SSLClientSessionCache,
22 HttpCache) to aggregate memory usage numbers. The total number reported in
23 “net” is a lower bound of the memory used by the network stack. It is not
24 intended to be an accurate measurement. Please use
25 [heap profiler][heap-profiler] instead to see all allocations.
26
27 **URLRequestContext** (“url_request_context”)
28
29 This is a top-level network stack object used to create url requests. There are
30 several URLRequestContexts in Chrome. See
31 [Anatomy of the Network Stack][anatomy-of-network-stack] for what these
32 URLRequestContexts are created for. The number of URLRequestContexts increases
33 with the number of profiles.
34
35 For a “url_request_context” row, the “object_count” column indicates the number
36 of live URLRequests created by that context.
37
38 + Sub rows
39
40 - HttpCache (“http_cache”)
41
42 This cache can be a disk cache (backed by either block file or simple
43 cache backend) or an in-memory cache. An incognito profile, for example,
44 has an in-memory HttpCache. You can tell this by whether
45 *mem_backend_size* column is present for that particular
46 URLRequestContext.
47
48
49 **HttpNetworkSession** (“http_network_session”)
50
51 This network stack object owns socket pools, the HTTP/2 and QUIC session pools.
52 There is usually a 1:1 correspondence from a URLRequestContext to an
53 HttpNetworkSession, but there are exceptions. For example, the “main”
54 URLRequestContext shares the same HttpNetworkSession with “main_media”
55 URLRequestContext and “main_isolated_media” URLRequestContext.
56
57 + Sub rows
58
59 - HttpStreamFactory(“stream_factory”)
60
61 This object is an entry to establish HTTP/1.1, HTTP/2 and QUIC
62 connections.
63
64 - SpdySessionPool (“spdy_session_pool”)
65
66 This object owns HTTP/2 sessions.
67
68 - QuicStreamFactory (“quic_stream_factory”)
69
70 This object owns QUIC sessions and streams.
71
72 **SSLClientSessionCache** (“ssl_session_cache”)
73
74 This is a global singleton that caches SSL session objects which retain
75 references to refcounted SSL Certificates.
76
77 [heap-profiler]: /docs/memory-infra/heap_profiler.md
78 [anatomy-of-network-stack]: /net/docs/life-of-a-url-request.md
79
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698