게임서버프로그래밍 #2 - iocp adv

5
게임 서버 프로그래밍 IOCP Advanced NHN NEXT

Upload: seungmo-koo

Post on 22-Jul-2015

271 views

Category:

Software


3 download

TRANSCRIPT

Page 1: 게임서버프로그래밍 #2 - IOCP Adv

게임서버프로그래밍

IOCP Advanced

NHN NEXT

Page 2: 게임서버프로그래밍 #2 - IOCP Adv

Proactor vs Reactor

• 개념과 동작방식?

• 왜 이런 구분이 생기는가? – OS의 지원 없이 어떤 방법으로도 가능한가?

• Accept, Disconnect를 proactor방식으로 한다면?– AcceptEx

– DisconnectEx

– ConnectEx

– 각각의 사용 방법은?

Page 3: 게임서버프로그래밍 #2 - IOCP Adv

PAGE-LOCKING

• IOCP 동작과정에서 발생하는 Page-locking이란?

• Page-locking을 최소화 하려면 어떻게 하면 될까?

• 다음의 소켓 옵션이 IOCP와 어떤 연관이 있을까?– SO_RCVBUF

Page 4: 게임서버프로그래밍 #2 - IOCP Adv

패킷 여행(?) 과정

• RECV– NIC 버퍼에서 유저레벨 버퍼까지 어떻게 오는가?

• SEND– 유저레벨 버퍼에서 NIC 버퍼까지 어떻게 가는가?

Page 5: 게임서버프로그래밍 #2 - IOCP Adv

• 구현과제– https://github.com/zeliard/GSP/tree/master/Homework2