send buffer 크기 알기

익명 사용자의 이미지

tcp 통신에서 send()함수 호출전에 sund buffer의 크기를 알 수 있나요?

netstat로 통신 상태를 확인해 보니 send buff의 크기가 1이 되면

process가 holding 되버리넹.

이럴땐 어떻게 하죠??

익명 사용자의 이미지

안녕하세요

아마 getsockopt 함수를 사용하면 될거같습니다
사용법은 man 페이지를 참고 하시구요
이 함수는 오직 정보를 get 하기만하고(이름에서 알 수 있듯이)
반대로 setsockopt 라는 함수가 있습니다
여기서 리시브, 라이트 버퍼를 정해줄 수 있는데요
소켓을 생성하기 전에 set 해줄 수 있는걸로 알고있습니다
생성 후 set 하는것은 힘들지 않을까여
패킷받은 크기보다 작게 버퍼를 set 해버리면 아무래도 문제가 생길 수 있
을거 같은데......
해답이 되었으면 좋겠네요