Public 속성 | |
String | m_serverIP |
uint16_t | m_serverPort |
String | m_publicDomainName1 |
String | m_publicDomainName2 |
| |
CFastArray< int > | m_localUdpPortPool |
Guid | m_protocolVersion |
ByteArray | m_userData |
bool | m_slowReliableP2P |
int | m_tunedNetworkerSendIntervalMs_TEST |
bool | m_simplePacketMode |
Simple network protocol mode. | |
bool | m_allowOnExceptionCallback |
String | m_clientAddrAtServer |
bool | m_enableAutoConnectionRecovery |
ThreadModel | m_userWorkerThreadModel |
ThreadModel | m_netWorkerThreadModel |
CThreadPool * | m_externalUserWorkerThreadPool |
CThreadPool * | m_externalNetWorkerThreadPool |
uint32_t | m_timerCallbackIntervalMs |
int32_t | m_timerCallbackParallelMaxCount |
void * | m_timerCallbackContext |
서버에 연결하기 위한 정보 구조체
bool Proud::CNetConnectionParam::m_allowOnExceptionCallback |
String Proud::CNetConnectionParam::m_clientAddrAtServer |
서버와 클라이언트가 NAT 라우터 뒤에 있는 상태에서 다른 클라이언트와 P2P 통신을 해야 할 경우 필요할 수 있습니다. 가령 클라이언트가 게임 플레이를 처리하는 super peer가 되어야 하는 경우, 그리고 super peer와 서버가 같은 host인 경우, super peer 안에서는 여기에 super peer의 public 주소를 넣으시기 바랍니다.
bool Proud::CNetConnectionParam::m_enableAutoConnectionRecovery |
연결 유지 기능 사용하기 를 켜거나 끕니다. 기본적으로 꺼져 있습니다.
CThreadPool* Proud::CNetConnectionParam::m_externalNetWorkerThreadPool |
네트워크 I/O 처리를 사용자의 쓰레드 풀에서 작동 하도록 합니다. m_netWorkerThreadModel 에서 ThreadModel_UseExternalThreadPool 지정 시 반드시 이 값을 세팅 해야 합니다.
CThreadPool* Proud::CNetConnectionParam::m_externalUserWorkerThreadPool |
RMI, 이벤트 콜백 등 다양한 작업을 사용자의 쓰레드 풀에서 작동 하도록 합니다. m_userWorkerThreadModel 에서 ThreadModel_UseExternalThreadPool 지정 시 반드시 이 값을 세팅 해야 합니다.
CFastArray<int> Proud::CNetConnectionParam::m_localUdpPortPool |
클라이언트에서 생성하는 UDP socket이 사용할 local port 번호들입니다.
이 모듈은 서버나 peer와의 연결 각각을 위해 1개의 UDP port를 사용합니다. 이때 m_localUdpPortPool 에서 지정한 포트 번호들을 local port로 삼는 UDP socket들을 생성하게 됩니다. 만약 m_localUdpPortPool에서 시정한 포트 번호가 없거나 m_localUdpPortPool에서 지정한 포트 번호들이 모두 다른데서 사용중인 경우 임의의 포트 번호가 지정되어 UDP socket이 생성됩니다.
일반적으로는 m_localUdpPortPool 값은 그냥 두시는 것이 좋습니다. 하지만 의도적으로 local UDP socket의 port 번호를 강제로 지정하고자 할 때 m_localUdpPortPool 안에 원하시는 값들을 넣으십시오.
ThreadModel Proud::CNetConnectionParam::m_netWorkerThreadModel |
네트워크 I/O 처리 작업에 대한 쓰레드 모델을 지정합니다.
기본 옵션은 MultiThreaded 입니다.
(주의! SingleThreaded 옵션 사용시 사용자는 NetClient.FrameMove 함수를 반드시 호출 해야 합니다.)
Guid Proud::CNetConnectionParam::m_protocolVersion |
서버에 연결하기 전에, 서버와의 프로토콜 매칭을 위한 값입니다.
String Proud::CNetConnectionParam::m_publicDomainName1 |
IPv4 literal 문자열로 서버에 접속하더라도 IPv6 네트워크 클라이언트에서의 접속이 가능하게 해주는 변수입니다. 자세한 것은 Apple의 IPv6 정책 우회책 를 참고하십시오.
String Proud::CNetConnectionParam::m_publicDomainName2 |
IPv4 literal 문자열로 서버에 접속하더라도 IPv6 네트워크 클라이언트에서의 접속이 가능하게 해주는 변수입니다. 자세한 것은 Apple의 IPv6 정책 우회책 를 참고하십시오.
String Proud::CNetConnectionParam::m_serverIP |
연결할 서버의 주소
uint16_t Proud::CNetConnectionParam::m_serverPort |
연결할 서버의 TCP 포트입니다.
bool Proud::CNetConnectionParam::m_simplePacketMode |
Simple network protocol mode.
기본값은 false 입니다. 패킷 캡쳐 및 복제 방식으로 더미 클라이언트 테스트를 가능하게 하기 위해서 이 값을 true로 설정하십시오. 단, 서비스가 해커의 공격에 취약해 지며 UDP networking과 direct P2P 통신을 사용할 수 없습니다. (대신 relay 로 전송합니다.) 라이브 서비스를 위해서는 false로 설정하십시오.
패킷 캡쳐와 리플레이 테스트관련 내용: 각각의 더미 클라이언트는 자신의 HostID를 확인할 수 없습니다. CreateP2PGroup() 과 같이 P2P 그룹 관련 함수를 호출할 경우 예상치 못한 상황이 발생할 수 있습니다.
bool Proud::CNetConnectionParam::m_slowReliableP2P |
기본값은 false 입니다. true 로 설정할 경우 Reliable P2P 의 전송속도는 1MB/sec를 감당할 수 없습니다. 그러나 처리 성능이 가벼워집니다. 더미 클라이언트 테스트를 할 때에만 true 로 설정하십시오.
void* Proud::CNetConnectionParam::m_timerCallbackContext |
서버에서 일정주기에 한번씩 콜백을 할시에 인자로 사용되는 유저 데이터입니다. Proud.INetServerEvent.OnTick 가 호출될시에 인자값으로 들어갑니다. 서버에서 타이머 루프 RMI 이벤트 처리하기 기능입니다.
uint32_t Proud::CNetConnectionParam::m_timerCallbackIntervalMs |
Timer callback 주기 입니다. 서버에서 타이머 루프 RMI 이벤트 처리하기 기능입니다. 이것을 세팅하면 milisec단위로 한번씩 INetServerEvent.OnTick 가 호출됩니다.
int32_t Proud::CNetConnectionParam::m_timerCallbackParallelMaxCount |
Timer callback이 동시 몇 개의 user worker thread에서 호출될 수 있는지를 정합니다. 기본값은 1입니다. 모든 user worker thread를 사용하고 싶다면 INT_MAX를 입력해도 됩니다.
ByteArray Proud::CNetConnectionParam::m_userData |
서버에 보내는 추가 연결 정보입니다. INetServerEvent.OnConnectionRequest()에서 이 데이터가 받아집니다.
ThreadModel Proud::CNetConnectionParam::m_userWorkerThreadModel |
RMI, 이벤트 를 콜백 받을 쓰레드 모델을 지정합니다.
(주의! SingleThreaded 옵션 사용시 사용자는 NetClient.FrameMove 함수를 반드시 호출 해야 합니다.)