2010-07-30 3 views

답변

2

수 없습니다. TCP의 본질은 데이터가 패킷으로 분해된다는 것입니다. 전체 메시지가 나올 때까지 데이터 수신을 계속하십시오 (그것이 무엇이든간에). 일부 옵션 :

  • 먼저 메시지 크기보다 먼저 메시지 크기를 보냅니다.
  • 메시지가
  • 메시지의 끝을 표시하는 구분 기호를 추가 보냈습니다 (그래서 연결이 닫힐 때까지 클라이언트가 기본적으로 읽을 수 있습니다) 때 연결을 닫기

나는 일반적으로 최종 옵션을 싫어하는 왜냐하면 당신이 읽고있는 메시지를 "이해하는"것을 의미하기 때문에 까다로울 수 있습니다. 또한 메시지 내에서 구분 기호가 자연스럽게 발생할 수 있다면 이스케이프 시퀀스 등을 추가해야 할 수도 있습니다.

+0

미리 감사드립니다.하지만이 작업을 수행하는 Tcp/IP 프로토콜을 알고 있습니다. 왜 그렇게해야합니까? 어플리케이션 레벨에서 왜 신경 써야합니까? – Noro

+0

@ 노로 : TCP/IP는 데이터 스트림을 효과적으로 제공하기 때문에. 스트림을 처리하는 방법 (메시지로 나누는 방법 등)을 결정하는 것은 애플리케이션 프로토콜에 달려 있습니다. –

관련 문제