프록시(Proxy) vs 게이트웨이(Gateway)

이현지·2022년 1월 23일
0

프록시란?

클라이언트와 서버 사이에 중개자 역할을 하는 서버이다.

같은 프로토콜을 사용하는 네트워크 간의 통신이다.

프록시를 사용하면 보안 측면에 이점이나, 캐시 기능으로 성능을 향상시킬 수 있다.

프록시의 종류에는 여러가지가 있다.

  • 캐시 프록시 서버
    • 말그대로 캐시를 수행하는 프록시 서버이다. 클라이언트의 요청과 응답을 저장해두었다가 같은 요청이 오면 프록시는 서버로 요청을 보내지 않고, 캐시되어 있는 응답값을 클라이언트에게 보내준다.
  • 포워드 프록시
    • 클라이언트의 요청을 프록시 서버에서 받고, 프록시 서버에서 서버에 접근한다.

      서버의 응답값을 프록시 서버에서 받고, 이를 클라이언트에게 전송하기 때문에 클라이언트의 요청 ip 를 서버에서 알 수 없다. (서버는 프록시 서버와 통신하기 때문이다.)

      ex) 내부망에서 인터넷상의 서버에 요청할 때

  • 리버스 프록시
    • 포워드 프록시의 반대로, 서버를 위한 프록시이다. 클라이언트의 요청을 리버스 프록시 서버에서 받으므로 클라이언트의 요청에 대한 애플리케이션 서버를 알 수 없다. ex) 인터넷상의 클라이언트가 내부망의 서버를 호출할 때

게이트웨이란?

  • 프록시와 같이 클라이언트와 서버 사이의 중개자 역할을 한다.
    그러나 게이트웨이는 서로 다른 프로토콜을 사용하는 네트워크 간의 통신을 가능하게 한다.
    위의 그림에서 프록시는 프로토콜이 HTTP 로 같은 반면, 게이트웨이는 HTTP POP
    프로토콜을 변환하는 것을 알 수 있다.
  • 그러나 사실 프록시와 게이트웨이의 차이는 모호하다고 한다. 프록시와 게이트웨이의 가장 큰 차이점은 프로토콜의 변환 여부인데, 클라이언트의 http 와 서버의 http 가 버전이 다르기 때문에, 프록시도 프로토콜을 변환 할 수 있다.

References

https://coding-start.tistory.com/342
https://firework-ham.tistory.com/23
https://sujinhope.github.io/2021/06/13/Network-프록시(Proxy)란,-Forward-Proxy와-Reverse-Proxy.html

profile
Backend Developer👩‍💻

0개의 댓글