Microsoft MVP성태의 닷넷 이야기
TcpListener TcpClient 문의 [링크 복사], [링크+제목 복사]
조회: 1515
글쓴 사람
질문요 (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를 할 경우
"안녕하", 또는 "안녕하세요어서" 이런식으로
짤리거나 붙어서 읽힐 수 있는 가능성이 있나요?

감사합니다




donaricano-btn



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


비밀번호

댓글 쓴 사람
 



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

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

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

1  2  [3]  4  5  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5524하이스컬7/2/2021546특정 이벤트에서 다른 이벤트 호출 관련 문의 [3]
5523민우7/1/2021825도커 사용시 윈도우 이미지 생성도 가능한가요? [2]
5522질문6/28/2021882WPF에서 splash screen이 나타나는 위치를 변경할 수 있나요? [3]
5521김민혁6/24/2021573.exe 파일 에러에 관한 질문 입니다. [3]
5520한예지6/21/2021647랜덤함수 질문있습니다!! [2]
5519리얼킴6/19/2021667.net framwork 4.0 에서 4.8로 꼭 가야할까요?? [1]
5518한예지6/18/2021726ArrayList, IList에 대해 질문 있습니다. [3]
5517wunsy6/18/2021738winform에서 Button 활성화, 비활성화 [4]
5516ocm6/15/2021778mips 어셈블리 연산 다시 질문드려요 (첨부파일 갱신됨) [2]파일 다운로드1
5515ocm6/14/2021797mips 어셈블리 연산 [6]파일 다운로드1
5514jongs6/11/2021686GethashCode와 String대한 질문 [2]
5513labeling6/11/2021707C# Winform 에서 Label에 동일한 Color를 넣었을 때 처리방법이 궁금합니다. [2]
55126/11/2021789xlwings 가 실행조차 되지 않습니다. ㅠㅠ [6]
5511Syong6/9/2021647User Control에 string array 속성 추가하는 방법 [4]
5510jay6/8/2021726string 문자열에 쌍따옴표(")를 넣고 싶습니다. [1]파일 다운로드1
5509한예지6/3/2021792ExeccuteNonQuery 질문있습니다! [2]
5508최재남6/3/2021836마우스 이벤트 관련 질문 좀 드리겠습니다. [6]
5507한예6/2/2021723static과 스택오버플로우 질문있습니다. [5]파일 다운로드1
5506이창석6/1/2021850센서의 값을 받아서 PC를 통해 모니터링 하는 것을 만들고 있습니다. [1]
5505kss5/31/2021646.net5에서 소멸자가 어떻게 바뀐건가요? [1]
5503xingTester5/24/2021787xingapinet 에 수정 요청 부탁 드립니다. [1]
5501한예지5/23/2021681IProgress 사용법이 궁금합니다. [2]
5500한예ㅈ5/23/2021752비동기 코드 흐름 질문있습니다. [3]
5498곰장어5/21/2021703List에 static 변수를 추가했을때의 궁금증 [3]파일 다운로드1
5497지평선5/20/2021686윈도우 배율을 알 수 있을까요? [1]
5496cs린이5/20/2021680C# 8.0 질문입니다. [2]파일 다운로드6
1  2  [3]  4  5  6  7  8  9  10  11  12  13  14  15  ...