Windows용 Winsock 네트워크 프로그램의 모델은 다음 6가지로 나뉜다. 아래로 갈수록 더 좋은 성능을 보인다.
1. Blocking Model
- 단순한 구조로 각 connection 마다 thread를 할당하여 처리. blocking 함수를 사용
2. Select Model
- select함수를 이용
3. WSAAsyncSelect Model
- WASAsyncSelect함수이용. 소켓이벤트발생시 윈도우즈 메시지 통보 받음
4. WSAEventSelect Model
- WASEventSelect함수이용. Event Object를 이용하여 소켓이벤트 통보 받음
5. Overlapped I/O Model
- Overlapped 구조체 사용. 비동기적인 I/O작업수행
6. Completion Port (IOCP)
- Win32 커널오브젝트를 사용. 재사용 가능한 쓰레드 풀유지.
자세한 내용은 아래 Reference를 참고하세요
MFC를 사용할 경우에는 다음 2가지가 있다.
1. CAsyncSocket class 사용
2. CSocket class 사용
당연히 MFC를 쓰면 성능은 떨어진다.
References
1. Network Programming for Microsoft Windows, Microsoft press, Anthony Jones
2. Win32 Network Programming, 대림출판사, Ralph Davis저, 김승태 역
3. MSDN
4. www.devpia.com
5. www.codeguru.com
6. www.codeproject.com
Thursday, July 27, 2006
Subscribe to:
Post Comments
(
Atom
)
No comments :
Post a Comment