DSR 모드에서 ILB는 백엔드 서버에 대한 수신 요청의 로드 균형을 조정하지만 서버에서 클라이언트로의 반환 트래픽이 로드 균형 조정을 무시할 수 있도록 합니다. 하지만 ILB가 백엔드 서버의 라우터로 사용되도록 설정할 경우 백엔드 서버가 클라이언트로 보낸 응답이 ILB를 실행하는 시스템을 통해 경로 지정됩니다. DSR의 현재 ILB 구현에서는 TCP 연결 추적을 제공하지 않아 Stateless가 됩니다. Stateless DSR을 사용할 경우 ILB는 기본 통계를 제외하고 처리된 패킷에 대한 상태 정보를 저장하지 않습니다. Stateless이므로 성능은 일반적인 IP 전달 성능과 유사합니다. DSR 모드는 비연결 프로토콜에 가장 적합합니다.
패킷의 대상 MAC 주소만 변경되고 서버가 직접 클라이언트에 응답하므로 DSR은 NAT보다 성능이 뛰어납니다.
서버 및 클라이언트 간 투명성이 완전합니다. 서버가 클라이언트 IP 주소에서 직접 연결을 확인하고 기본 게이트웨이를 통해 클라이언트에 응답합니다.
백엔드 서버가 고유 IP 주소(상태 검사용)와 가상 IP 주소(로드 균형이 조정된 트래픽용)에 모두 응답해야 합니다.
Stateless이므로 서버를 추가하거나 제거하면 연결 장애가 발생합니다.
다음 그림은 DSR 모드로 ILB 구현을 보여줍니다.
그림 5-1 DSR(Direct Server Return) 토폴로지
이 그림에서 두 백엔드 서버 모두 동일한 서브넷(192.168.1.0/24)에 ILB 상자로 있습니다. 서버는 라우터에도 연결되어 있으므로 ILB 상자에서 전달한 요청을 수신한 후 클라이언트에 직접 응답할 수 있습니다.