소켓통신시 질문입니다
글쓴이: geneven / 작성시간: 토, 2007/05/26 - 11:26오전
소켓통신시 recv함수를 보면 보내는 곳으로 부터 받을 데이터 양을 명시하게 되어있습니다.
예를 들어 받을 데이터의 양를 5로 표시했다면 보내는 곳으로 부터 5까지의 데이터를 받아야 함수가
종료 되는데요, 상대방이 얼마를 보낼지 모를 경우 무작정 받는곳에서 임의의 값을 설정할수는 없는
것이고 어떤방식을 사용하여 해결 하나요? 보통의 프로토콜은 일단 보내는 곳에서 받는곳에게 얼마의
데이터를 보내겠다고 패킷을 보낸뒤 실제 데이터는 두번째 부터 보내는 것으로 알고 있는데요,
http같은경우 서버가 얼마를 보낼지 알지 못하면서도 데이터를 받는것에 대해 문제없이 동작하는것을
보고 신기했었습니다. 혹시 timeout을 설정해서 사용하는건가요?
Forums:
정확하게는 받을
정확하게는 받을 데이트의 최대 크기입니다이고 실제 받은 데이터의 크기가 리턴됩니다.
그리고 http헤더에 실제 컨텐츠의 크기가 포함되어있습니다.
----
데스크탑 프로그래머를 꿈꾸는 임베디드 삽질러
댓글 달기