annotate xml/en/docs/stream/stream_processing.xml @ 2769:16f6fa718be2

Updated TLSv1.3 support notes. Previous notes described some early development snapshot of OpenSSL 1.1.1 with disabled TLSv1.3 by default. It was then enabled in the first alpha. Further, the updated text covers later major releases such as OpenSSL 3.0.
author Sergey Kandaurov <pluknet@nginx.com>
date Thu, 30 Sep 2021 16:29:20 +0300
parents 2fd28cd4f2f8
children 4959250ba429
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"
2600
2fd28cd4f2f8 Added set module for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1798
diff changeset
10 rev="3">
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.
2600
2fd28cd4f2f8 Added set module for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1798
diff changeset
34 The
2fd28cd4f2f8 Added set module for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1798
diff changeset
35 <link doc="ngx_stream_limit_conn_module.xml">ngx_stream_limit_conn_module</link>
2fd28cd4f2f8 Added set module for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1798
diff changeset
36 and
2fd28cd4f2f8 Added set module for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1798
diff changeset
37 <link doc="ngx_stream_set_module.xml">ngx_stream_set_module</link>
2fd28cd4f2f8 Added set module for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1798
diff changeset
38 modules are invoked at this phase.
1797
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
39 </tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
40
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
41 <tag-name id="access_phase">
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
42 <literal>Access</literal>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
43 </tag-name>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
44 <tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
45 Client access limitation before actual data processing.
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
46 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
47 module is invoked at this phase.
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
48 </tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
49
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
50 <tag-name id="ssl_phase">
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
51 <literal>SSL</literal>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
52 </tag-name>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
53 <tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
54 TLS/SSL termination.
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
55 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
56 module is invoked at this phase.
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
57 </tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
58
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
59 <tag-name id="preread_phase">
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
60 <literal>Preread</literal>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
61 </tag-name>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
62 <tag-desc>
1798
59d1f512c3a0 Documented the ngx_stream_ssl_preread_module module.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1797
diff changeset
63 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
64 <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
65 to allow modules such as
59d1f512c3a0 Documented the ngx_stream_ssl_preread_module module.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1797
diff changeset
66 <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
67 analyze the data before its processing.
1797
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
68 </tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
69
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
70 <tag-name id="content_phase">
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
71 <literal>Content</literal>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
72 </tag-name>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
73 <tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
74 Mandatory phase where data is actually processed, usually
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
75 <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
76 <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
77 or a specified value
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
78 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
79 </tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
80
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
81 <tag-name id="log_phase">
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
82 <literal>Log</literal>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
83 </tag-name>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
84 <tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
85 The final phase
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
86 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
87 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
88 module is invoked at this phase.
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
89 </tag-desc>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
90 </list>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
91
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
92 </para>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
93
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
94 </section>
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
95
be868c8f6e9c Added article about processing TCP/UDP sessions.
Yaroslav Zhuravlev <yar@nginx.com>
parents:
diff changeset
96 </article>