pojntfx / weron

Overlay networks based on WebRTC.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Use unordered datachannel in WebRTC

ccaapton opened this issue · comments

Hi, I noticed that weron is using the default datachannel configuration, which is ordered thus not suitable for lossy packet transmission.

Would you add more configuration, perhaps end user configurable, to allow unordered datachannel as the underlying transport?

I think this should not be feasible. First of all, IP data packets are usually sent in fragments under tun/tap. This will cause the MTU of the tunnel to be a reasonable value, otherwise communication cannot be carried out. This will not happen when using strong parity flow. The problem is, it can be viewed as streams, not packets.

Stream over stream is just another version of tcp over tcp, which is very problematic. The user should able able to choose a smaller mtu, or rely on tcp mss discovery mechanism.

And why do we need strong parity on the first place?

I'm definitely open to taking another look at this once the transition to an asynchronous RPC protocol is done (see https://github.com/pojntfx/panrpc), but with the current RPC system this would not be possible.