helios-io / helios

reactive socket middleware for .NET
http://helios-io.github.io/
Apache License 2.0
453 stars 127 forks source link

After Connection Double Disconnection #70

Closed ovflowd closed 8 years ago

ovflowd commented 8 years ago

I'm trying since 2 days figure out to use Helios. But with poor examples and no documentation i'm really bored why isn't working properly.

I choosed Helios because the good reputation of this library, that is now annyoing me.

I'm using Server Reactor that listens TCP Connections in Port 3000, from the Game Client. (The client does the first Connection). After the Connection is Handled the Server need wait the Client Send the Initial Packet (The HandShake).

But nothing appears on Console. (I created Logging Messages, for onreceive, send, onconnection and ondisconnection)

After some seconds, appears two times a Disconnection Message. Where the Reason is "Closed".

Why two messages if exists only one Connection? Also if i try direct sending data to Client, also connection is immediatelly closed.

With my old Socket System using TCPListener (that was a crap) everything was working. Helios is really more pretty and easy to use.

But i can't understand what the hell is happening.

Helios never goes to BeginReceive? (The Callback shows message).

That really annoying me. Observation: The Messages from Client to Server are encoded in RC4, that the OnReceive void calls my RC4 Library for Decrypting.

Why that doesn't work?

The github repository with the code is: https://github.com/sant0ro/Yupi/tree/nio Branch: nio Folder: Yupi/Net/Connection/

Thanks in advance.

ovflowd commented 8 years ago

Bumping!

Aaronontheweb commented 8 years ago

Repeating what I wrote in Gitter chat:

it's unlikely that we're going to be patching Helios again anytime soon I'm actively trying to deprecate it in Akka.NET strongly recommend looking at DotNetty instead which is what I'm working on nowadays

To address some of your comments:

But with poor examples and no documentation i'm really bored why isn't working properly.

Yep, sorry about the lack of documentation and examples. That's something I could have spent more time working on. Fair enough.

That really annoying me. Bumping!

I'm sure you didn't intend for it to be this way, but portions of your comments came across as entitled and demanding. Any contributor, especially on the weekend, isn't required to give you an immediate reply or work for you for free. It's an open source project - read the source code yourself if it's an urgent problem. The examples we do have actually already explain your problem if you care you to look. Take responsibility for that yourself and bear that in mind when you interact with this or other OSS developers.

ovflowd commented 8 years ago

Yes i know, i'm sorry if i was rude. Is because these question wasn't going off of my mind. I was really trying to understand what was happening. I really liked the work, more than SuperSockets.

But okay! Thanks in Advance and Good Luck!

ovflowd commented 8 years ago

Observation: As i See Helios wasn't understanding the Sequential Bytes sended from the Client (as i can see on WireShark), i think Helios was understanding as Unknown Data and Closing the Connection though was being generated an exception.

Since the Data was ciphered in RC4 with RSA Handshake. Maybe was a packet overflow since the RSA keys with their exponent was like 2K bytes in a single packet.

And i saw people with problems with Overflow and wrong Buffer Decode.

Sorry again of being rude.