IrrNetLite vs Raknet/Poco/Boost

Discuss about anything related to the Irrlicht Engine, or read announcements about any significant features or usage changes.
Post Reply
blutbeere
Posts: 29
Joined: Sat Nov 19, 2011 10:59 am
Location: Bergisch Gladbach, Germany

IrrNetLite vs Raknet/Poco/Boost

Post by blutbeere »

Hey Guys,
I have been playing with IrrNetLite 2.x for a while now and
since ever I asked myself the question is it actually possible to create
something like an A(AA) Title with IrrNetLite?

I havent been checking much, because I am always running short on time.
But is IrrNetLite able to handle an amount of like 5000 Players+?
( sure my small server could handle 40 players on my localhost but thats nothin bout a test :( )

And anyways would it stand any chance against Raknet? or Poco(net code)? or Boost(net code)?

I mean I like IrrNet(Lite) but I am not sure wheather one should favor it (in comparisation with the other libraries^^)

I d like to hear someone else on this topic, because its hard to find on the forums.

thanks in advance,
chris
REDDemon
Developer
Posts: 1044
Joined: Tue Aug 31, 2010 8:06 pm
Location: Genova (Italy)

Re: IrrNetLite vs Raknet/Poco/Boost

Post by REDDemon »

I used and actually using Poco in a multyhreaded plugin based gui system (and also using in my terrain pager).

Poco is very good and well designed. It does not have many functionalities like boost but take much less time to be used. (well precompiled binaries for Boost are 2.5 MB for MSC and 5 MB for mingw).

never used raknet.
Junior Irrlicht Developer.
Real value in social networks is not about "increasing" number of followers, but about getting in touch with Amazing people.
- by Me
RdR
Competition winner
Posts: 273
Joined: Tue Mar 29, 2011 2:58 pm
Contact:

Re: IrrNetLite vs Raknet/Poco/Boost

Post by RdR »

Also take a look at irrNetz (http://irrlicht.sourceforge.net/forum/v ... =9&t=46032) which uses the latest version of ENet
hendu
Posts: 2600
Joined: Sat Dec 18, 2010 12:53 pm

Re: IrrNetLite vs Raknet/Poco/Boost

Post by hendu »

/Another me-prefers-different-library ;)

I like grapple.


Trying to be on topic: the net code would have to be really crappy for it to be the limit before you reach some other limit, such as that of open sockets. (which is 1024 by default on linux, btw)

Bandwidth will come before netcode limits too, and that depends on your game design, how much you send and how often...
blutbeere
Posts: 29
Joined: Sat Nov 19, 2011 10:59 am
Location: Bergisch Gladbach, Germany

Re: IrrNetLite vs Raknet/Poco/Boost

Post by blutbeere »

@REDDemon
I might take a look at Poco then. thanks

@RdR
thank you for posting the link <3

@hendu
/Another me-prefers-different-library
thats actually not true! Furthermore I was trying to find reasons why using IrrNet gives more or at least the same benefit according to
bandwith and client handling compared to the other libraries.
Bandwidth will come before netcode limits too, and that depends on your game design, how much you send and how often...
true story^^ ;)

I will stay with IrrNet.
ACE247
Posts: 704
Joined: Tue Mar 16, 2010 12:31 am

Re: IrrNetLite vs Raknet/Poco/Boost

Post by ACE247 »

I say IrrNet, its more than enough for most games, particularly if you don't incorporate all the unnecessary features modern games have. Oh and I forgot, its low on packet traffic and easy to use.
The basic info you need in your multiplayer menu, Host/Connect buttons, Then show list of servers with ping/enter IP textbox, then if pressed info button get packet of details from server(mapname, players, match settings?), then press button to join. Simplest possible.
blutbeere
Posts: 29
Joined: Sat Nov 19, 2011 10:59 am
Location: Bergisch Gladbach, Germany

Re: IrrNetLite vs Raknet/Poco/Boost

