Network_프록시 서버

SG Jang·2021년 2월 26일
0

길잡이를 자바보자

목록 보기
11/12
post-thumbnail

이번 시간에는 "Network_프록시 서버"에 대해 다뤄보겠습니다.


프록시 서버는 간단하게 말해 "대리로 수행하는 서버"이다. 좀 더 자세히 얘기하자면 서버와 클라이언트 사이에서 통신을 대리 수행하는 서버로 캐시, 보안, 트래픽 분산 등의 역할을 수행한다. 이에 대해 좀 더 자세히 알아보도록 하자.
프록시 서버는 크게 두 가지로 나뉜다. 첫째는 Forward Proxy, 둘째는 Reverse Proxy이다.


1. Forward Proxy는 무엇인가?


포워드 프록시는 클라이언트와 인터넷 사이에 위치하고 있고 있으며 주요 특징으로는 캐싱과 익명성이 있다.

  • 캐싱: 포워드 프록시는 클라이언트가 요청한 내용을 캐싱한다. 예를 들자면 클라이언트(1)이 "인기차트 알려줘"라는 요청을 보낼 경우 클라이언트(1) - 프록시서버 - 인터넷 - 서버 - 인터넷 - 프록시서버 - 클라이언트(1)의 순서를 거쳐 "인기차트"에 대한 정보를 클라이언트(1)에게 전달해준다.
    이후, 클라이언트(2)가 클라이언트(1)과 같은 요청인 "인기차트 알려줘"라는 요청을 보낼 경우 프록시서버는 이미 "인기차트"에 대한 정보를 저장해놓은 상태(이걸 캐싱이라 함)이므로 이후 과정을 거치지 않고 클라이언트(2) - 프록시서버 - 클라이언트(2)의 순서로 정보를 전달해준다. 이러한 단순한 과정덕분에 아래 3가지의 장점을 얻는다
    • 전송시간 절약
    • 불필요한 데이터전송x
    • 외부요청 감소(네트워크 병목현상 방지)
  • 익명성: 클라이언트에서 인터넷방향으로 요청을 보내는 과정에 프록시 서버가 있어서 서버단에서는 클라이언트의 IP가 아닌 프록시 서버의 IP를 받게 된다. 즉 서버는 클라이언트의 IP를 알 수 없게 된다.(이것이 익명성)

2. Reverse Proxy는 무엇인가?


리버스 프록시는 인터넷과 서버 사이에 위치하고 있고 있으며 주요 특징으로는 캐싱과 보안, 로드밸런싱이 있다.

  • 캐싱: 포워드 프록시와 비슷하다.
  • 보안: 서버정보를 클라이언트로부터 숨길 수 있다. 클라이언트가 요청을 보낼때 실제 서버단의 IP가 아닌 프록시 서버의 IP를 실제 요청을 보내는 서버로 인식하여 보낸다. 이러한 과정으로 서버는 클라이언트로부터 IP를 숨겨 보안상의 이점을 얻을 수 있다.
  • 로드밸런싱: 사용자가 많은 서비스의 경우 서버는 클라이언트로부터 수많은 요청을 받는다. 로드밸런싱이란 이 수많은 요청을 프록시서버가 서버단의 서버들에게 분산적으로 처리할 수 있도록 요청을 나누어주는 서비스라고 보면 된다.

참고자료

0개의 댓글