Search Results for 'Server/Socket의 버퍼'

1 POSTS

  1. 2012.10.17 SNDBUF, RCVBUF

SNDBUF, RCVBUF

Posted 2012. 10. 17. 12:03

1) 소켓 버퍼의 싸이즈 : 디폴트 싸이즈 -> 8192(8KB)

2) 옵션 : SO_SNDBUF, SO_RCVBUF

3) 버퍼 복사 구조 SND과정 : User Buf -> Socket Buf -> TCP Buf

옵션으로 SND 버퍼를 0으로 만들게 되면 User Buf -> TCP Buf 로 Socket Buf를 건너 뛰게 된다.

한 단계의 copy를 줄이게 되는 것. RCV는 반대상황이고 마찬가지고 한단계의 copy를 줄이게 된다.

이렇게 되면 RCV할때 User Buf로 copy속도가 충분히 빠르지 않을 경우 RCV는 TCP의 허용가능한

window size를 줄이고, SND시 TCP로 지속적으로 데이터를 주는데 제약을 가하며

TCP 통신 처리량을 줄이는 병목의 원인이 된다.

이럴 경우 보다 충분한 수의 overapped i/o를 요청을 미리 호출해 줘야 한다.


또는 그냥 비동기 방식으로..


이건 IOCP에 써야겟다