์ธํฐ๋ท ํ๋กํ ์ฝ ๋ฐ ์ํคํ ์ฒ ๊ฐ๋ฐ์ ๋ด๋นํ๋ IETF(Internet Engineering Task Force)๋ HTTP/3.0 ํ๋กํ ์ฝ์ ๋ํ RFC ๊ตฌ์ฑ์ ์๋ฃํ๊ณ ์๋ณ์ RFC 9114(ํ๋กํ ์ฝ) ๋ฐ RFC 9204( HTTP/3์ฉ QPACK ํค๋ ์์ถ ๊ธฐ์ ) . HTTP/3.0 ์ฌ์์ "์ ์๋ ํ์ค" ์ํ๋ฅผ ๋ฐ์์ต๋๋ค. ๊ทธ ํ ์์ ์ RFC์ ์ด์ ํ์ค(์ด์ ํ์ค) ์ํ๋ฅผ ๋ถ์ฌํ๊ธฐ ์์ํฉ๋๋ค. ์ด๋ ์ค์ ๋ก ํ๋กํ ์ฝ์ ์์ ํ ์์ ํ๋ฅผ ์๋ฏธํ๊ณ ๋ชจ๋ ์ฌํญ์ ๊ณ ๋ คํฉ๋๋ค. ์์ฑ๋ ๋๊ธ์ ๋๋ค. ๋์์ HTTP/1.1(RFC 9112) ๋ฐ HTTP/2.0(RFC 9113) ํ๋กํ ์ฝ์ ๋ํ ์ฌ์์ ์ ๋ฐ์ดํธ๋ ๋ฒ์ ๊ณผ HTTP ์์ฒญ(RFC 9110) ๋ฐ HTTP ์บ์ฑ ์ ์ด ํค๋์ ์๋ฏธ๋ฅผ ์ ์ํ๋ ๋ฌธ์๊ฐ ๊ฒ์๋์์ต๋๋ค. (RFC 9111).
HTTP/3 ํ๋กํ ์ฝ์ HTTP/2์ ๋ํ ์ ์ก์ผ๋ก QUIC(๋น ๋ฅธ UDP ์ธํฐ๋ท ์ฐ๊ฒฐ) ํ๋กํ ์ฝ์ ์ฌ์ฉ์ ์ ์ํฉ๋๋ค. QUIC๋ ๋ค์ค ์ฐ๊ฒฐ์ ๋ค์คํ๋ฅผ ์ง์ํ๊ณ TLS/SSL๊ณผ ๋๋ฑํ ์ํธํ ๋ฐฉ๋ฒ์ ์ ๊ณตํ๋ UDP ํ๋กํ ์ฝ์ ํ์ฅ์ ๋๋ค. ์ด ํ๋กํ ์ฝ์ ์น์ฉ TCP+TLS ์กฐํฉ์ ๋์์ผ๋ก Google์ด 2013๋ ์ ๊ฐ๋ฐํ์ฌ TCP์ ๊ธด ์ฐ๊ฒฐ ์ค์ ๋ฐ ํ์ ์๊ฐ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ ๋ฐ์ดํฐ ์ ์ก ์ค ํจํท์ด ์์ค๋ ๋ ๋ฐ์ํ๋ ์ง์ฐ์ ์ ๊ฑฐํฉ๋๋ค.
ํ์ฌ QUIC ๋ฐ HTTP/3.0 ์ง์์ ๋๋ฆฌ ์ฌ์ฉ๋๋ ๋ชจ๋ ์น ๋ธ๋ผ์ฐ์ ์ ์ด๋ฏธ ๊ตฌํ๋์ด ์์ต๋๋ค(Chrome, Firefox ๋ฐ Edge์์๋ HTTP/3 ์ง์์ด ๊ธฐ๋ณธ์ ์ผ๋ก ํ์ฑํ๋์ด ์์ผ๋ฉฐ Safari์์๋ "๊ณ ๊ธ > ์คํ์ ๊ธฐ๋ฅ > HTTP/3" ์ค์ ์ด ํ์ํจ). ํ์ฑํ๋ฉ๋๋ค). ์๋ฒ ์ธก์์๋ nginx(๋ณ๋์ ๋ถ๊ธฐ ๋ฐ ๋ณ๋์ ๋ชจ๋ ํ์), Caddy, IIS ๋ฐ LiteSpeed์ ๋ํด HTTP/3 ๊ตฌํ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. HTTP/3 ์ง์์ Cloudflare ์ฝํ ์ธ ์ ์ก ๋คํธ์ํฌ์์๋ ์ ๊ณต๋ฉ๋๋ค.
QUIC์ ์ฃผ์ ๊ธฐ๋ฅ:
- TLS์ ์ ์ฌํ ๋์ ๋ณด์(๊ธฐ๋ณธ์ ์ผ๋ก QUIC๋ UDP๋ฅผ ํตํด TLS๋ฅผ ์ฌ์ฉํ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค)
- ํ๋ฆ ๋ฌด๊ฒฐ์ฑ ์ ์ด, ํจํท ์์ค ๋ฐฉ์ง
- ์ฆ์ ์ฐ๊ฒฐ์ ์ค์ ํ๊ณ (0-RTT, ์ฝ 75%์ ๊ฒฝ์ฐ ์ฐ๊ฒฐ ์ค์ ํจํท์ ๋ณด๋ธ ํ ์ฆ์ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ ์ ์์) ์์ฒญ ์ ์ก๊ณผ ์๋ต ์์ ์ฌ์ด์ ์ง์ฐ์ ์ต์ํํ๋ ๊ธฐ๋ฅ(RTT, ์๋ณต ์๊ฐ)
- ํจํท์ ์ฌ์ ์กํ ๋ ๋ค๋ฅธ ์ํ์ค ๋ฒํธ๋ฅผ ์ฌ์ฉํ๋ฉด ์์ ๋ ํจํท ์๋ณ์ ๋ชจํธ์ฑ์ ๋ฐฉ์งํ๊ณ ์๊ฐ ์ด๊ณผ๋ฅผ ์ ๊ฑฐํ ์ ์์ต๋๋ค.
- ํจํท ์์ค์ ํด๋น ํจํท๊ณผ ๊ด๋ จ๋ ์คํธ๋ฆผ์ ์ ๋ฌ์๋ง ์ํฅ์ ๋ฏธ์น๋ฉฐ ํ์ฌ ์ฐ๊ฒฐ์ ํตํด ์ ์ก๋๋ ๋ณ๋ ฌ ์คํธ๋ฆผ์ ๋ฐ์ดํฐ ์ ๋ฌ์ ์ค๋จํ์ง ์์ต๋๋ค.
- ์์ค๋ ํจํท์ ์ฌ์ ์ก์ผ๋ก ์ธํ ์ง์ฐ์ ์ต์ํํ๋ ์ค๋ฅ ์์ ๊ธฐ๋ฅ์ ๋๋ค. ์์ค๋ ํจํท ๋ฐ์ดํฐ์ ์ฌ์ ์ก์ด ํ์ํ ์ํฉ์ ์ค์ด๊ธฐ ์ํด ํจํท ์์ค์์ ํน์ ์ค๋ฅ ์์ ์ฝ๋๋ฅผ ์ฌ์ฉํฉ๋๋ค.
- ์ํธํ ๋ธ๋ก ๊ฒฝ๊ณ๋ QUIC ํจํท ๊ฒฝ๊ณ์ ์ ๋ ฌ๋์ด ํ์ ํจํท์ ๋ด์ฉ์ ๋์ฝ๋ฉํ ๋ ํจํท ์์ค์ด ๋ฏธ์น๋ ์ํฅ์ ์ค์ ๋๋ค.
- TCP ๋๊ธฐ์ด ์ฐจ๋จ์๋ ๋ฌธ์ ๊ฐ ์์ต๋๋ค.
- ๋ชจ๋ฐ์ผ ํด๋ผ์ด์ธํธ์ ๋ํ ์ฌ์ฐ๊ฒฐ์ ์ค์ ํ๋ ๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ์ค์ด๋ ์ฐ๊ฒฐ ์๋ณ์ ์ง์
- ๊ณ ๊ธ ์ฐ๊ฒฐ ์ ์ฒด ์ ์ด ๋ฉ์ปค๋์ฆ ์ฐ๊ฒฐ ๊ฐ๋ฅ์ฑ
- ๋ฐฉํฅ๋ณ ์ฒ๋ฆฌ๋ ์์ธก ๊ธฐ์ ์ ์ฌ์ฉํ์ฌ ํจํท์ด ์ต์ ์ ์๋๋ก ์ ์ก๋๋๋ก ๋ณด์ฅํ์ฌ ํจํท์ด ์ ์ฒด๋๊ฑฐ๋ ํจํท ์์ค์ด ๋ฐ์ํ๋ ๊ฒ์ ๋ฐฉ์งํฉ๋๋ค.
- TCP์ ๋นํด ์ฑ๋ฅ๊ณผ ์ฒ๋ฆฌ๋์ด ํฌ๊ฒ ์ฆ๊ฐํฉ๋๋ค. YouTube์ ๊ฐ์ ๋์์ ์๋น์ค์ ๊ฒฝ์ฐ QUIC์ ๋์์ ์์ฒญ ์ ๋ฆฌ๋ฒํผ๋ง ์์ ์ 30%๊น์ง ์ค์ด๋ ๊ฒ์ผ๋ก ๋ํ๋ฌ์ต๋๋ค.
HTTP/1.1 ์ฌ์์ ๋ณ๊ฒฝ ์ฌํญ ์ค ๋ด์ฉ๊ณผ ํจ๊ป ๋ณธ๋ฌธ ์ธ๋ถ์ ์บ๋ฆฌ์ง ๋ฆฌํด(CR) ๋ฌธ์๋ฅผ ๊ฒฉ๋ฆฌํ์ฌ ์ฌ์ฉํ๋ ๊ฒ์ด ๊ธ์ง๋์ด ์๋ค๋ ์ ์ ํ์ธํ ์ ์์ต๋๋ค. ํ๋กํ ์ฝ ์์์์ CR ๋ฌธ์๋ ์ค ๋ฐ๊ฟ ๋ฌธ์(CRLF)์ ํจ๊ป๋ง ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ฒญํฌ ์์ฒญ ๋ ์ด์์ ์๊ณ ๋ฆฌ์ฆ์ด ๊ฐ์ ๋์ด ํค๋๊ฐ ์๋ ์ฒจ๋ถ๋ ํ๋์ ์น์ ์ ๋ถ๋ฆฌ๋ฅผ ๋จ์ํํ์ต๋๋ค. "HTTP ์์ฒญ ๋ฐ์(HTTP Request Smuggling)" ๊ณต๊ฒฉ์ ์ฐจ๋จํ๊ธฐ ์ํด ๋ชจํธํ ์ฝํ ์ธ ๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํ ๊ถ์ฅ ์ฌํญ์ ์ถ๊ฐํ์ต๋๋ค. ์ด๋ฅผ ํตํด ํ๋ฐํธ์๋์ ๋ฐฑ์๋ ์ฌ์ด์ ํ๋ฆ์์ ๋ค๋ฅธ ์ฌ์ฉ์์ ์์ฒญ ์ฝํ ์ธ ์ ๊ฐ์ ํ ์ ์์ต๋๋ค.
HTTP/2.0 ์ฌ์ ์
๋ฐ์ดํธ๋ TLS 1.3์ ๋ํ ์ง์์ ๋ช
์์ ์ผ๋ก ์ ์ํฉ๋๋ค. ์ฐ์ ์์ ์ฒด๊ณ ๋ฐ ๊ด๋ จ ํค๋ ํ๋๊ฐ ๋ ์ด์ ์ฌ์ฉ๋์ง ์์ต๋๋ค. HTTP/1.1 ์ฐ๊ฒฐ์ ์
๋ฐ์ดํธํ๊ธฐ ์ํด ์ฌ์ฉ๋์ง ์๋ ๋ฉ์ปค๋์ฆ์ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ๊ฒ์ผ๋ก ์ ์ธ๋์์ต๋๋ค. ํ๋ ์ด๋ฆ ๋ฐ ๊ฐ ํ์ธ์ ๋ํ ์๊ตฌ ์ฌํญ์ด ๊ฐ์๋์์ต๋๋ค. ์ด์ ์ ์์ฝ๋ ์ผ๋ถ ํ๋ ์ ์ ํ ๋ฐ ๋งค๊ฐ๋ณ์๊ฐ ์ฌ์ฉํ๋๋ก ์ ์๋์์ต๋๋ค. ์ฐ๊ฒฐ๊ณผ ๊ด๋ จ๋ ๊ธ์ง๋ ํค๋ ํ๋๊ฐ ๋ ์ ํํ๊ฒ ์ ์๋์์ต๋๋ค.
์ถ์ฒ : opennet.ru