Post by blutbeere »

Hmhm...thanks for your answers, but for real now...;
can I count on IrrNetLite (e. enet) in a project with a
server that deals with about 1000 Players in an open world environment?

(sure this is more about the way you build the server, but are
there any differences between irrnet and the higher commercial libraries
that I could be afraid of, in developing such a project?)

thanks alot,
chris
hendu
Posts: 2600
Joined: Sat Dec 18, 2010 12:53 pm

Re: IrrNetLite vs Raknet/Poco/Boost

Post by hendu »

Why don't you set up a benchmark? You can easily run your 1000 clients on localhost.
blutbeere
Posts: 29
Joined: Sat Nov 19, 2011 10:59 am
Location: Bergisch Gladbach, Germany

Re: IrrNetLite vs Raknet/Poco/Boost

Post by blutbeere »

Hmm...I created a benchmark kinda, running 100 Clients without any problem...the only thing is
I cant seem to find a way to increase the maxmimum amount of clients per server. I´m stuck on 100.

I was hopeing for netmanger->setnetiterations() here but its not affecting the maximum amount of players (ofc..)

Any Ideas on this? o,0

thanks

EDIT:
got it nvm switched it in INetManager.h

up & down link to 1Gbit/s and max Clients to 2100 ;)
working smooth now.
sudi
Posts: 1686
Joined: Fri Aug 26, 2005 8:38 pm

Re: IrrNetLite vs Raknet/Poco/Boost

Post by sudi »

Well i would say whatever you use for sending your data across the network is just fine. The interessting part starts when you realize sending and receiving stuff is the smallest problems of them all. Bc if you realize that having a lib like RakNet makes life really easy since you already have a nice plugin interface ready to be used. IrrNet is really just a c++ wrapper over enet which makes initial usage even more simple than plain enet. But as soon as you see its really about organizing the data send and how you deal with it you might wanna switch to enet itself and write your own wrapper. Havent checked on IrrNetLite in a long time though so maybe its really easy to use integrate complex system with it. But really the biggest problem in network coding is finding data you want to send and then deal with it on the other side and not really the sending part. For example for a more less "complex" game you need alot of different mechanics to be networked.
Some of them are:
  • Events (reliable/unreliable)
  • GameObject ghosting
  • static data (levels, gameobject init data)
  • Input data (different from events since it is send really fast)
  • RPC calls (as well different from events since you expect an answer to your question, not directly but async in most realtime games since you don't want to block the game or network loop)
  • and so on
You might already see that choosing a lib to send data is not the most important thing. Of course if you would use raw sockets and udp you would face the problem of implementing a reliable net system as well for most of the stuff. which introduces alot more problems. So if you use enet or IrrNet doesn't really make a difference here. Raknet on the other side has some extra features over IrrNet already integrated which might come handy. But when starting out IrrNet is fine and you can always expand on it.

Long story short since IrrNet uses enet underneath its fine to use and you can always adapt later on.
We're programmers. Programmers are, in their hearts, architects, and the first thing they want to do when they get to a site is to bulldoze the place flat and build something grand. We're not excited by renovation:tinkering,improving,planting flower beds.
blutbeere
Posts: 29
Joined: Sat Nov 19, 2011 10:59 am
Location: Bergisch Gladbach, Germany

Re: IrrNetLite vs Raknet/Poco/Boost

Post by blutbeere »

Thanks alot for your post Sudi.

Afterall I´ve decided to use IrrNet.
I will actually write a wrapper, much more a bigger class, ontop
of IrrNet and link it dynamicly in my game project.

So far I´ve been playing around with benchmarks and tests
I setup, while searching for good mechanisms for open world game servers,
login server etc. - running multiple clients and a server manager in a single program,
working with a lot of vectors on the server to share clients and decide on the who
recieves a packet etc. It will take a while but when I am already happy with my results.

Thanks alot guys ;)
Post Reply