자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다.
- 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)
C++ Builder tokyo 10.2 indy udp 관련 문의
2018.06.20 11:41
본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 다른 분들도 참고할 수 있도록 결과 댓글 필수(또는 감사 댓글)
(결과 댓글을 달지 않는 경우 다음 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
-----------------------------------------------------------------------------------------------
안녕하세요. 엠바카데로 c++ 10.2 에서 UDP 개발 진행하고 있습니다.
기구에서 제 아이피로 2048개의 데이터를 2048 번을 쏴주어서 제가 이 데이터를 수신하는 것을 확인하고 있습니다.
이 때 UDP Read 함수에서 count를 더해주어 데이터가 몇 개가 들어왔는지를 세고 있는데
70~80개 정도의 데이터만 count가 되는 것을 확인했습니다.
2048개의 데이터를 받기 위해 버퍼사이즈를 증가시켜보기도 했지만...
똑같은 것만 반복하고 있는 것 같습니다.
빠르고 많은 패킷을 받기 위해서 indy udp component에서 어떤 설정을 해야하는지 알려주시면 감사하겠습니다.
선배님들의 조언 부탁드립니다...
감사합니다.
int count = 0; //전역변수 설정
void __fastcall TMainFrm::UDPServer1UDPRead(TIdUDPListenerThread *AThread, const TIdBytes AData,
TIdSocketHandle *ABinding)
{
count++; // 데이터 들어올때마다 count++
}
C++ Builder tokyo 10.2 indy udp 관련 문의
2018.06.20 11:41
본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 다른 분들도 참고할 수 있도록 결과 댓글 필수(또는 감사 댓글)
(결과 댓글을 달지 않는 경우 다음 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
-----------------------------------------------------------------------------------------------
안녕하세요. 엠바카데로 c++ 10.2 에서 UDP 개발 진행하고 있습니다.
기구에서 제 아이피로 2048개의 데이터를 2048 번을 쏴주어서 제가 이 데이터를 수신하는 것을 확인하고 있습니다.
이 때 UDP Read 함수에서 count를 더해주어 데이터가 몇 개가 들어왔는지를 세고 있는데
70~80개 정도의 데이터만 count가 되는 것을 확인했습니다.
2048개의 데이터를 받기 위해 버퍼사이즈를 증가시켜보기도 했지만...
똑같은 것만 반복하고 있는 것 같습니다.
빠르고 많은 패킷을 받기 위해서 indy udp component에서 어떤 설정을 해야하는지 알려주시면 감사하겠습니다.
선배님들의 조언 부탁드립니다...
감사합니다.
int count = 0; //전역변수 설정
void __fastcall TMainFrm::UDPServer1UDPRead(TIdUDPListenerThread *AThread, const TIdBytes AData,
TIdSocketHandle *ABinding)
{
count++; // 데이터 들어올때마다 count++
}
UDP에서 한 번에 64k를 초과하여 보낼 수는 없습니다. 페이로드 크기가
UDP 헤더는 16 비트 값입니다.
데이터를 64k 블록으로 분할하고 각 블록을 보내야합니다.
https://forums.embarcadero.com/thread.jspa?threadID=215079