Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

IOCP problem : Packets are not received in the right order


Underflow
 Share

Recommended Posts

Ah, the fun of IOCP.

Correct me if I'm wrong, someone, but IOCP uses UDP to send its packets. This means that whatever packet arrives will be accepted and code will run. Another socket system, Winsock, uses TCP, which is a stream protocol, meaning that packets are automatically in order.

There are several fixes for this, none of which are easy. One involves writing some kind of system to enforce order on the packets in UDP. Another involves altering the IOCP system in Eclipse to use TCP instead. I read of an alternate IOCP system which does this. Last, you could switch Eclipse over to Winsock. Eclipse Origins utilizes Winsock, and Damian has put it on his list of changes for the final version of Eclipse Stable.

It's likely I've had this problem before, but it seems like it could strike randomly, so there's no telling when it happened or if I realized it. Getting away from this system is the best way to avoid it, though.
Link to comment
Share on other sites

@Underflow:

> The memory leak is not really important because it's only 3-4MO.

The IOCP memory leak can cause Out of Memory errors.

It's basically just JetByte's old .dll with the memory pool ripped open to account for Mirage's horrible string packets.

Origins uses Winsock and sends packets as byte arrays. It has a self-contained buffer class which can handle everything for you, as well.

It'll also be converted to Winsock2 in the future so it won't die because of IPv6\. xD
Link to comment
Share on other sites

Simply run a popular server for a long time.

When I was hosting Silverdale we had dozens of people logging on and off each day, with up to 20 people on at peak times.

My RAM would get destroyed because of the memory leak in the socket system. If I hosted it for a couple of days without restarting my computer I'd simply get an Out of Memory error.
Link to comment
Share on other sites

@silentdemonic:

> So the Server for ES crashes after a long run time ? Ive had my server up for about 2 weeks now - 5 people logging in to edit / map / discuss constantly and no issues. Am I a rarity ?

I wouldn't necessarily say a "rarity" because the way the server performs does also depend on your computer's specifications. If your computer is excellent then you will probably have fewer problems since your server will run faster.
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...