
109
4
장 커넥션 관리
The Definitive Guide
급된다)를 이해하지 못한다. 프락시는 keep-alive가 무엇인지 모르기 때문에, 다
음 서버에 메시지를 그대로 전달한다(그림 4-15b). 하지만 Connection 헤더는 홉
별(hop-by-hop) 헤더다(이는 오직 한 개의 전송 링크에만 적용되며 다음 서버로
전달되어서는 안 된다). 여기서부터 문제가 시작된다.
3. 그림 4-15b에서 보이는 것처럼, 전달된 HTTP 요청이 서버에 도착한다. 웹 서
버가 프락시로부터 Connection: Keep-Alive 헤더를 받으면, 웹 서버는 프락시
(기존에 클라이언트로부터 받았을 때와 같이)가 커넥션을 유지하자고 요청하는
것으로 잘못 판단하게 된다. 그림 4-15c와 같이 웹 서버는 문제될 게 없기 때문
에, 프락시와 커넥션을 유지하는 것에 동의를 하고 Connection: Keep-Alive 헤
더를 포함하여 응답한다. 웹 서버는 프락시와 keep-alive 커넥션이 맺어져 있는
상태로 keep-alive 규칙에 맞게 통신을 하는 것으로 판단한다. 하지만 프락시는
keep-alive를 전혀 이해하지 못한다.
4. 그림 4-15b에서 멍청한(dumb) 프락시는 서버로부터 받은 Connection: Keep-
Alive 헤더를 포함하고 있는 응답 메시지를 ...