ProudNet is a server and network technology that supports online game development. It has three main components: 1) a game server and network client that can support over 10,000 concurrent users for MMORPG games with message encryption, compression, and quality of service controls, 2) a client-to-server and peer-to-peer hybrid network system that allows remote method invocation, and 3) a database cache system that simplifies database access and allows for high workloads. ProudNet allows for easy development of distributed server programs and network systems with features like server-to-server communication, peer-to-peer groups, automatic message handling, and a data-tree based database.
2. What is ProudNet?
• Server and network technology for easier
development of online games
• Supported languages:
C++, C#, ActionScript and Java
• Supported platforms:
Windows, iOS, Android, Unity and
Marmalade
3. Three components of ProudNet
Game server and network client
C/S
Features
P2P - >10K concurrent users for
MMORPG game
- Message encryption and
compression
- QoS aka network throughput
control
- Hybrid of client-to-server (C/S)
and peer-to-peer (P2P)
- Remote Method Invocation
(automatic code generation for
Client-to-server message send and receive
WAN process)
4. C/S
Server-to-server network system
P2P
simplified development of
distributed server programs.
ProudNet allows any design of
distributed systems.
Features
- P2P network among servers
- Message encryption and
compression
- Multithreaded user function Server-to-server
Client-to-server LAN
callback
WAN
- Remote Method Invocation
5. DB cache
DatabaseC/Scache system
simpifies database related
P2P
development and allows heavier
workload
Features
- Safe data loading
- Non-blocked data access
- Blocked data access for
important data
- Non-exclusive data access for
Server-to-server
free-to-play microtransaction
Client-to-server LAN
servers
WAN
6. DB cache
C/S
P2P
Server-to-server
Client-to-server LAN
WAN
7. Basic usage
DB cache
Client-to-server connection
Connect()
- Just call Start() for server
startup.
- Connect() for connection.
- Most of ProudNet functions are
asynchronous.
- User callback will be invoked
on completion.
Server-to-server
Client-to-server LAN
WAN
8. DB cache
P2P communication
- Server manages P2P
communication groups.
JoinP2PGroup() - Just call JoinP2PGroup().
- Then clients will be able to
communicate directly to each
other. No need to wait for
connection establishment.
Server-to-server
Client-to-server LAN
WAN
9. DB cache
C/S and P2P communication
- Your message structure, send
and receive routines will be
automatically generated by just
defining message formats as
MyMessage functions.
(sendTo, a,b,c); - Just like calling functions in
other computers. This is called
Remote Method Invocation
(RMI).
Server-to-server
Client-to-server LAN
WAN
10. DB cache
서버간 P2P 통신
JoinP2PGroup()
- P2P 통신을 할 서버들끼리 P2P
그룹으로 묶습니다.
- 그리고 나서, 서버끼리 직접 원
격 함수 호출을 수행할 수 있습
니다.
Server-to-server
Client-to-server LAN
WAN
11. Database access
DB cache
Usually, game database reflects
data tree for each game players.
ProudNet database cache system
is based on this behavior.
- Data of each player and world LoadData()
zone can be loaded as a data UniUpdateData()
tree.
- Modifying
(add, remove, update) nodes of
these trees are written to
database.
- You don’t have to writeServer-to-server
SQL
Client-to-server LAN
statements.
WAN
12. For more information,
• www.nettention.com
– Features
– Inquiery
– Request for evaluation license