New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reworking Networking #15621

Open
HurricanKai opened this Issue Sep 16, 2018 · 4 comments

Comments

Projects
None yet
4 participants
@HurricanKai

HurricanKai commented Sep 16, 2018

Hey, i just discovered this Project and though you may need some Help in the Networking Section?
(It doesnt look very finished to me, correct me if im wrong)

I'm just looking for a project i coud help with in that area.

heres how i woud suggest doing it:

  • Packet based
  • Each Packet is prefixed with its length, after that comes a id, and then any data.
  • introduce a Type for these two, and also arrays, which consists out of bytes, where 7 bits indicating the value, and the last bit indicating if there is another byte following. That way it consumes less Bytes the less Big the Number is.
    Which makes sense for arrays, Ids, and the General Length, because those typically are a low number, while they shoud not be restricted to ie. a Byte or a Short.

Also, i hope i havent overlooked some pullrequest doing this / an issue about this.

@abcdefg30

This comment has been minimized.

Show comment
Hide comment
@abcdefg30

abcdefg30 Sep 20, 2018

Member

Hi. Afaik OpenRA already uses packets prefixed by length and id. The third bullet point sounds interesting (although I don't know how much we would gain from such a change). Currently no one is working on this, so feel free to go ahead. :)

Member

abcdefg30 commented Sep 20, 2018

Hi. Afaik OpenRA already uses packets prefixed by length and id. The third bullet point sounds interesting (although I don't know how much we would gain from such a change). Currently no one is working on this, so feel free to go ahead. :)

@pchote

This comment has been minimized.

Show comment
Hide comment
@pchote

pchote Sep 20, 2018

Member

We did some tests a couple of years ago and found that compressing the order stream has a negligible overall effect on the network performance - the overheads from TCP and its retransmission behaviour completely dominate.

Member

pchote commented Sep 20, 2018

We did some tests a couple of years ago and found that compressing the order stream has a negligible overall effect on the network performance - the overheads from TCP and its retransmission behaviour completely dominate.

@HurricanKai

This comment has been minimized.

Show comment
Hide comment
@HurricanKai

HurricanKai Sep 22, 2018

Hmm, i coudnt find the Real Networking Code then?
https://github.com/OpenRA/OpenRA/tree/bleed/OpenRA.Game/Network
is where i looked?
Can someone point me to the right location?

HurricanKai commented Sep 22, 2018

Hmm, i coudnt find the Real Networking Code then?
https://github.com/OpenRA/OpenRA/tree/bleed/OpenRA.Game/Network
is where i looked?
Can someone point me to the right location?

@pchote

This comment has been minimized.

Show comment
Hide comment
@pchote
Member

pchote commented Sep 26, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment