'Proxy'에 해당되는 글 1

  1. 2006/04/05 웹 프락시 작성

웹 프락시 작성

크리에이티브 커먼즈 라이선스
Creative Commons License
HTTP 프락시 작성기

HTTP를 이용한 프락시 서버의 목적은 기본적으로 공용 캐쉬이다. 여기에 그룹 보안 및 미들웨어 수준의 통합이 이루어지면 이 것이 바로 상용 프락시가 되는 것이다.

이번에 작성한 프락시는 가장 단순한 형태로 구현하기로 목표를 잡았다.


프로그램에 대한 접근을 한 방식은 다음과 같다.

1. 브라우저와 소캣을 통해 브라우저의 Proxy Server 로의 요청 메시지를 분석한다.

2. Proxy Server 와 웹 서버 단의 메시지를 분석한다.

3. 분석된 서로간의 메시지를 테스트 하면서 동작이 어떤 식으로 연계되는지 확인하고 간단한 HTTP replay 서버를 실 코드로 작성한다. (멀티 쓰레드 기반)

4. 웹 서버에서 브라우저로 보내는 응답 메시지를 Proxy Server 에서 수신, 파일로 저장하는 실 코드를 작성한다.

5. 저장된 파일을 관리할 수 있는 인덱스 파일의 스키마를 생각한다. 스키마는 최대한 단순해야하며, 가능하면 plain text 를 이용. 차후 프로그램의 테스트에 단순 에디터의 사용만으로 테스팅이 가능하도록 함.

6. 구성된 스키마를 바탕으로 validate 를 결정할 수 있는 프로시져, 모듈을 작성한다. (Validate 라함은 실제 캐쉬의 동작방식을 함께 포함하는 개념이다. 따라서 이 정도로 프로젝트를 진행했다면 캐쉬 방법에 대해서 한번쯤 알아보고 자신에게 적합한 방식을 선택한다.)

7. 완성된 모듈을 현재까지 작업한 Proxy Server 와 통합한다.


상기 과정을 통해서 전체적인 프락시 서버를 완성하는 것이 가능하다.

프로젝트의 난이도는 중간정도.

Trackback 0 Comment 0