반응형
Full proxy란
Full proxy는 downstream과 upstream의 세션을 각각 맺습니다. 따라서, proxy는 downstream socket과 upstream socket을 따로 생성합니다.

raw tcp을 사용할 때, socket 종료전파
제가 full proxy을 접하게 된 이유가 raw tcp의 생명주기가 궁금했기 때문입니다. raw tcp통신은 http처럼 L7 프로토콜이 아니라 L4 tcp만 가지고 통신할때입니다.
Full proxy는 어느 한쪽 socket이 종료되면, 다른편 socket을 종료합니다. 이 과정을 종료 전파(Propagate)라고 부릅니다.

envoy proxy의 종료 전파코드는 아래와 같습니다.
https://github.com/envoyproxy/envoy/blob/main/source/common/tcp_proxy/tcp_proxy.cc#L1288-L1350

HAproxy의 코드는 아래와 같습니다.
https://github.com/haproxy/haproxy/blob/ac776e3819f9fa54e2a005469e5a423a3d179543/src/stconn.c#L1309-L1314

종료되지 않게 구현하려면?
upstream, downstream 생명주기를 분리하고 싶다면, full proxy를 사용하는 것보다는 세션을 관리하는 TCP gateway를 직접 개발해야합니다.
반응형
'전공영역 공부 기록' 카테고리의 다른 글
| [스터디] Generative AI on Kubernetes 5장: 실험 환경부터 모델 배포까지(upyterHub, LoRA, RAG) (0) | 2026.05.24 |
|---|---|
| 스터디-로컬 RAG를 AWS로 마이그레이션 - Bedrock과 S3Vectors (0) | 2026.05.18 |
| GenerativeAiOnKubernetes 스터디 - 챕터 4장 RAG, Lora 파인튜닝 (0) | 2026.05.18 |
| Kubernetes v1.36 업그레이드 전에 확인할 운영 영향과 핸즈온 (1) | 2026.05.10 |
| 스터디 챕터 8 정리 - LLM As Judge, AI Agent (0) | 2026.05.05 |