Re: [webrtc-pc] Specify when RTCIceRole is updated (#2214)

Determining the role is described in https://tools.ietf.org/html/rfc8445#section-6.1.1.
An UA is always a full agent (it's not permitted to be ICE-lite). If it initiates ICE, it will always be "controlling"; if it responds, it will be controlling if the other ends has "a=ice-lite" in its SDP.
Per https://tools.ietf.org/html/draft-ietf-mmusic-ice-sip-sdp-39#section-4.1, it will be considered as initiating ICE if it sends the initial offer, and it's a responder otherwise.
ICE restart may cause roles to flip; renegotiation without ICE restart won't (8445 section 6.1.1.)

There's also a role conflict resolution process in section 7.3.1.1 that might change the roles based on an incoming ICE Binding request; normally ICE binding requests don't cause observable state changes, so this is an oddity.

More rocks. More snakes.



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

Received on Thursday, 3 October 2019 11:46:13 UTC