Cloudflare рд▓реЗ NGINX рдорд╛ HTTP/3 рд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрди рдореЛрдбреНрдпреБрд▓ рд▓рд╛рдЧреВ рдЧрд░реЗрдХреЛ рдЫ

рдХреНрд▓рд╛рдЙрдбрдлреНрд▓реЗрдпрд░ рдХрдореНрдкрдиреА рддрдпрд╛рд░ рдореЛрдбреНрдпреБрд▓ NGINX рдорд╛ HTTP/3 рдкреНрд░реЛрдЯреЛрдХрд▓рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдЧрд░реНрдиред рдореЛрдбреНрдпреБрд▓ рдХреНрд▓рд╛рдЙрдбрдлреНрд▓реЗрдпрд░ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рдкреБрд╕реНрддрдХрд╛рд▓рдпрдорд╛ рдПрдб-рдЕрдирдХреЛ рд░реВрдкрдорд╛ рдбрд┐рдЬрд╛рдЗрди рдЧрд░рд┐рдПрдХреЛ рд╣реЛ quiche QUIC рд░ HTTP/3 рдпрд╛рддрд╛рдпрд╛рдд рдкреНрд░реЛрдЯреЛрдХрд▓ рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕рдВрдЧред рдХреНрд╡рд┐рдЪ рдХреЛрдб Rust рдорд╛ рд▓реЗрдЦрд┐рдПрдХреЛ рдЫ, рддрд░ NGINX рдореЛрдбреНрдпреБрд▓ рдЖрдлреИ C рдорд╛ рд▓реЗрдЦрд┐рдПрдХреЛ рдЫ рд░ рдЧрддрд┐рд╢реАрд▓ рд▓рд┐рдЩреНрдХ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдкрд╣реБрдБрдЪ рдЧрд░реНрджрдЫред рд╡рд┐рдХрд╛рд╕рд╣рд░реВ рдЦреЛрд▓реНрдиреБрд╣реЛрд╕реН BSD рд▓рд╛рдЗрд╕реЗрдиреНрд╕ рдЕрдиреНрддрд░реНрдЧрддред

рдЬрдореНрдорд╛ рдЧрд░реНрди, рдХреЗрд╡рд▓ рдбрд╛рдЙрдирд▓реЛрдб рдЧрд░реНрдиреБрд╣реЛрд╕реН рдкреНрдпрд╛рдЪ nginx 1.16 рд░ рдХреЛрдб quiche рдкреБрд╕реНрддрдХрд╛рд▓рдпрд╣рд░реВ, рддреНрдпрд╕рдкрдЫрд┐ nginx рд▓рд╛рдИ "тАФwith-http_v3_module тАФwith-quiche=../quiche" рд╡рд┐рдХрд▓реНрдкрд╣рд░реВрд╕рдБрдЧ рдкреБрди: рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрдиреБрд╣реЛрд╕реНред рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрджрд╛, TLS рд╕рдорд░реНрдерди BoringSSL рдкреБрд╕реНрддрдХрд╛рд▓рдпрдорд╛ рдЖрдзрд╛рд░рд┐рдд рд╣реБрдиреБрдкрд░реНрдЫ (тАЬ--with-openssl=../quiche/deps/boringsslтАЭ), OpenSSL рдХреЛ рдкреНрд░рдпреЛрдЧ рдЕрдЭреИ рд╕рдорд░реНрдерд┐рдд рдЫреИрдиред рдЬрдбрд╛рдирд╣рд░реВ рд╕реНрд╡реАрдХрд╛рд░ рдЧрд░реНрди, рддрдкрд╛рдИрдВрд▓реЗ рд╕реЗрдЯрд┐рдЩрд╣рд░реВрдорд╛ "рдХреНрд╡рд┐рдХ" рдлреНрд▓реНрдпрд╛рдЧрдХреЛ рд╕рд╛рде рд╕реБрдиреНрди рдирд┐рд░реНрджреЗрд╢рди рдердкреНрди рдЖрд╡рд╢реНрдпрдХ рдЫ (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, "рд╕реБрдиреНрди 443 рдХреНрд╡рд┐рдХ рдкреБрди: рдкреНрд░рдпреЛрдЧ рд░рд┐рдкреЛрд░реНрдЯ")ред

