annotate xml/en/docs/stream/stream_processing.xml @ 1878:127ae107e5a9

Removed clause about shared memory and Windows versions with ASLR. Starting with nginx 1.9.0 shared memory can be used on Windows versions with address space layout randomization.
author Maxim Dounin <mdounin@mdounin.ru>
date Mon, 26 Dec 2016 19:38:06 +0300
parents 59d1f512c3a0
children 2fd28cd4f2f8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1797
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
1 <!--
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
2 Copyright (C) Nginx, Inc.
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
3 -->
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
4
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
5 <!DOCTYPE article SYSTEM "../../../../dtd/article.dtd">
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
6
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
7 <article name="How nginx processes a TCP/UDP session"
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
8 link="/en/docs/stream/stream_processing.html"
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
9 lang="en"
1798
59d1f512c3a0 Documented the ngx_stream_ssl_preread_module module.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1797
diff changeset
10 rev="2">
1797
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
11
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
12 <section>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
13
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
14 <para>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
15 A TCP/UDP session from a client is processed
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
16 in successive steps called <b>phases</b>:
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
17
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
18 <list type="tag">
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
19
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
20 <tag-name id="postaccept_phase">
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
21 <literal>Post-accept</literal>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
22 </tag-name>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
23 <tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
24 The first phase after accepting a client connection.
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
25 The <link doc="ngx_stream_realip_module.xml">ngx_stream_realip_module</link>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
26 module is invoked at this phase.
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
27 </tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
28
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
29 <tag-name id="preaccess_phase">
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
30 <literal>Pre-access</literal>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
31 </tag-name>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
32 <tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
33 Preliminary check for access.
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
34 The <link doc="ngx_stream_limit_conn_module.xml">ngx_stream_limit_conn_module</link>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
35 module is invoked at this phase.
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
36 </tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
37
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
38 <tag-name id="access_phase">
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
39 <literal>Access</literal>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
40 </tag-name>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
41 <tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
42 Client access limitation before actual data processing.
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
43 The <link doc="ngx_stream_access_module.xml">ngx_stream_access_module</link>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
44 module is invoked at this phase.
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
45 </tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
46
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
47 <tag-name id="ssl_phase">
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
48 <literal>SSL</literal>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
49 </tag-name>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
50 <tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
51 TLS/SSL termination.
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
52 The <link doc="ngx_stream_ssl_module.xml">ngx_stream_ssl_module</link>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
53 module is invoked at this phase.
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
54 </tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
55
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
56 <tag-name id="preread_phase">
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
57 <literal>Preread</literal>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
58 </tag-name>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
59 <tag-desc>
1798
59d1f512c3a0 Documented the ngx_stream_ssl_preread_module module.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1797
diff changeset
60 Reading initial bytes of data into the
59d1f512c3a0 Documented the ngx_stream_ssl_preread_module module.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1797
diff changeset
61 <link doc="ngx_stream_core_module.xml" id="preread_buffer_size">preread buffer</link>
59d1f512c3a0 Documented the ngx_stream_ssl_preread_module module.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1797
diff changeset
62 to allow modules such as
59d1f512c3a0 Documented the ngx_stream_ssl_preread_module module.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1797
diff changeset
63 <link doc="ngx_stream_ssl_preread_module.xml">ngx_stream_ssl_preread_module</link>
59d1f512c3a0 Documented the ngx_stream_ssl_preread_module module.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1797
diff changeset
64 analyze the data before its processing.
1797
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
65 </tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
66
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
67 <tag-name id="content_phase">
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
68 <literal>Content</literal>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
69 </tag-name>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
70 <tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
71 Mandatory phase where data is actually processed, usually
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
72 <link doc="ngx_stream_proxy_module.xml">proxied</link> to
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
73 <link doc="ngx_stream_upstream_module.xml">upstream</link> servers,
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
74 or a specified value
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
75 is <link doc="ngx_stream_return_module.xml">returned</link> to a client.
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
76 </tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
77
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
78 <tag-name id="log_phase">
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
79 <literal>Log</literal>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
80 </tag-name>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
81 <tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
82 The final phase
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
83 where the result of a client session processing is recorded.
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
84 The <link doc="ngx_stream_log_module.xml">ngx_stream_log_module</link>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
85 module is invoked at this phase.
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
86 </tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
87 </list>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
88
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
89 </para>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
90
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
91 </section>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
92
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
93 </article>