Microsoft MVP성태의 닷넷 이야기
TcpListener TcpClient 문의 [링크 복사], [링크+제목 복사],
조회: 14804
글쓴 사람
질문요 (like0430 at nate.com)
홈페이지
첨부 파일
 

안녕하세요

문자만을 주고 받는 소켓통신을 만들려도 하는데요
TcpListener, TcpClient 를 사용하면 패킷의 헤더/바디 구현 없이도
한쪽이 10개의 문자를 보내면 받는 쪽에서도 10개가 들어오면 자동으로 완성 해주는건가요?
아니면 패킷헤더바디 구현 해야 하나요?

[수신코드]
int BUFFERSIZE = clientSocket.ReceiveBufferSize;
byte[] buffer = new byte[BUFFERSIZE];
int bytes = stream.Read(buffer, 0, buffer.Length);
string message = Encoding.Unicode.GetString(buffer, 0, bytes);

테스트 해보니
한쪽에서 n개 보내면 받는 쪽에서 stream.Read를 하면 n개가 다 읽힙니다
(송수신 byte 크기는 수신버퍼크기 이내로 한정)

질문요지는
"안녕하세요" " 어서오세요"라고 연속으로 보낸 경우
수신측에서 stream.Read를 할 경우
"안녕하", 또는 "안녕하세요어서" 이런식으로
짤리거나 붙어서 읽힐 수 있는 가능성이 있나요?

감사합니다








[최초 등록일: ]
[최종 수정일: 5/15/2020]


비밀번호

댓글 작성자
 



2020-05-15 10시22분
가능성은 있습니다. 단지, 로컬에서 하거나 원격이라도 그런 식의 작은 메시지들은 높은 확률로 한번에 읽힐 것입니다.
정성태
2020-05-16 07시34분
[질문요] 답변 감사합니다
그러면 헤더(바디길이)+바디(내용)을 보내려고 하는데요
통상 (헤더+바디)를 한번에 전송 하나요?
아니면 헤더값 보내고 바디값 보내고 이렇게 두번 보내나요?
[guest]
2020-05-16 08시44분
어느 정도의 body 길이일지는 모르겠으나 본문에 쓰신 정도라면 한 번에 보내도 좋을 것입니다. 시간 되시면 아래의 글도 한 번 읽어보시고. ^^

모바일 용 웹 사이트에서 발생하는 응답 시간 지연 현상
; https://www.sysnet.pe.kr/2/0/1430

정성태
2020-05-16 10시26분
[질문요] 감사합니다
[guest]

... 91  92  93  [94]  95  96  97 
NoWriterDateCnt.TitleFile(s)
101정성태3/2/200510785            답변글 [답변]: [답변]: 죄송합니다! 급히올리느라 file path의 변경을 하지않고 그냥올렸네요....!
102김용국3/18/200510840                답변글 [답변]: 거듭죄송하네요..... 후~~~주소를 변경하고 빌드를 다시 했습니다....
103정성태3/2/200510739                    답변글 [답변]: [답변]: 거듭죄송하네요..... 후~~~주소를 변경하고 빌드를 다시 했습니다....
104김용국3/2/200510814                        답변글 [답변]: 네... 빨리 검토해 봐 주셔서 감사합니다~~
105정성태3/2/200510026                            답변글 [답변]: [답변]: 네... 빨리 검토해 봐 주셔서 감사합니다~~
106김용국3/2/200510474                                답변글 [답변]: 답변감사합니다!
91김용국2/28/200512207IE에 WindowsFormControl을 올려 실행하면 이런에러가 나네요???파일 다운로드1
92정성태2/28/200513462    답변글 [답변]: IE에 WindowsFormControl을 올려 실행하면 이런에러가 나네요???
93김용국2/28/200512449        답변글 [답변]: 답변감사합니다... 재질문을 드립니다
94정성태2/28/200513060            답변글 [답변]: [답변]: 답변감사합니다... 재질문을 드립니다
95김용국2/28/200513081                답변글 [답변]: IE주소창에서 해당주소로 실행을 해보니....디버깅 PopUp화면이...^
96정성태2/28/200512118                    답변글 [답변]: [답변]: IE주소창에서 해당주소로 실행을 해보니....디버깅 PopUp화면이...^
97김용국3/1/200512686                        답변글 [답변]: 준비되는데로 말씀드리겠습니다 ^^
88안지환2/22/200514243^^ 사이트 잘 들러보았습니다.
89정성태2/22/200514258    답변글 [답변]: ^^ 사이트 잘 들러보았습니다.
85한기열2/22/200512799정성태님 홈같은 부드러운 페이지 넘김?은 어떻게 구현하나요?
86정성태2/22/200513485    답변글 [답변]: 정성태님 홈같은 부드러운 페이지 넘김?은 어떻게 구현하나요? [2]
84김용국2/21/200513589Smart Client에 관한 문의 드립니다.
87정성태2/22/200513645    답변글 [답변]: Smart Client에 관한 문의 드립니다.
82천호민2/1/200512527데이터 그리드의 템플릿필드에 버튼 컨트롤을 넣구요.. 포스트백시 이전 위치에 포커스를 주고 싶은데요..
83정성태2/2/200513341    답변글 [답변]: 데이터 그리드의 템플릿필드에 버튼 컨트롤을 넣구요.. 포스트백시 이전 위치에 포커스를 주고 싶은데요..
79정형균1/26/200513219드디어 정성태님을 찾았네요..^^; 스마트 클라이언트 구현하는데 배포시 문제때문에 죽겠습니다...
80정성태1/26/200511988    답변글 [답변]: 드디어 정성태님을 찾았네요..^^; 스마트 클라이언트 구현하는데 배포시 문제때문에 죽겠습니다...
76임은선1/25/200512848질문이 있는데요....
77정성태1/25/200513166    답변글 [답변]: 질문이 있는데요....
78임은선1/26/200513707        답변글 [답변]: [답변]: 질문이 있는데요....
... 91  92  93  [94]  95  96  97