HTTP/3 рдкреНрд░реЛрдЯреЛрдХрд▓ рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕рдВрдЧ nghttp1.0 3 рдкреБрд╕реНрддрдХрд╛рд▓рдп рдкреНрд░рдХрд╛рд╢рд┐рдд рдЧрд░рд┐рдПрдХреЛ рдЫ

nghttp3 рдкрд░рд┐рдпреЛрдЬрдирд╛рдХреЛ рдкрд╣рд┐рд▓реЛ рд╕реНрдерд┐рд░ рд░рд┐рд▓реАрдЬ рдЙрдкрд▓рдмреНрдз рдЫ, HTTP/3 рдкреНрд░реЛрдЯреЛрдХрд▓рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдХреЛ рд╕рд╛рде C рднрд╛рд╖рд╛рдорд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╡рд┐рдХрд╛рд╕ рдЧрд░реНрджреИред рдПрдЙрдЯреИ рдкрд░рд┐рдпреЛрдЬрдирд╛рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд HTTP/2 рдкреНрд░реЛрдЯреЛрдХрд▓рдХреЛ рд▓рд╛рдЧрд┐ рдкреБрд╕реНрддрдХрд╛рд▓рдпрдХреЛ рд╕рдВрд╕реНрдХрд░рдг mod_http2 рдореЛрдбреНрдпреБрд▓рдХреЛ рдЖрдзрд╛рд░рдХреЛ рд░реВрдкрдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫ, рдЬреБрди Apache http рд╕рд░реНрднрд░рдХреЛ рднрд╛рдЧ рд╣реЛред рдкрд░рд┐рдпреЛрдЬрдирд╛рдХреЛ рд╡рд┐рдХрд╛рд╕рд╣рд░реВ рдкрдирд┐ рдХрд░реНрд▓ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫред рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛрдб MIT рд▓рд╛рдЗрд╕реЗрдиреНрд╕ рдЕрдиреНрддрд░реНрдЧрдд рд╡рд┐рддрд░рдг рдЧрд░рд┐рдПрдХреЛ рдЫред

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

nghttp3 рд▓реЗ RFC 9114 (HTTP/3 рдорд╛рдерд┐ QUIC), RFC 920 (QPACK рд╣реЗрдбрд░ рдХрдореНрдкреНрд░реЗрд╕рди рдЯреЗрдХреНрдиреЛрд▓реЛрдЬреА), RFC 9220 (HTTP/3 рдорд╛рдерд┐ рд╡реЗрдмрд╕рдХреЗрдЯрд╣рд░реВ), рд░ RFC 9218 (рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рд╣рд░реВ рдкрдард╛рдЙрдиреЗ рдкреНрд░рд╛рдердорд┐рдХрддрд╛рд╣рд░реВ рдкреНрд░рдмрдиреНрдз рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдпреЛрдЬрдирд╛) рдХреЛ рд╕реНрд╡рддрдиреНрддреНрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫред рдЧреНрд░рд╛рд╣рдХ рдЕрдиреБрд░реЛрдз)ред рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╡рд┐рд╢рд┐рд╖реНрдЯ QUIC рд╕реНрдЯреНрдпрд╛рдХрд╣рд░реВрдорд╛ рдирд┐рд░реНрднрд░ рд╣реБрдБрджреИрди рд░ QUIC рдпрд╛рддрд╛рдпрд╛рдд рдкреНрд░реЛрдЯреЛрдХрд▓рдХреЛ рд╡рд┐рднрд┐рдиреНрди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирд╣рд░реВрдХреЛ рд╢реАрд░реНрд╖рдорд╛ рдХрд╛рдо рдЧрд░реНрди рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫред рдПрдХреИ рд╕рдордпрдорд╛, рдкрд░рд┐рдпреЛрдЬрдирд╛рд▓реЗ QUIC рдкреНрд░реЛрдЯреЛрдХрд▓ - ngtcp2 рдХреЛ рдЖрдлреНрдиреИ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкрдирд┐ рд╡рд┐рдХрд╛рд╕ рдЧрд░рд┐рд░рд╣реЗрдХреЛ рдЫ, рдЬреБрди рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд░реВрдкрдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫред ngtcp2 рд▓реЗ quictls, GnuTLS, BoringSSL, Picotls рд░ wolfSSL рд▓рд╛рдИ рдбреЗрдЯрд╛ рдЗрдиреНрдХреНрд░рд┐рдкреНрд╢рдирдХреЛ рд▓рд╛рдЧрд┐ рдмреНрдпрд╛рдХрдПрдиреНрдбрдХреЛ рд░реВрдкрдорд╛ рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫред nghttp3 1.0 рд╕рдБрдЧрд╕рдБрдЧреИ, ngtcp2 1.0 рдХреЛ рдкрд╣рд┐рд▓реЛ рд╕реНрдерд┐рд░ рд░рд┐рд▓реАрдЬ рдкреНрд░рдХрд╛рд╢рд┐рдд рднрдПрдХреЛ рдерд┐рдпреЛред

рд╕реНрд░реЛрдд: opennet.ru

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