Presentation is loading. Please wait.

Presentation is loading. Please wait.

MMOs and Socket Servers Diego O. Scarpa 10 y 11 de Diciembre – Hotel Panamericano - Buenos Aires.

Similar presentations


Presentation on theme: "MMOs and Socket Servers Diego O. Scarpa 10 y 11 de Diciembre – Hotel Panamericano - Buenos Aires."— Presentation transcript:

1 MMOs and Socket Servers Diego O. Scarpa diego.scarpa@globant.com 10 y 11 de Diciembre – Hotel Panamericano - Buenos Aires

2 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires MMO and Socket Servers MMO = Massively Multiplayer Online Game What is the main concept? – Handle interaction between multiple users How we can do that? – Socket Server

3 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Basic Design Diagram Socket Server Client 1Client 2 Services Client n

4 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Socket Server Who it works? – Simple, it uses sockets Client Server Socket 1. bind() 2. listen() 3. accept() 4. send – receive 5. close() 1. bind() 2. connect() 3. send – receive 4. close()

5 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Socket Server (II) Where is the complexity? – Communication – APIs – Security – Scalability – Performance – Tools

6 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Communication Control Content Format – Join user, join room, leave room, custom message Data Content Format – text, object, etc Serialization Options – XML – JSON – Binary – Custom Message Control Content Data Content

7 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Communication (II) Compression – Is it required? – Check your requirements – Do performance benchmarks

8 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Tunneling – It should work behind a firewall or a proxy, Is this necessary? – Check your audience DMZ Communication (IV) Client Socket Server

9 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Security Authentication/Authorization – Users – Permission – Do it always

10 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Security (II) Encryption – Example, AES-128 – Check performance

11 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Security (III) Anti Cheat – Unique Message Numbering Message injection Message modification – Anti-flood filters Chat issues – IP filter that prevents too many connections from a single IP address

12 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Client Side/Server Side API Object Model – Users, Rooms, Variables Extensibility Interaction with external services Interoperability between extensions Threads

13 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Client Side/Server Side API (II) Deploy server Cross platform – Client and Server sides Tools Creation Bots creation Variables: User, Room, Server Documentation

14 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Scalability Clustering Load balancer Socket Server Socket Server Socket Server Socket Server Socket Server Socket Server

15 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Scalability (II) Split the message handling – Rooms – Realms – Servers Server Realm Room Realm Room

16 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Tools Tracking users Network traffic Performance

17 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Tools (II) Logging Moderator: – kick, ban, etc.

18 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Performance Communication Big O Benchmarks Bots

19 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Deploy Review deploy process Auto reload

20 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Socket Server Samples Commercial Socket Servers: Licenses Add-ons – Chat – Chat Filters – Ban user – Friends

21 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Socket Server Samples (II) Electro Server 5PhotonSmartFox CoreJavaWindows C/C++Java Server Side APIJava, Javascript and AS.Net/C#AS, Javascript, Phyton and Java Client Side APIJava, C#, Obj-C, AS2, AS3.Net, Unity 3D, C/C++, Obj-C, AS3, Java AS2, AS3, Java,.Net, Obj-C, Ajax

22 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Socket Server Samples (III) Electro Server 5PhotonSmartFox HTTP TunnelingNativeNoBlue box Anti cheatUnique message numbering Anti Flood NoAnti Flood Ip filter AuthorizationUser permissionsNo

23 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Socket Server Samples (IV) Electro Server 5PhotonSmartFox StructureRooms, Extensions, Zones, Messages Applications, Rooms, Operations, Events Rooms, Extensions, Zones, Messages EncryptionyesNo Licenses25 CU - Free 1000 CU - $999 Unlimited - $4,999 100 CU – Free 500 CU - $1250 1000 CU - $2250 Unlimited - $3500 20 CU - Free 500 CU - 750 € 2000 CU - 1500 € 5000 CU - 2500 € Unlimited – 2000€

24 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Conclusions Planning Review requirements before build a custom socket server Check that server don’t have unnecessary features Create tools to control the server Create bots to control the performance Be aware of the messages size and serialization

25 10 y 11 de Diciembre – Hotel Panamericano – Buenos Aires Questions ?


Download ppt "MMOs and Socket Servers Diego O. Scarpa 10 y 11 de Diciembre – Hotel Panamericano - Buenos Aires."

Similar presentations


Ads by Google