게임서버프로그래밍 #2 - iocp adv
TRANSCRIPT
게임서버프로그래밍
IOCP Advanced
NHN NEXT
Proactor vs Reactor
• 개념과 동작방식?
• 왜 이런 구분이 생기는가? – OS의 지원 없이 어떤 방법으로도 가능한가?
• Accept, Disconnect를 proactor방식으로 한다면?– AcceptEx
– DisconnectEx
– ConnectEx
– 각각의 사용 방법은?
PAGE-LOCKING
• IOCP 동작과정에서 발생하는 Page-locking이란?
• Page-locking을 최소화 하려면 어떻게 하면 될까?
• 다음의 소켓 옵션이 IOCP와 어떤 연관이 있을까?– SO_RCVBUF
패킷 여행(?) 과정
• RECV– NIC 버퍼에서 유저레벨 버퍼까지 어떻게 오는가?
• SEND– 유저레벨 버퍼에서 NIC 버퍼까지 어떻게 가는가?
끝
• 구현과제– https://github.com/zeliard/GSP/tree/master/Homework2