Home

ENet

Enet is a lightweight networking library designed for real-time multiplayer applications, primarily written in C. It provides a simple, reliable, message-oriented API over the User Datagram Protocol (UDP), enabling games and simulations to send small, frequent updates with predictable latency. ENet supports both reliable and unreliable delivery modes and allows multiplexing data over multiple channels to preserve ordering per channel while reducing head-of-line blocking.

The core concepts are hosts, peers, and channels. A host binds to a local port and manages

ENet uses a lightweight event loop. Applications poll for events (connect, disconnect, receive) via a service

Platform and usage: ENet is cross-platform and written in C, with bindings to other languages. It has

History and licensing: ENet originated as a standalone networking library for low-latency applications and has since

connections
to
one
or
more
peers.
Each
connection
yields
an
ENetPacket
that
can
be
flagged
as
reliable
or
unreliable.
Reliability
is
achieved
via
per-channel
sequencing,
acknowledgments,
and
retransmission;
fragmentation
is
supported
so
large
messages
can
be
split
into
smaller
packets.
function,
enabling
integration
with
game
loops.
It
is
designed
to
minimize
CPU
usage
and
provide
steady
throughput
suitable
for
real-time
simulations.
been
used
in
a
variety
of
real-time
multiplayer
projects
and
games,
particularly
where
low
latency
is
critical.
The
library
emphasizes
simplicity
and
performance,
offering
a
compact
API
and
predictable
behavior
at
scale.
seen
broad
adoption
and
contributions
from
the
community.
The
project
is
open-source
and
maintained
in
public
repositories.