기타 정보

HTTP 와 프록시의 관계

아이피맨 2017. 12. 14. 14:12





웹서버와 HTTP는 뗄수 없는 관계에 있다.

브라우저상에서 일어나는 대부분의 HTTP 리퀘스트가 웹서버로 전달되고 있다.


프록시와 게이트웨이 둘의 공통점은 클라이언트와의 중계역할을 한다는 것이다.

하지만 용도와 역할이 조금다르다.


프록시

프록시 서버의 기본적인 동작은 클라이언트로부터 전달받은 리퀘스트를 서버로 전달하고 ,

서버에서 받은 응답을 클라이언트에 전달하는 역할을 한다.


그러면 왜 프록시를 두고 중계를 하는 것일까?


프록시의 사용목적은 네트워크 캐싱, 조직내의 특정 웹사이트 액세스 방지 , 액세스 로그 획득 등이있다.

프록시의 사용방법은 크게 2개의 기준으로 분류된다.


1. 캐싱여부

서버의 리스폰스를 프록시 서버에 보존해두고, 이전과 같은 리퀘스트가 들어온다면 목적지 서버를 거치지않고 바로 프록시에서 캐싱해둔 리스폰스를 돌려 줄수잇다. 이러한 프록시를 캐싱 프록시 라고 한다.


2. 메시지의 변경여부 

클라이언트와 서버를 중계하면서 메시지변경을 하지않는 프록시를 트랜스패런 프록시 라고 한다.


#프록시 서버를 경유해서 리퀘스트와 리스폰스를 릴레이 할때 마다. Via 헤더 필드에 정보를 추가합니다.




게이트 웨이

게이트웨이는 프록시와 매우 비슷하다.

이 또한 목적지 서버를 중계하는 역할을 한다.

하지만 게이트웨이는 HTTP통신을 통해서 HTTP프로토콜 이외의 기능을 사용할수 있는 기능을 제공해 준다.

클라이언트는 게이트웨이와 HTTP통신을 하지만, 게이트웨이는 다음서버와 HTTP 이외의 통신을 할수 있기 때문이다.


그결과 클라이언트와 게이트웨이 사이를 암호화 하는 등으로 통신의 안전성을 높인뒤 SQL로 데이터 베이스를 사용하거나 쇼핑몰 등의 결제를 할수 있다 .





실제로 일상에서도 게이트웨이를 사용하고 있다 . 집에서 인터넷을 하고 있다면 우리가 가장먼저 만나게 되는 게이트웨이는 무선 공유기 이다.