
244
HTTP
2
부 HTTP 아키텍처
용자가 회사에 텔넷 세션을 열거나 회사의 이메일 차단 장치를 우회하려고 터널을
사용할 수 있다.
터널의 오용을 최소화하기 위해서, 게이트웨이는 HTTPS 전용 포트인 443 같이
잘 알려진 특정 포트만을 터널링할 수 있게 허용해야 한다.
8.6
릴레이
HTTP 릴레이는 HTTP 명세를 완전히 준수하지는 않는 간단한 HTTP 프락시다. 릴
레이는 커넥션을 맺기 위한 HTTP 통신을 한 다음, 바이트를 맹목적으로 전달한다.
HTTP는 복잡하기에, 모든 헤더와 메서드 로직을 수행하지 않고 맹목적으로 트
래픽을 전달하는 간단한 프락시를 구현하는 방식이 유용할 때가 있다. 데이터를 맹
목적으로 전달하도록 구현하기는 쉽기 때문에, 단순 필터링이나 진단 혹은 콘텐츠
변환을 하는데 사용되기도 한다. 하지만 이는 잠재적으로 심각한 상호 운용 문제를
가지고 있기 때문에 주의해서 배포해야 한다.
단순 맹목적 릴레이를 구현하는데 관련된 더 일반적인(악명 높은) 문제 중 하나
는, 맹목적 릴레이가 Connection 헤더를 제대로 처리하지 못해서 keep-alive 커넥
션이 행(hang)에 걸리는 것이다.
클라이언트 서버
무조건
릴레이
(a) Connection: Keep-Alive (b) Connection: Keep-Alive
(d) Connection: ...