рдХреНрд▓рд╛рдЗрдиреНрдЯ рд╕рдлреНрдЯрд╡реЗрдпрд░рдорд╛, рдХреНрд░реЛрдо рдХреНрдпрд╛рдирд░реА рд░ рдХрд░реНрд▓ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдХреЛ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рдирд┐рд░реНрдорд╛рдгрд╣рд░реВрдорд╛ HTTP/3 рд╕рдорд░реНрдерди рдкрд╣рд┐рд▓реЗ рдиреИ рдердкрд┐рдПрдХреЛ рдЫред рд╕рд░реНрднрд░ рд╕рд╛рдЗрдбрдорд╛, рдЕрд╣рд┐рд▓реЗ рд╕рдореНрдо рдпреЛ рдЕрд▓рдЧ, рд╕реАрдорд┐рдд рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдерд┐рдпреЛ рдкрд░реАрдХреНрд╖рдг рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдиред nginx рдорд╛ HTTP/3 рдкреНрд░рд╢реЛрдзрди рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛рд▓реЗ HTTP/3 рд╕рдорд░реНрдердирдХреЛ рд╕рд╛рде рд╕рд░реНрднрд░рд╣рд░реВрдХреЛ рддреИрдирд╛рддреАрд▓рд╛рдИ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рд░реВрдкрдорд╛ рд╕рд░рд▓ рдмрдирд╛рдЙрдиреЗрдЫ рд░ рдирдпрд╛рдБ рдкреНрд░реЛрдЯреЛрдХрд▓рдХреЛ рдкрд░реАрдХреНрд╖рдг рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирд▓рд╛рдИ рдердк рдкрд╣реБрдБрдЪрдпреЛрдЧреНрдп рдмрдирд╛рдЙрдиреЗрдЫред nginx рдорд╛ HTTP/3 рдХреЛ рд▓рд╛рдЧрд┐ рдорд╛рдирдХ рд╕рдорд░реНрдерди рдХреЛ рдЙрджреНрднрд╡ рдЕрдкреЗрдХреНрд╖рд┐рдд 1.17-6 рдорд╣рд┐рдирд╛рдХреЛ рд▓рд╛рдЧрд┐ 12.x рд╢рд╛рдЦрд╛рдорд╛ред

рдпрд╛рдж рдЧрд░реНрдиреБрд╣реЛрд╕реН рдХрд┐ HTTP/3 рд▓реЗ HTTP/2 рдХреЛ рд▓рд╛рдЧрд┐ рдпрд╛рддрд╛рдпрд╛рддрдХреЛ рд░реВрдкрдорд╛ QUIC рдкреНрд░реЛрдЯреЛрдХрд▓рдХреЛ рдкреНрд░рдпреЛрдЧрд▓рд╛рдИ рдорд╛рдирдХ рдмрдирд╛рдЙрдБрдЫред рдкреНрд░реЛрдЯреЛрдХрд▓ рдХреНрд╡рд┐рдХ (рджреНрд░реБрдд UDP рдЗрдиреНрдЯрд░рдиреЗрдЯ рдЬрдбрд╛рдирд╣рд░реВ) 2013 рджреЗрдЦрд┐ Google рджреНрд╡рд╛рд░рд╛ рд╡реЗрдмрдХреЛ рд▓рд╛рдЧрд┐ TCP+TLS рд╕рдВрдпреЛрдЬрдирдХреЛ рд╡рд┐рдХрд▓реНрдкрдХреЛ рд░реВрдкрдорд╛ рд╡рд┐рдХрд╛рд╕ рдЧрд░рд┐рдПрдХреЛ рдЫ, TCP рдорд╛ рдЬрдбрд╛рдирд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд▓рд╛рдореЛ рд╕реЗрдЯрдЕрдк рд░ рд╡рд╛рд░реНрддрд╛рд▓рд╛рдк рд╕рдордпрдХреЛ рд╕рдорд╕реНрдпрд╛ рд╕рдорд╛рдзрд╛рди рдЧрд░реНрджреИ рд░ рдбреЗрдЯрд╛ рд╕реНрдерд╛рдирд╛рдиреНрддрд░рдгрдХреЛ рдХреНрд░рдордорд╛ рдкреНрдпрд╛рдХреЗрдЯрд╣рд░реВ рд╣рд░рд╛рдЙрдБрджрд╛ рдврд┐рд▓рд╛рдЗ рд╣рдЯрд╛рдЙрдиреЗред QUIC UDP рдкреНрд░реЛрдЯреЛрдХрд▓рдХреЛ рд╡рд┐рд╕реНрддрд╛рд░ рд╣реЛ рдЬрд╕рд▓реЗ рдзреЗрд░реИ рдЬрдбрд╛рдирд╣рд░реВрдХреЛ рдорд▓реНрдЯрд┐рдкреНрд▓реЗрдХреНрд╕рд┐рдЩрд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫ рд░ TLS/SSL рдХреЛ рдмрд░рд╛рдмрд░рдХреЛ рдЗрдиреНрдХреНрд░рд┐рдкреНрд╢рди рд╡рд┐рдзрд┐рд╣рд░реВ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫред

рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рд╣рд░реБ QUIC:

  • TLS рдЬрд╕реНрддреИ рдЙрдЪреНрдЪ рд╕реБрд░рдХреНрд╖рд╛ (рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдкрдорд╛ QUIC рд▓реЗ UDP рдорд╛ TLS рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫ);
  • рдкреНрд░рд╡рд╛рд╣ рдЕрдЦрдгреНрдбрддрд╛ рдирд┐рдпрдиреНрддреНрд░рдг, рдкреНрдпрд╛рдХреЗрдЯ рд╣рд╛рдирд┐ рд░реЛрдХреНрди;
  • рддрддреНрдХрд╛рд▓ рдЬрдбрд╛рди рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛ (0-RTT, рд▓рдЧрднрдЧ 75% рдХреЗрд╕рд╣рд░реВрдорд╛ рдбрд╛рдЯрд╛ рдЬрдбрд╛рди рд╕реЗрдЯрдЕрдк рдкреНрдпрд╛рдХреЗрдЯ рдкрдард╛рдПрдкрдЫрд┐ рддреБрд░реБрдиреНрддреИ рдкреНрд░рд╕рд╛рд░рдг рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ) рд░ рдЕрдиреБрд░реЛрдз рдкрдард╛рдЙрди рд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди (RTT, рд░рд╛рдЙрдиреНрдб рдЯреНрд░рд┐рдк рд╕рдордп) рдмреАрдЪрдорд╛ рдиреНрдпреВрдирддрдо рдврд┐рд▓рд╛рдЗ рдкреНрд░рджрд╛рди рдЧрд░реНрдиреБрд╣реЛрд╕реН;
  • рдкреНрдпрд╛рдХреЗрдЯ рдкреБрди: рдкреНрд░рд╕рд╛рд░рдг рдЧрд░реНрджрд╛ рдЙрд╣реА рдЕрдиреБрдХреНрд░рдо рдирдореНрдмрд░ рдкреНрд░рдпреЛрдЧ рдирдЧрд░реНрдиреЗ, рдЬрд╕рд▓реЗ рдкреНрд░рд╛рдкреНрдд рдкреНрдпрд╛рдХреЗрдЯрд╣рд░реВ рдкрд╣рд┐рдЪрд╛рди рдЧрд░реНрдирдорд╛ рдЕрд╕реНрдкрд╖реНрдЯрддрд╛рд▓рд╛рдИ рдЬреЛрдЧрд╛рдЙрдБрдЫ рд░ рдЯрд╛рдЗрдордЖрдЙрдЯрдмрд╛рдЯ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдЙрдБрдЫ;
  • рдкреНрдпрд╛рдХреЗрдЯрдХреЛ рд╣рд╛рдирд┐рд▓реЗ рдпрд╕рд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рд╕реНрдЯреНрд░рд┐рдордХреЛ рдбреЗрд▓рд┐рднрд░реАрд▓рд╛рдИ рдорд╛рддреНрд░ рдЕрд╕рд░ рдЧрд░реНрдЫ рд░ рд╣рд╛рд▓рдХреЛ рдЬрдбрд╛рди рдорд╛рд░реНрдлрдд рдкрдард╛рдЗрдПрдХреЛ рд╕рдорд╛рдирд╛рдиреНрддрд░ рд╕реНрдЯреНрд░рд┐рдорд╣рд░реВрдорд╛ рдбреЗрдЯрд╛рдХреЛ рдбреЗрд▓рд┐рднрд░реАрд▓рд╛рдИ рд░реЛрдХреНрджреИрди;
  • рддреНрд░реБрдЯрд┐ рд╕реБрдзрд╛рд░ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рдЬрд╕рд▓реЗ рд╣рд░рд╛рдПрдХреЛ рдкреНрдпрд╛рдХреЗрдЯрд╣рд░реВрдХреЛ рдкреБрди: рдкреНрд░рд╕рд╛рд░рдгрдХреЛ рдХрд╛рд░рдгрд▓реЗ рдврд┐рд▓рд╛рдЗ рдХрдо рдЧрд░реНрджрдЫред рд╣рд░рд╛рдПрдХреЛ рдкреНрдпрд╛рдХреЗрдЯ рдбрд╛рдЯрд╛ рдкреБрди: рдкреНрд░рд╕рд╛рд░рдг рдЖрд╡рд╢реНрдпрдХ рдкрд░реНрдиреЗ рдЕрд╡рд╕реНрдерд╛рд╣рд░реВрд▓рд╛рдИ рдХрдо рдЧрд░реНрди рдкреНрдпрд╛рдХреЗрдЯ рд╕реНрддрд░рдорд╛ рд╡рд┐рд╢реЗрд╖ рддреНрд░реБрдЯрд┐ рд╕реБрдзрд╛рд░ рдХреЛрдбрд╣рд░реВрдХреЛ рдкреНрд░рдпреЛрдЧред
  • рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рдмреНрд▓рдХ рд╕реАрдорд╛рд╣рд░реВ QUIC рдкреНрдпрд╛рдХреЗрдЯ рд╕реАрдорд╛рд╣рд░реВрд╕рдБрдЧ рдкрдЩреНрдХреНрддрд┐рдмрджреНрдз рдЫрдиреН, рдЬрд╕рд▓реЗ рдкрдЫрд┐рдХрд╛ рдкреНрдпрд╛рдХреЗрдЯрд╣рд░реВрдХреЛ рд╕рд╛рдордЧреНрд░реАрд╣рд░реВ рдбрд┐рдХреЛрдбрд┐рдЩрдорд╛ рдкреНрдпрд╛рдХреЗрдЯ рдШрд╛рдЯрд╛рдХреЛ рдкреНрд░рднрд╛рд╡рд▓рд╛рдИ рдХрдо рдЧрд░реНрдЫ;
  • TCP рд▓рд╛рдо рдЕрд╡рд░реБрджреНрдз рд╕рдВрдЧ рдХреБрдиреИ рд╕рдорд╕реНрдпрд╛ рдЫреИрди;
  • рдЬрдбрд╛рди рдкрд╣рд┐рдЪрд╛рдирдХрд░реНрддрд╛рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди, рдЬрд╕рд▓реЗ рдореЛрдмрд╛рдЗрд▓ рдЧреНрд░рд╛рд╣рдХрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдкреБрди: рдЬрдбрд╛рди рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрди рд▓рд╛рдЧреНрдиреЗ рд╕рдордпрд▓рд╛рдИ рдХрдо рдЧрд░реНрдЫ;
  • рдЙрдиреНрдирдд рдЬрдбрд╛рди рднреАрдб рдирд┐рдпрдиреНрддреНрд░рдг рд╕рдВрдпрдиреНрддреНрд░ рдЬрдбрд╛рди рдЧрд░реНрдиреЗ рд╕рдореНрднрд╛рд╡рдирд╛;
  • рдкреНрдпрд╛рдХреЗрдЯрд╣рд░реВ рдЗрд╖реНрдЯрддрдо рджрд░рд╣рд░реВрдорд╛ рдкрдард╛рдЗрдиреНрдЫ рднрдиреЗрд░ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░реНрди рдкреНрд░рддрд┐-рджрд┐рд╢рд╛ рдереНрд░реБрдкреБрдЯ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдкреНрд░рд╡рд┐рдзрд┐рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрдЫ, рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рднреАрдбрднрд╛рдб рд╣реБрдирдмрд╛рдЯ рд░реЛрдХреНрди рд░ рдкреНрдпрд╛рдХреЗрдЯ рдиреЛрдХреНрд╕рд╛рдирдХреЛ рдХрд╛рд░рдг;
  • рдЧреНрд░рд╣рдгрдпреЛрдЧреНрдп рд╡реГрджреНрдзрд┐ TCP рдХреЛ рддреБрд▓рдирд╛рдорд╛ рдкреНрд░рджрд░реНрд╢рди рд░ рдереНрд░реБрдкреБрдЯред YouTube рдЬрд╕реНрддрд╛ рднрд┐рдбрд┐рдпреЛ рд╕реЗрд╡рд╛рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐, QUIC рд▓реЗ рднрд┐рдбрд┐рдпреЛрд╣рд░реВ рд╣реЗрд░реНрджрд╛ 30% рд▓реЗ рд░рд┐рдмрдлрд░рд┐рдЩ рдЕрдкрд░реЗрд╢рдирд╣рд░реВ рдХрдо рдЧрд░реЗрдХреЛ рджреЗрдЦрд╛рдЗрдПрдХреЛ рдЫред
  • рд╕реНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди