C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[50489] TCP/IP 통신 질문
차돌배기 [] 1889 읽음    2007-09-06 14:42
제가 IOCP 서버 모델을 개발중인데

성능 테스트를 어떻게 해야 하나요???

제가 지금 테스트 환경이 좋지 않아서 서버는 듀얼코어 노트북이고 클라이언트는 싱글코어 노트북입니다

테스트를 위해서 타이머를 0.05 InterVal을 갖고 연결된 클라이언트 에서는 메시지를 받자마자 서버에 리스판스를 보냅니다

그리고 클라이언트 노트북에서는 클라이언트를 15개정도 띄었습니다



[문제1]

가끔 WSASend 시에 10055 에러가 납니다 즉 시스템 버퍼 오버가 나는것 같은데

[질문1]

너무 짧은 시간에 데이터를 보낼려고 해서 그런가요?

[질문2]

10055 에러시 PostQueuedCompletionStatus 로 다시 WSASend하게끔 IOCP QUEUE 에 등록합니다

이렇게 처리해도 되는건지요?

원래는 Sleep(); 을 준후에 PostQueuedCompletionStatus 메시지를 보냈는데 타이머는 계속 0.05초마다

보내게 되므로 더욱 트래픽이 심각해지는것 같은데요



[문제2]

서버를 오래 돌리다 보면 10038 에러가 납니다



[질문3]

왜 이런 에러가 나며 대처법은 무엇인지요?



[문제3]

        INT32 nRetVal = WSASend(pClientInfo->m_Socket,

                pOverlapBuff->GetWSASendBuffer(),

                1,

                &dwSendNumBytes,

                ulFlags,

                &pOverlapBuff->m_overLapp,

                NULL);

        if ( nRetVal == SOCKET_ERROR && WSAGetLastError() != WSA_IO_PENDING )

        {

            INT32 nError = WSAGetLastError();

            ShowMsgBox("CIOCPSWin::OnWrite : nRetVal == SOCKET_ERROR","SOCKET_ERROR");



            if(nError == 10055)

            {

            //    Sleep(SOCKERROR_10055_DELAY);

                ;

            }

            else

            {

                CloseClient(pClientInfo,nError);

                return ERROR_SOCKET;

            }

        }



위 소스에서 nRetVal = -1 이고 nError = 6 입니다



[질문4]

이런 현상이 일어나는 이유는 무엇입니까

제가 생각하기에는 클라이언트 노트북에서 15개의 클라이언트가 메시지를 주고받으면서

네트웍 부하가 걸려서 생기는 현상인것 같은데 맞는지요

그렇다면 대처법은 어떻게 되나요???

궁금합니다



고수님들 답변 꼭좀 부탁드립니다

+ -

관련 글 리스트
50489 TCP/IP 통신 질문 차돌배기 1889 2007/09/06
50520     Re:TCP/IP 통신 질문 금목암 2027 2007/09/10
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.