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
Restart method needed for the ICE Listener? #115
Comments
https://tools.ietf.org/html/rfc5245#section-9.1.1.1 http://tools.ietf.org/html/draft-petithuguenin-mmusic-ice-sip-sdp-01#section-9.1.1 Important info about restarts... |
|
ICE restarts aren't just changing ufrag/password for ICE. Nor it is just flushing the candidate checks. Because it's redirecting to a new target, this implies that a restart needs to perform a full DTLS exchange to the new target after establishing connectivity. This you can't just have a "restart" method on the Ice listener. You actually need to have brand new IceListeners, IceTransports and DTLS transport objects. Seems to me the simpler thing is to do nothing and let those who need to perform this kind of restart stop existing objects, create brand new objects, and insert the object into the list at the right spot for the ice transport controller. |
$related #93 |
The full text from RFC 5245 Section 9.1.1.1 is: An agent MAY restart ICE processing for an existing media stream. An An agent MUST restart ICE for a media stream if: o The offer is being generated for the purposes of changing the o An agent is changing its implementation level. This typically [BA] Would it be useful to work through an example, such as changing the target of the media stream (e.g. interface switch)? In general, I agree that you can't just call restart() on the ICE Transport and assume that all objects utilizing it (e.g. DTLS transport object, sender/receiver objects) will not be affected. |
I believe that the resolution is to move restart() to the RTCIceTransportController, no? |
I think we have convinced ourselves that we don't need (and can't use) a restart() method anywhere. |
At the ORTC CG meeting, the question was asked whether a restart method was needed for the ICE listener or not.
The text was updated successfully, but these errors were encountered: