[ENet-discuss] Limiting the channels

M. Rijks enet at forge.dds.nl
Thu Apr 8 07:45:19 PDT 2010


Thanks for your response Jay.

> ENet does allocate some additional storage for each channel. I don't believe
> it's a lot though (depending on your definition of 'a lot').

As I understand it, each channel is a separate queue. Maybe there is  
not much storage allocation going on as long as the queues remain  
empty, but I assume they'll start adding up once they are used.

> I think you only really need the one channel.

Yes, I agree - but I can't avoid that game developers accidentally  
send data on other channels because they forget to check if the remote  
end is a game server. I also don't want players to be able to force  
opening lots of channels on the lobby server end by intercepting and  
changing outgoing packets in an attempt to bring a lobby server down.  
Because if there are hundreds or even thousands of connections, I fear  
the lobby server may get quite some work to do in terms of memory  
allocation and message processing on channels it doesn't really use  
for data exchange.

> The value of channels for me was you could have higher priority traffic
> routed through a specific channel and any further structure I imposed on the
> data being sent was handled outside the networking library.

I agree and that's how I wish to implement it myself (different kinds  
of messages aren't spread across channels). But I want to leave it up  
to the game developers to change the number of channels to the  
requirements of their games.

Martin



More information about the ENet-discuss mailing list