-
카테고리
-
세부 분야
네트워크
-
해결 여부
해결됨
TCP Buffer Size (Window Size) 크기는 무조건 큰 것이 좋을 까요?
22.10.02 13:26 작성 조회수 1.32k
1
선생님 안녕하세요.
명강의 감사합니다.
End-Point의 TCP Buffer 사이즈가 부족하면 Zero Window가 발생해 장애가 발생할 수 있다고 하셨는데요.
그렇다면, TCP Buffer Size는 무조건 크게 잡아주는 것이 좋은 가요?
아니면, End-Point의 TCP Buffer Size를 산정하는 공식 및 팁이 있다면 공유 해주시면 감사하겠습니다.
항상 강의 잘 듣고 있습니다. 감사합니다.
답변을 작성해보세요.
5
널널한 개발자
지식공유자2022.10.02
꼭 그렇지는 않습니다. 버퍼가 크다는 이야기는 '버퍼링을 오래' 할 수 있다는 이야기가 되기도 합니다. 비효율적이라고 하더라도 버퍼링을 최소화 해야 할 경우가 있고 버퍼링에 의한 지연이 일부 나더라도 상관이 없는 경우도 있을 수 있습니다. 가령 멀티미디어 데이터의 경우 약간의 지연이 일어나도 큰 문제는 없을 수 있습니다. 하지만 금융거래 정보등 높은 반응성이 요구되는 환경은 정반대가 되겠습니다.
결국 이런 환경차에 맞춰 조절해줄 필요가 있을 텐데...이를 '튜닝'이라 생각하면 되겠습니다.
그리고 Linux같은 운영체제는 버퍼 크기를 튜닝할 수 있도록 열어주기도 하지만 그렇지 않은 운영체제도 있습니다. 또한 크기를 계산하는 공식 (혹은 규칙)은 TCP 구현에 따라 다릅니다. 가장 대표적인 TCP 구현으로는
BIC-TCP
CUBIC
등이 있습니다. Linux kernel에 기본으로 사용되어 성능이 입증됐지요.
이외에도 여러 구현형태가 있습니다. 이러한 내용은 주로 혼잡제어와 매우 밀접하게 관련되어 있습니다. 댓글로 말씀드릴 수준을 넘기 때문에 가볍게 이 정도로 소개만 드립니다. 결론, 관련 논문을 찾아보셔야 합니다. 거기에는 공식도 포함되어 있습니다. 아래 블로그 글을 읽어보시기를 권합니다.
0
답변 2