HTTP ์ญ์ฌ
1. HTTP/0.9 - ์๋ผ์ธ ํ๋กํ ์ฝ
1989๋ ์ ๋ค๋ฐ์ CERN์์ ์ผํ๊ณ ์๋ Tim Berners-LEE๋ ์ธํฐ๋ท์ ํ์ดํผํ ์คํธ ์์คํ ์ ๋ง๋ค๊ธฐ ์ํ ์ ์์ ํ์๋ค. ์ด๋ ๊ฒ HTML, HTTP, WorldWideWeb, httpd์ ์ด๊ธฐ ๋ฒ์ ์ด 1990๋ ๋ง์ ์๋ฃ๋์๊ณ ์ฒซ๋ฒ์งธ ์๋ฒ๋ 1991๋ ์ด์ CERN ์ธ๋ถ์์ ๊ฐ๋์ ์์ํ๊ฒ ๋์๋ค.
์ด๊ธฐ์๋ ๋ฒ์ ๋ฒํธ๊ฐ ์กด์ฌํ์ง ์์์ง๋ง, ์ดํ์ ๋ค๋ฅธ ๋ฒ์ ๋ค๊ณผ ๊ตฌ๋ถํ๊ธฐ ์ํด์ 0.9๋ผ๋ ๋ฒ์ ์ ๋ถ์ด๊ฒ ๋์๋ค. 0.9 ๋ฒ์ ์ ๋จ์ผ ๋ผ์ธ์ผ๋ก ๊ตฌ์ฑ ๋์์ผ๋ฉฐ path๋ GET์ด ์ ์ผํ๋ค. ์ด๋ ๊ฒ ์ ํ์ ์ธ ๊ธฐ๋ฅ์ ๊ฐ๊ณ ์์๋ HTTP/0.9๋ ๋ค์๊ณผ ๊ฐ์ ํน์ง์ ๊ฐ๊ณ ์์๋ค.
HTTP์ ์ด๊ธฐ ๋ฒ์ ์๋ ๋ฒ์ ์ ๋ณด๊ฐ ์์๊ณ ์ฐจํ์ ๊ตฌ๋ถ์ ์ํด 0.9๋ผ๊ณ ๋ถ๋ฆฌ๊ฒ ๋์๋ค๊ณ ํฉ๋๋ค. ์์ฃผ ๋จ์ํ๊ฒ GET ํต์ ๋ง ๊ฐ๋ฅํ๊ณ ์ดํ์ ๋ฒ์ ์ ์กด์ฌํ๋ HTTP ํค๋๊ฐ ์๊ธฐ ๋๋ฌธ์ ์ ์ก์ HTML ๋ฌธ์๋ง ๊ฐ๋ฅํ๊ณ ๋ค๋ฅธ ์ ํ์ ์ ์กํ ์ ์๋ค.
- ํด๋ผ์ด์ธํธ-์๋ฒ, ์์ฒญ-์๋ต ํ๋กํ ์ฝ
- TCP/IP ๋งํฌ๋ฅผ ํตํด ์คํ๋๋ ASCII ํ๋กํ ์ฝ
- ํ์ดํผ ํ ์คํธ ๋ฌธ์(HTML)์ ์ ์กํ๋๋ก ์ค๊ณ
- ์๋ฒ์ ํด๋ผ์ด์ธํธ ๊ฐ์ ์ฐ๊ฒฐ์ ๋ชจ๋ ์์ฒญ ํ์ ๋ซํ๋ค.
2. HTTP/1.0
HTTP/1.0 ์์๋ ์ํ์ฝ๋๊ฐ ์๋ต๊ฐ ์์ ๋ถ๋ถ์ ํฌํจ๋์ด ์์ฒญ์ ๋ํ ์ฑ๊ณต๊ณผ ์คํจ๋ฅผ ๋ฐ๋ก ํ์ธํ ์ ์๊ฒ ๋์๋ค. ๊ทธ๋ฆฌ๊ณ ์์ ์ธ๊ธํ์๋ HTTP ํค๋๊ฐ ์์ฒญ๊ณผ ์๋ต ๋ชจ๋์ ์ถ๊ฐ๋์ด ํ๋กํ ์ฝ์ ํ์์ด ๊ฐ๋ฅํด์ง๊ณ ํค๋์ โContent-Typeโ์ ๋์์ผ๋ก HTML ํ์ผ ์ด์ธ์ ๋ค๋ฅธ ๋ฌธ์๋ค๋ ์ ์ก์ด ๊ฐ๋ฅํ๊ฒ ๋์๋ค. ๋ํ ๋ฉ์๋ POST, HEAD๊ฐ ์ถ๊ฐ
# html ์์ฒญ
GET /mypage.html HTTP/1.0
User-Agent: NCSA_Mosaic/2.0 (Windows 3.1)
# html ์๋ต
200 OK
Date: Tue, 15 Nov 1994 08:12:31 GMT
Server: CERN/3.0 libwww/2.17
Content-Type: text/html
<HTML>
A page with an image
<IMG SRC="/myimage.gif">
</HTML>
# gif ์์ฒญ
GET / myimage.gif HTTP/1.0
# gif ์๋ต
200 OK
...
Content-Type: text/gif
3. HTTP/1.1 - HTTP ํ์ค
1995๋ ๋ถํฐ ๋ค์ํ HTTP/1.0 ๊ตฌํ์ด ๋์์ ์งํ๋์๊ณ , ๋ช๋ฌ ๋ค 1997๋ ์ด์ HTTP/1.1์ด ๋ฐํ๋์๋ค. ๊ทธ ํ 2๋ ๋ฐ ํ์ธ 199๋ 6์ ์ฌ๋ฌ ๊ฐ์ ์ฌํญ๊ณผ ์ ๋ฐ์ดํธ๊ฐ ํ์ค์ ํตํฉ๋์ด RFC 2616์ผ๋ก ์ถ์ ๋์๋ค.
4. HTTP/2
HTTP/2๋ 2010๋ ์ ๋ฐ๊ธฐ์ ๊ตฌ๊ธ์ด ์คํ์ ์ธ SPDY ํ๋กํ ์ฝ์ ๊ตฌํํด์ ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ์ ๋ฐ์ดํฐ ๊ตํ์ ๋์ฒดํ ์๋จ์ ์ค์ฆํ๋ค๊ณ ํ๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ์ด HTTP/2์ ๊ธฐ์ด๋ก์ ๊ธฐ์ฌํ๋ค.
- SPDY์ ์ด๋ฅผ ๊ธฐ๋ฐ์ผ๋กํ HTTP2์ ๋ฑ์ฅ
- SPDY๋ Google์์ ๊ฐ๋ฐํ ์ํ์ฉ ํ๋กํ ์ฝ์ด๋ฉฐ 20009๋ ์ค๋ฐ์ ๋ฐํ๋์๋ค.
์ฐธ๊ณ : PLT 50% ๊ฐ์ ์ ์คํํ๊ธฐ ์ํ SPDY์ ๋ชฉํ๋ ์ ๋ฐ์ด๋๋ฆฌ ํ๋ ์ด๋ฐ ๊ณ์ธต์ ๋์ ํ์ฌ ์์ฒญ/์๋ต ๋ค์คํ, ์ฐ์ ์์ ์ง์ ๋ฐ ํค๋ ์์ถ์ ์ง์ํจ์ผ๋ก์จ ๊ธฐ๋ณธ TCP ์ฐ๊ฒฐ์ ๋ณด๋ค ํจ์จ์ ์ผ๋ก ์ฌ์ฉํ๋ ๊ฒ์ด์์ต๋๋ค. Latency as a Performance Bottleneck์ ์ฐธ์กฐํ์ธ์.
- ์ฑ๋ฅ ํฅ์์ ํ์ ์ด SPDY๋ฅผ ์ฌ์ฉํ๋ ์ฌ์ดํธ๊ฐ ๋์ด๋๊ฒ ๋์๊ณ ์ฌ์ค์์ ํ์ค์ด ๋์๋ค. ์ด๋ฌํ ์ํฉ์ ์ฃผ์ํ๊ณ ์๋ HTTP-WG๋ HTTP/2 ํ์ค์ ์ ๋ณด์ด๋ ค๋ ๋ ธ๋ ฅ์ ํ๊ณ ์ด ํ๋กํ ์ฝ์ ์ถ๋ฐ์ ์ SPDY ์ฌ์์ ์ฑํํ๊ฒ ๋์๋ค. ์ด๋ ๊ฒ 2012๋ ๋ถํฐ 2015๋ ๊น์ง 3๋ ๊ฐ์ ๋ ธ๋ ฅ์ผ๋ก HTTP/2 ํ์ค์ด ๋ฐํ๋๊ฒ ๋์๋ค. ๊ทธ๋ ๊ฒ ๋ช๋ ๊ฐ ํจ๊ป ๋ฐ์ ํด์จ SPDY๋ ์ง์์ ์ค๋จํ๋ฉฐ, HTTP2๊ฐ ๋๋ฆฌ ์ฑํ๋๋ค๋ ๋ง์ ๋จ๊ธฐ๊ณ ์ฌ๋ผ์ง๊ฒ ๋์๋ค.
์ฐธ๊ณ
HTTP์ ๋ฒ์ ๋ณ ์ฐจ์ด์ ๋ํด
HTTP/2 ์๊ฐ
- HTTP/2 Test GEEKFLARE
'TIL (Today I Learned) > Network' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[TCP/IP] hello, world๋ฅผ ์ถ๋ ฅํ๋ ์์ผ ํ๋ก๊ทธ๋จ์ ๊ธฐ๋ฅ ํ์ฅ (0) | 2021.09.11 |
---|---|
[TCP/IP] hello, world๋ฅผ ์ถ๋ ฅํ๋ ์์ผ ํ๋ก๊ทธ๋จ (0) | 2021.09.11 |
[Network] Wireshark (0) | 2021.09.08 |
[Network] tracert ์ฌ์ฉ๋ฒ (0) | 2021.09.08 |
[tcp/ip]hello, world๋ฅผ ์ถ๋ ฅํ๋ ์์ผ ํ๋ก๊ทธ๋จ์ ๊ธฐ๋ฅ ํ์ฅ (0) | 2021.08.12 |