8. Integration Points: Gateways, Tunnels, and Relays
[ํ์ต๋ชฉํ]
์ฌ๋ฌ ์ข ๋ฅ์ ๋ฆฌ์์ค์ ์ ๊ทผํ ๋ HTTP๊ฐ ์ด๋ป๊ฒ ์ฐ์ด๋์ง ์์๋ณด๊ณ
๋ค๋ฅธ ํ๋กํ ์ฝ์ด๋ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ ํต์ ์ HTTP๋ฅผ ์ด๋ป๊ฒ ์ฌ์ฉํ๋์ง ์์๋ณธ๋ค.
๊ฒ์ดํธ์จ์ด: ์๋ก๋ค๋ฅธ ํ๋กํ ์ฝ๊ณผ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ HTTP ์ธํฐํ์ด์ค
์ ํ๋ฆฌ์ผ์ด์ ์ธํฐํ์ด์ค: ์๋ก ๋ค๋ฅธ ํ์์ ์น ์ฑ์ด ํต์ ํ๋๋ฐ ์ฌ์ฉํ๋ค.
ํฐ๋: HTTP ์ปค๋ฅ์ ์ ํตํด HTTP๊ฐ ์๋ ํธ๋ํฝ์ ์ ์กํ๋๋ฐ ์ฌ์ฉ
๋ฆด๋ ์ด: ์ผ์ข ์ ๋จ์ HTTP ํ๋ฝ์๋ก ํ๋ฒ์ ํ๊ฐ์ ํ์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๋๋ฐ ์ฌ์ฉ.
1) ๊ฒ์ดํธ ์จ์ด
์น์ ๋ ๋ณต์กํ ๋ฆฌ์์ค๋ฅผ ์ฌ๋ ค์ผํ ํ์๊ฐ ์๊ธฐ๋ฉด์ ๋ชจ๋ ๋ฆฌ์์ค๋ฅผ ์ ํ๋ฆฌ์ผ์ด์ ํ๊ฐ๋ก๋ง ์ฒ๋ฆฌํ ์ ์์ด์ก๋ค.
๋ฆฌ์์ค๋ฅผ ๋ฐ๊ธฐ ์ํ ๊ฒฝ๋ก ์๋ด ์ญํ ์ ํ๋ ๊ฒ์ดํธ์จ์ด๋ฅผ ๊ณ ์ํด๋๋ค.
๊ฒ์ดํธ์จ์ด๋ ๋ฆฌ์์ค์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฐ๊ฒฐํ๋ ์ญํ ์ ํ๋ค.
๊ฒ์ดํธ์จ์ด๋ HTTP ํธ๋ํฝ์ ๋ค๋ฅธ ํ๋กํ ์ฝ๋ก ์๋๋ณํํ์ฌ HTTP ํด๋ผ์ด์ธํธ๊ฐ ๋ค๋ฅธ ํ๋กํ ์ฝ์ ์ ํ์ ์์ด ์๋ฒ์ ์ ์ํ ์ ์๋๋ก ํ๋ค.
โ ํด๋ผ์ด์ธํธ ์ธก ๊ฒ์ดํธ์จ์ด์ ์๋ฒ์ธก ๊ฒ์ดํธ์จ์ด
ํ์ชฝ์์๋ HTTP ๋ก ํต์ ํ๊ณ ๋ค๋ฅธ ํ์ชฝ์์๋ HTTP๊ฐ ์๋ ๋ค๋ฅธ ํ๋กํ ์ฝ๋ก ํต์ ํ๋ค.
<ํด๋ผ์ด์ธํธ>/<์๋ฒ>
ํด๋ผ์ด์ธํธ์ธก ๊ฒ์ดํธ์จ์ด์ ์๋ฒ์ธก ๊ฒ์ดํธ์จ์ด๋ ๋น๊ธ์ผ๋ก ๊ตฌ๋ถํด ๊ธฐ์ ํ๋ค.
2) ํ๋กํ ์ฝ ๊ฒ์ดํธ์จ์ด
ํ๋ฝ์์ ํธ๋ํฝ์ ๋ฐ๋ก ๋ณด๋ด๋ ๊ฒ์ฒ๋ผ ๊ฒ์ดํธ์จ์ด์๋ HTTP ํธ๋ํฝ์ ๋ฐ๋ก ๋ณด๋ผ ์ ์๋ค.
๋ธ๋ผ์ฐ์ ์ ๋ช ์ํ๊ฑฐ๋ ๊ฒ์ดํธ์จ์ด๋ฅผ ๋๋ฆฌ์๋ฒ(๋ฆฌ๋ฒ์ค ํ๋ฝ์)๋ก ์ค์ ํ ์ ์๋ค.
์ข ๋ฅ
HTTP/*: ์๋ฒ์ธก ์น ๊ฒ์ดํธ์จ์ด
HTTP/HTTPS: ์๋ฒ์ธก ๋ณด์ ๊ฒ์ดํธ์จ์ด
HTTPS/HTTP: ํด๋ผ์ด์ธํธ์ธก ๋ณด์ ๊ฐ์ ๊ฒ์ดํธ์จ์ด
3) ๋ฆฌ์์ค ๊ฒ์ดํธ์จ์ด
์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ๋ HTTP๋ฅผ ํตํด์ ํด๋ผ์ด์ธํธ์ ํต์ ํ๊ณ ์๋ฒ์ธก์ ์๋ ์ ํ๋ฆฌ์ผ์ด์ ํ๋ก๊ทธ๋จ์ ์ฐ๊ฒฐํ๋ ์๋ฒ์ธก ๊ฒ์ดํธ ์จ์ด์ด๋ค.
โ ๊ณต์ฉ ๊ฒ์ดํธ์จ์ด ์ธํฐํ์ด์ค(Common Gateway Interface, CGI)
์ต์ด์ ์๋ฒ ํ์ฅ์ด์ ์ง๊ธ๊น์ง๋ ๊ฐ์ฅ ๋๋ฆฌ ์ฌ์ฉ๋๋ ์๋ฒ ํ์ฅ์ด๋ค.
์น์์ ๋์ ์ธ HTML, ์ ์ฉ์นด๋์ฒ๋ฆฌ, ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ง์ ๋ฑ์ ์ ๊ณตํ๋๋ฐ ์ฌ์ฉํ๋ค.
CGI ์ ํ๋ฆฌ์ผ์ด์ ์ด ์๋ฒ์ ๋ถ๋ฆฌ๋๋ฉด์ ํ, Tcl, C, ๋ค์ํ ์ ธ์ธ์ด๋ฅผ ํฌํจํ์ฌ ์๋ง์ ์ธ์ด๋ก ๊ตฌํํ ์ ์๊ฒ ๋์๋ค.
๋ํ ๋จ์ํ์ฌ ๊ฑฐ์ ๋ชจ๋ HTTP ์๋ฒ๊ฐ ์ง์ํ๋ค.
โก ์๋ฒ ํ์ฅ API
CGI ํ๋กํ ์ฝ์ ๊ตฌ๋์ค์ธ HTTP ์๋ฒ์ ์ธ๋ถ ์ธํฐํ๋ฆฌํฐ๊ฐ ์ฝ๊ฒ ์ ์ํ ์ ์๊ฒ๋ ํด์ฃผ์ง๋ง
์๋ฒ ์์ฒด์ ๋์์ ๋ฐ๊พธ๊ณ ์ถ๊ฑฐ๋
์๋ฒ์ ์ฒ๋ฆฌ๋ฅ๋ ฅ์ ์ต๊ณ ์น๋ก ๋์ด์ฌ๋ฆฌ๊ณ ์ ํ ๋๋ ์ด๋ป๊ฒ ํ ๊น?
์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์์ ์ ๋ชจ๋์ HTTP์ ์ง์ ์ฐ๊ฒฐํ ์์๋ ์๋ฒ ํ์ฅ API๋ฅผ ์ ๊ณตํ๋ค.
4) ์ ํ๋ฆฌ์ผ์ด์
์ธํฐํ์ด์ค์ ์น ์๋น์ค
์ ํ๋ฆฌ์ผ์ด์ ์ ์ฐ๊ฒฐํ๋ฉด์ ์๊ธฐ๋ ๊น๋ค๋ก์ด ์ด์ ์ค ํ๋๋, ๋ฐ์ดํฐ๋ฅผ ๊ตํํ๋ ค๋ ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ฌ์ด์์ ํ๋กํ ์ฝ ์ธํฐํ์ด์ค๋ฅผ ๋ง์ถ๋ ์ผ์ด๋ค. (CH19์ฐธ์กฐ)
์น์๋น์ค: ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ ๋ณด๋ฅผ ๊ณต์ ํ๋๋ฐ ์ฌ์ฉํ๋ ์๋ก์ด ๋งค์ปค๋์ฆ. HTTP๊ฐ์ ํ์ค ์น ๊ธฐ์ ์์์ ๊ฐ๋ฐํ๋ค. SOAP ์ ํตํด XML์ ์ฌ์ฉํ์ฌ ์ ๋ณด๋ฅผ ๊ตํํ๋ค.
5) ํฐ๋
HTTP ํ๋กํ ์ฝ์ ์ง์ํ์ง ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์์ HTTP ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฌ์ฉํด ์ ๊ทผํ๋ ๋ฐฉ์์ ์ ๊ณตํ๋ค.
์น ํฐ๋์ ์ฌ์ฉํ๋ฉด, HTTP๊ฐ ์๋ ํธ๋ํฝ์ ์ ์กํ ์ ์๊ณ ๋ค๋ฅธ ํ๋กํ ์ฝ์ HTTP ์์ ์ฌ๋ฆด ์ ์๋ค.
์นํฐ๋ ์ฌ์ฉ์ ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ์ด์ ๋ HTTP ์ปค๋ฅ์ ์์ HTTP๊ฐ ์๋ ํธ๋ํฝ์ ์น๊ธฐ ์ํด์์ด๋ค.
โ Connect๋ก HTTP ํฐ๋ ์ปค๋ฅ์
๋งบ๊ธฐ
์น ํฐ๋์ HTTP์ Connect
๋ฉ์๋๋ฅผ ์ฌ์ฉํด์ ์ปค๋ฅ์
์ ๋งบ๋๋ค.
Connect
๋ฉ์๋๋ ํฐ๋ ๊ฒ์ดํธ์จ์ด๊ฐ ์์์ ๋ชฉ์ ์๋ฒ์ ํฌํธ์ TCP ์ปค๋ฅ์
์ ๋งบ๊ณ ํด๋ผ์ด์ธํธ์ ์๋ฒ๊ฐ์ ์ค๋ ๋ฐ์ดํฐ๋ฅผ ๋ฌด์กฐ๊ฑด ์ ๋ฌํ๊ธฐ๋ฅผ ์์ฒญํ๋ค.
Connect
๋ฉ์๋๋ ๋ชจ๋ ์๋ฒ๋ ํ๋กํ ์ฝ์ TCP์ปค๋ฅ์
์ ๋งบ๋๋ฐ ์ฌ์ฉํ ์ ์๋ค.
โก ๋ฐ์ดํฐ ํฐ๋๋ง, ์๊ฐ, ์ปค๋ฅ์
๊ด๋ฆฌ
ํฐ๋์ ํตํด ์ ๋ฌ๋๋ ๋ฐ์ดํฐ๋ ๊ฒ์ดํธ์จ์ด๋ฅผ ํตํด ๋ณผ ์ ์๊ธฐ ๋๋ฌธ์ ๊ฒ์ดํธ์จ์ด๋ ํจํท์ ์์๋ ํ๋ฆ์ ๋ํ ์ด๋ค ๊ฐ์ ๋ ํ ์ ์๋ค.
์ผ๋จ ํฐ๋์ด ์ฐ๊ฒฐ๋๋ฉด ๋ฐ์ดํฐ๋ ์ธ์ , ์ด๋๋ ํ๋ฌ๊ฐ ์ ์๋ค.
โฃ SSL ํฐ๋๋ง
์น ํฐ๋์ ์๋ ๋ฐฉํ๋ฒฝ์ ํตํด ์ํธํ๋ SSLํธ๋ํฝ์ ์ ๋ฌํ๊ธฐ์ํด ๊ฐ๋ฐ๋์๋ค.
SSLํธ๋ํฝ์ด ๊ธฐ์กด ํ๋ฝ์ ๋ฐฉํ๋ฒฝ์ ํต๊ณผํ ์ ์๋๋ก HTTP์ ํฐ๋๋ง ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋์๋ค.
ํฐ๋์ HTTP๊ฐ ์๋ ํธ๋ํฝ์ด ํฌํธ๋ฅผ ์ ํํ๋ ๋ฐฉํ๋ฒฝ์ ํต๊ณผํ ์ ์๊ฒ ํ๋ฉฐ, ๋ณด์ SSL ํธ๋ํฝ์ด ๋ฐฉํ๋ฒฝ์ ํต๊ณผํ๋๋ฐ ์ ์ฉํ๊ฒ ์ฌ์ฉ๋๋ค. ํ์ง๋ง, ํฐ๋์ ์ ์์ ์ธ ํธ๋ํฝ์ด ์ฌ๋ด๋ก ์ ์ ๋๋ ๊ฒฝ๋ก๊ฐ ๋ ์๋ ์๋ค.
6) ๋ฆด๋ ์ด
๊ฐ๋จํ HTTP ํ๋ฝ์๋ก, ์ปค๋ฅ์ ์ ๋งบ๊ธฐ ์ํ HTTP ํต์ ์ ํ ๋ค์ ๋ฐ์ดํธ๋ฅผ ๋งน๋ชฉ์ ์ผ๋ก ์ ๋ฌํ๋ค.
Last updated