Dev. Playground ๐
/
Seminar
/
HTTP
/
Presentation
Search
Presentation
๊ฐค๋ฌ๋ฆฌ ๋ณด๊ธฐ
List
Search
HTTP( Hypertext Transfer Protocol )
โข
ํ์ดํผํ ์คํธ๋ฅผ ์ฌ์ฉํ ์ ์ก ํต์ ๊ท์ฝ โ ์ฝ์
HTTP : The Internet's Multimedia Courier
โข
์ด๋ฏธ์ง, HTML, ํ ์คํธ, ๋์์, ์์, ์๋ฐ ์ ํ๋ฆฟ...
โข
๋ฐ์ดํฐ๋ฅผ ์จ์ ํ๊ฒ ์ ์กํ ์ ์๋ ํต์ ๊ท์ฝ
Web Clients and Servers
โข
ํด๋ผ์ด์ธํธ (
์์ฒญ : Request
)
์๋ฒ (
์๋ต :Response
)
โข
๋ธ๋ผ์ฐ์ ( ํฌ๋กฌ, ์ฃ์ง, ์ฌํ๋ฆฌ ... ) : ์ฃผ์, ๊ฒ์, ํด๋ฆญ โ ๋ฌด์ธ๊ฐ ํ์๊ฐ ๋๋ค!
Resources
Web servers
host
resources
โข
์๋ฒ๊ฐ ๋ณด์ ํ๊ณ ์๋ ๋ค์ํ ํํ์
์ ์ ์ธ ํ์ผ
์ ์ ๊ณต
1์ฅ HTTP ๊ฐ๊ด
์์ํ๋ฉฐ
์ธํฐ๋ท์ ๋ณผ๋งํ ์ฅ์์ ํ ๊ฒ์ด ๋ง์ ๊ฑฐ๋ํ ๋์๋ผ๊ณ ์๊ฐํด๋ณด์.
๋ฐ๋ฌผ๊ด, ๋ ์คํ ๋, ์ฌ๋๋ค์ ์ง์ ์ค๋ช ํ๊ธฐ ์ํด ๊ธธ๊ฑฐ๋ฆฌ ์ฃผ์๋ฅผ ์ฌ์ฉํ๊ณ ์๋ฐฉ์, ์ฌ์ฅ์ ๋น์, ๊ฐ์กฑ์๊ฒ ์ฐ๋ฝํ๊ธฐ ์ํด ์ ํ๋ฒํธ๋ฅผ ์ฌ์ฉํ๋ค.
์ฑ ์ ISBN ๋ฒํธ๋ฅผ, ๋ฒ์ค๋ ๋ ธ์ ๋ฒํธ๋ฅผ, ์ํ ๊ณ์ข๋ ๊ณ์ข๋ฒํธ๋ฅผ, ์ฌ๋์ ์ฃผ๋ฏผ๋ฑ๋ก๋ฒํธ๋ฅผ ๊ฐ์ง๋ค.
๋ชจ๋๊ฐ ์ด๋ ๊ฒ ๊ฐ๊ธฐ ๋ค๋ฅธ ์ด๋ฆ๋ค์ ๋ํ ์๋ช ํ์ค์ ๋์ํ๊ธฐ ๋๋ฌธ์, ๋์์ ์๋ ์์คํ ๋ฆฌ์์ค๋ฅผ ๋ชจ๋ ์ฝ๊ฒ ๊ณต์ ํ ์ ์๋ค.
๋ฆฌ์์ค๋ ํ ์คํธ, ์ด๋ฏธ์ง, ๋์์ ๊ฐ์ด ์น์์ ์ฌ์ฉ๋๋ ์๋ณํ ์ ์๋ ๋ชจ๋ ์์์ ๊ฐ๋ฆฌํจ๋ค.
URL(Uniform Resource Locator)
์ ์ธํฐ๋ท์ ๋ฆฌ์์ค๋ฅผ ๊ฐ๋ฆฌํค๋ ํ์ค์ด๋ฆ์ด๋ค. URL์ ์ ์์ ๋ณด ์ผ๋ถ๋ฅผ ๊ฐ๋ฆฌํค๊ณ ๊ทธ๊ฒ์ด ์ด๋์ ์๊ณ ์ด๋ป๊ฒ ์ ๊ทผํ ์ ์๋์ง ์๋ ค์ค๋ค.
์ด ์ฅ์์ ๋ค๋ฃฐ ๊ฒ๋ค
โข
URL ๋ฌธ๋ฒ, ์ฌ๋ฌ URL ์ปดํฌ๋ํธ๊ฐ ์ด๋ค ์๋ฏธ๋ฅผ ๊ฐ์ง๋ฉฐ ๋ฌด์์ ์ํํ๋์ง.
โข
์ฌ๋ฌ ์น ํด๋ผ์ด์ธํธ๊ฐ ์ง์ํ๋ ์๋ URL๊ณผ ํ์ฅ URL ๊ฐ์ ๋จ์ถ URL์ ๋ํด์.
โข
URL์ ์ธ์ฝ๋ฉ๊ณผ ๋ฌธ์ ๊ท์น.
โข
์ฌ๋ฌ ์ธํฐ๋ท ์ ๋ณด ์์คํ ์ ์ ์ฉ๋๋ ๊ณตํต URL ์คํด.
โข
๊ธฐ์กด ์ด๋ฆ์ ์ ์งํ๋ฉด์ ๊ฐ์ฒด๋ค์ ๋ค๋ฅธ ์ฅ์๋ก ์ฎ๊ธฐ๋ ๊ฒ์ ๊ฐ๋ฅํ๊ฒ ํด์ฃผ๋
URN(Uniform Resoutce Name)
์ ํฌํจํ URL์ ๋ฏธ๋.
2์ฅ URL๊ณผ ๋ฆฌ์์ค
โข
If
HTTP is the Internet's courier
, HTTP
messages are the pacakages
it uses to move things around.
โข
This chapter tells you about HTTP messages โ how to ceate them and how to understand them.
โข
In prticular, you'll understand:
1. The Flow of Messages
โข
HTTP messages are the blocks of data sent between HTTP application.
โข
These blocks of data begin with some text
meta-information
decribing the message contents and meaning, followed by
optional data
.
โข
The terms "inbound", "outbound", "upstream", and "downstream" describe message direction.
1.1. Messages Commute Inbound to the Origin Server
โข
HTTP uses the terms
inbound
and
outbound
to describe
transactional
direction.
โข
Messages
travel inbound to the origin server
, and when their work is done, they
travel outbound back to the user agent.
1.2. Messages Flow Downstream
โข
All message flow downstream, regardless of whether they are request messages or responses message
.
3์ฅ HTTP ๋ฉ์์ง
TCP ์ปค๋ฅ์
โข
HTTP๋ ํจํท ๊ตํ ๋คํธ์ํฌ ํ๋กํ ์ฝ์ ๊ณ์ธตํ๋ ์งํฉ์ธ TCP/IP๋ฅผ ํตํด ์ด๋ฃจ์ด์ง๋ค.
โข
๋ฉ์์ง๊ฐ ์์ค, ์์๋๊ฑฐ๋ ์์๊ฐ ๋ฐ๋์ง ์๊ณ ์์ ํ๊ฒ ์ ๋ฌ๋๋ค.
โข
์ฃผ์ ์ ๋ ฅ โ TCP ์ปค๋ฅ์ ์์ฑ โ ์์ฒญ โ ์๋ต โ TCP ์ปค๋ฅ์ ํด์ .
์ ๋ขฐํ ์ ์๋ ๋ฐ์ดํฐ ์ ์กํต๋ก์ธ TCP
โข
TCP ์ปค๋ฅ์ ์ ์ธํฐ๋ท์ ์์ ์ ์ผ๋ก ์ฐ๊ฒฐํด์ค๋ค.
โข
TCP ์ปค๋ฅ์ ์ ํตํด ํ ๋ฐ์ดํธ์ฉ ์์๋๋ก ์ ๋ฌ๋๋ค.
TCP ์คํธ๋ฆผ์ ์ธ๊ทธ๋จผํธ๋ก ๋๋์ด IP ํจํท์ ํตํด ์ ์ก๋๋ค
โข
HTTP๋ 'ํ๋กํ ์ฝ ์คํ'์ ์ต์์ ๊ณ์ธต์ด๋ค.
โข
HTTP + TLS(SSL) โ HTTPS
โข
TCP๋ ์ธ๊ทธ๋จผํธ ๋จ์๋ก ๋ฐ์ดํฐ ์คํธ๋ฆผ์ ์๊ฒ ๋๋๊ณ , IP ํจํท์ ๋ด์์ ์ ๋ฌํ๋ค.
4์ฅ ์ปค๋ฅ์ ๊ด๋ฆฌ
์์ํ๋ฉฐ
์น ์๋ฒ๋ ๋งค์ผ ์์ญ์ต ๊ฐ์ ์นํ์ด์ง๋ฅผ ์์ ๋ธ๋ค. ์น ์๋ฒ๋ ์ฐ๋ฆฌ์๊ฒ ๋ ์จ๋ฅผ ์๋ ค์ฃผ๊ณ , ์จ๋ผ์ธ ์ผํ ์นดํธ์ ๋ฌผ๊ฑด์ ์ฃ๊ณ , ์ค๋ซ๋์ ๋ง๋์ง ๋ชปํ ๊ณ ๋ฑํ๊ต ์น๊ตฌ๋ฅผ ์ฐพ์ ์ ์๊ฒ ํด์ค๋ค. ์น ์๋ฒ๋ ์๋ ์์ด๋ ์น(WWW)์ ์ผ๊พผ์ด๋ค.
์ด ์ฅ์์ ๋ค๋ฃฐ ๊ฒ๋ค
โข
์ฌ๋ฌ ์ข ๋ฅ์ ์ํํธ์จ์ด ๋ฐ ํ๋์จ์ด ์น ์๋ฒ์ ๋ํด ์กฐ์ฌํ๋ค.
โข
HTTP ํต์ ์ ์ง๋จํด์ฃผ๋ ๊ฐ๋จํ ์น ์๋ฒ๋ฅผ ํ(Perl)๋ก ์์ฑํด๋ณธ๋ค. โ ์๋ต
โข
์ด๋ป๊ฒ ์น ์๋ฒ๊ฐ HTTP ํธ๋์ญ์ ์ ์ฒ๋ฆฌํ๋์ง ๋จ๊ณ๋ณ๋ก ์ค๋ช ํ๋ค. โ ๊ฐ์ฅ ์ค์
5.1 ๋ค์ฑ๋ก์ด ์น ์๋ฒ
์น ์๋ฒ๋ผ๋ ์ฉ์ด๋ ์น ์๋ฒ ์ํํธ์จ์ด์ ์นํ์ด์ง ์ ๊ณต์ ํนํ๋ ์ฅ๋น(์ปดํจํฐ์ ๊ฐ์) ์์ชฝ ๋ชจ๋๋ฅผ ๊ฐ๋ฆฌํจ๋ค.
๋ชจ๋ ์น ์๋ฒ๋ ๋ฆฌ์์ค์ ๋ํ HTTP ์์ฒญ์ ๋ฐ์์ ์ฝํ ์ธ ๋ฅผ ํด๋ผ์ด์ธํธ์๊ฒ ๋๋ ค ์ค๋ค.
5.1.1 ์น ์๋ฒ ๊ตฌํ
์น ์๋ฒ๋ HTTP ๋ฐ ๊ทธ์ ๊ด๋ จ๋ TCP ์ฒ๋ฆฌ๋ฅผ ๊ตฌํํ ๊ฒ์ด๋ค. ๋ฆฌ์์ค๋ฅผ ๊ด๋ฆฌํ๊ณ ์น ์๋ฒ๋ฅผ ์ค์ , ํต์ , ํ์ฅํ๊ธฐ ์ํ ๊ด๋ฆฌ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค.
์น ์๋ฒ๋ HTTP ํ๋กํ ์ฝ์ ๊ตฌํํ๊ณ , ์น ๋ฆฌ์์ค๋ฅผ ๊ด๋ฆฌํ๊ณ , ์น ์๋ฒ ๊ด๋ฆฌ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค.
5์ฅ ์น ์๋ฒ
โข
์น ํ๋ก์ ์๋ฒ๋
์ค๊ฐ์(intermediaries)
์ด๋ฉฐ, ํด๋ผ์ด์ธํธ์ ์๋ฒ ์ฌ์ด์ ์์นํ์ฌ ๊ทธ๋ค ์ฌ์ด์ ๋ฉ์์ง๋ฅผ ์ ๋ฆฌํ๋ ์ค๊ฐ์ธ์ฒ๋ผ ๋์ํ๋ค.
โข
์ด ์ฅ์์๋ ์๋์ ๊ฐ์ ๋ด์ฉ์ ๋ค๋ฃฌ๋ค.
6.1 Web Intermediaries
โข
์น ํ๋ก์ ์๋ฒ๋ ํด๋ผ์ด์ธํธ ์ ์ฅ์์ ํธ๋์ญ์ ์ ์ํํ๋ ์ค๊ฐ์ธ
โข
ํด๋ผ์ด์ธํธ๋ ์น ์๋ฒ์ ํต์ ํ๋ ๋์ ํ๋ก์์ ํต์ ํ๋ฉฐ, ํ๋ก์๋ ํด๋ผ์ด์ธํธ ์ ์ฅ์์ ์๋ฒ์ ํต์ (๋จ, ํ๋ก์๋ฅผ ๊ฑฐ์น๋ ๊ฒ์ ์ํ ๊ฒฝ์ฐ)
โข
ํด๋ผ์ด์ธํธ ์ ์ฅ์์ ํธ๋์ญ์ ์ ์๋ฃํ๋ค๋ ์ธก๋ฉด์์๋ ๋์ผํ์ง๋ง, ํ๋ฝ์ ์๋ฒ๊ฐ ์ ๊ณตํ๋ ์ข์ ์๋น์ค๋ฅผ ํ์ฉํ ์ ์๊ฒ๋จ
โข
HTTP ํ๋ก์๋ ์น ์๋ฒ์ด์ ์น ํด๋ผ์ด์ธํธ์ด๊ธฐ๋ ํจ
โข
ํ๋ก์๋ HTTP ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ๋ฐ๊ฒ ๋๋ฏ๋ก, ๋ฐ๋์ ์น ์๋ฒ์ฒ๋ผ ์์ฒญ๊ณผ ์ปค๋ฅ์ ์ ์ ์ ํ ๋ค๋ฃจ๊ณ ์๋ต์ ๋๋ ค์ค์ผ ํจ
โข
๊ทธ์ ๋์์ ํ๋ฝ์๋ ์์ฒญ์ ์๋ฒ๋ก ๋ณด๋ด๊ธฐ๋ ํ๋ฏ๋ก, ์์ฒญ์ ๋ณด๋ด๊ณ ์๋ต์ ๋ฐ๋ ์ฌ๋ฐ๋ฅธ HTTP ํด๋ผ์ด์ธํธ์ฒ๋ผ ๋์ํด์ผ ํจ
6.1.1 Private and Shared Proxies
โข
๊ณต์ ํ๋ก์(public proxies)
: ์ฌ๋ฌ ํด๋ผ์ด์ธํธ์๊ฒ ๊ณต์ ๋๋ ํ๋ก์
โข
๊ฐ์ธ ํ๋ก์(private proxies)
: ํ๋์ ํด๋ผ์ด์ธํธ๊ฐ ๋ ์ ํ์ฌ ์ฌ์ฉํ๋ ํ๋ก์
6์ฅ ํ๋ก์