Re: [webrtc-pc] ICE restart deserves a first-class API. (#2167)

@alvestrand This isn't about adding new stuff, rather it's about fixing old stuff so it works with ONN.

I welcome you to read the [blog I just posted](https://blog.mozilla.org/webrtc/perfect-negotiation-in-webrtc/), "Perfect negotiation in WebRTC", where I explore the full potential of ONN and rollback. My conclusion is that the WebRTC API is inherently racy, and will be too hard to use safely if we give up on the negotiation-needed spec algorithm. I find that algorithm critical to taming the state machine, and avoiding races in apps. Frankly, I doubt the working group would have gotten consensus for this much complexity without its remedial promise.  

ONN and rollback have been in the spec since, what, inception? Yet they're still not implemented right in the dominant browser. I suspect this has helped conceal that there are still issues around their use.

The fact that `{iceRestart: true}` works poorly with ONN is one of those issues I found. We owe it to users to fix that (and to fix ONN and rollback in all browsers).

I think the method I propose is a simple fix that does not significantly alter or add any new functionality.

> avoid ONN

@fippo Of course you avoid ONN. It's broken in Chrome.

-- 
GitHub Notification of comment by jan-ivar
Please view or discuss this issue at https://github.com/w3c/webrtc-pc/issues/2167#issuecomment-480941313 using your GitHub account

Received on Monday, 8 April 2019 18:06:58 UTC