-
Notifications
You must be signed in to change notification settings - Fork 160
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
Any chance to support aggressive nomination? #362
Comments
Hey @zyxar I am not against it technically! It would be nice if we could have some sort of standardization conversation. I don't want to negatively impact other implementations if we add something that only works against one client (Pion <-> Chrome or Pion <-> Pion). It could add brittleness to the protocol, and the lack of documentation could make it hard for others. |
Aggressive nomination has been deprecated in RFC 8445:
But I also think that |
It actually says, that aggressive nomination is always activated: Line 168 in 19ffbe7
Hence, I will close this issue. |
FYI Firefox uses aggressive nomination from the old RFC. It causes a problem with endpoints which use ice lite. That is one of the reasons aggressive nomination got deprecated in the new RFC. Unfortunately I'm not aware of any deployment which actually implements the new ICE algorithm from the newer RFC 8445. |
Thanks @nils-ohlmeier for the insight. I am also wondering why Pion enables aggressive nomination always without a functioning option to disable it... |
Do you know if chrome also uses aggressive-nomination? When running this example from webrtc-samples, it looks like it does or at least the first conn check sent by the controlling side contains USE-CANDIDATE flag. The behavior of Google Meet is slightly different |
Summary
I believe pion/ice is using regular nomination at present, right? With aggressive nomination, if one of the networks goes down (or the highest priority pair disconnects for some reason), re-nomination, i.e. switching to another different candidate pair without ICE-Restart would be more simple.
Motivation
Say if a mobile client changes network, (e.g., switching from WiFi to Cellular), re-nomination is faster than ICE-Restart.
Any changes we can enable this mode? Add settings, flags?
Describe alternatives you've considered
ICE-Restart
Trickle-ICE is needed.
Additional context
Current
HandleBindingRequest
:to aggressive:
Related (maybe) tickets: #359 #82 #271 #305
The text was updated successfully, but these errors were encountered: