[ENet-discuss] Questions -- select, peer numbers, connects

Len Holgate len.holgate at gmail.com
Tue Jul 19 07:05:05 PDT 2011


> A related question is how many simultaneous peers can enet 
> support? 100? 1,000? 10,000?

The biggest issue that I've faced when using Enet in a client server
situation with large numbers of connected peers is controlling resource
usage on the server when you have many 1000s of connections sending lots of
reliable data and there's lots of data loss occurring which necessitates
retransmission.

There's no flow control for reliable data which can mean that more and more
data gets queued by enet to be sent and then held onto whilst awaiting acks.
This isn't so much of a problem with unreliable data as that can be dropped
by the throttle when the network gets busy.

We ended up adding a limit to the amount of data we'd queue and a
configurable flow rate per peer to help prevent us overwhelming downstream
links; but then we'd already pretty much rewritten the core code from the
ground up to work with IOCP anyway. Bear in mind all of this was with a very
early release of Enet as a base...

I'm currently looking at taking the latest version of enet and doing all of
this again in a more scalable way, initial testing is looking good but I
still think I'll need the rate limiting and flow control stuff that I added
before...

Len
http://www.serverframework.com



More information about the ENet-discuss mailing list