mudb
a collection of modules for building realtime client-server applications consisting of multiple protocols
concepts
protocol
A protocol in the mudb
sense, is a collection of related messages and handlers which are grouped by functionalities or whatever.
message
Message passing is the basic building block for communication in a distributed system. In mudb
, messages are strongly typed using user-defined schemas. mudb
provides a reliable, ordered message delivery and a faster but unreliable method for sending messages immediately.
schema
A schema is a type declaration for the interface between client and server.
socket
mudb
communicates over the generic socket abstractions. Sockets support both reliable and unreliable delivery. Reliable delivery is used for messages, while unreliable delivery is used for state replication. Unreliable delivery is generally faster since it does not suffer from head-of-line blocking problems.
modules
examples
further reading
Light reading:
- Protocol Buffers
- Quake 3 network model
- Janus
- "The Tech of Planetary Annihilation: ChronoCam"
- "The Implementation of Rewind in Braid"
- "Relativistic Replication"
- "Source Multiplayer Networking"
Academic references:
- C. Savery, T.C. Graham, "Timelines: Simplifying the programming of lag compensation for the next generation of networked games" 2013
- Local perception filters
FAQ
credits
Development supported by Shenzhen DianMao Digital Technology Co., Ltd.
Copyright (c) 2020 Mikola Lysenko, Shenzhen DianMao Digital Technology Co., Ltd.