Skip to content
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

ICE-TCP #211

Open
Sean-Der opened this issue Jun 18, 2023 · 3 comments
Open

ICE-TCP #211

Sean-Der opened this issue Jun 18, 2023 · 3 comments
Labels
enhancement New feature or request

Comments

@Sean-Der
Copy link
Contributor

Hey @paullouisageneau

Would ICE-TCP be accepted as a PR, or is that out of scope?

thanks!

@paullouisageneau
Copy link
Owner

The libjuice library is designed under the assumption that there is only one UDP socket to make the code simpler. I think integrating TCP candidates would require significant architectural changes.

I'm a bit dubious about ICE-TCP in general, are you talking about active, passive, or simultaneous open? For what use case would you need them?

On a related note someone started implementing TURN TCP a long time ago but bailed out.

@Sean-Der
Copy link
Contributor Author

I would like active candidates. Currently I am only using libdatachannel as a 'client' only (with OBS).

Some broadcaster want TCP (over UDP). They would rather see backpressure then packet loss. If the stream falls behind real-time that is better then packet loss. You also have the connectivity issues. Users that don't support UDP at all etc..

I prefer ICE-TCP/ICE-TLS over TURN because it reduces the complexity of what I have to deploy. TURN is somewhat expensive to run. You have to maintain another service, and deal with the extra CPU+Network usage. It isn't intractable but I have had more success with ICE-TCP/ICE-TLS personally.

@paullouisageneau
Copy link
Owner

I see, I'd gladly accept a PR for ICE-TCP active candidates provided the feature is disabled by default and must be enabled via an agent config flag.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants