Skip to content

RTCIceTransportState and IceGatherer pruning #197

@aboba

Description

@aboba

From Robin Raymond:

If an ice transport has exhausted all candidate testing possible (but not found any route) but end of candidates is not received yet, what state is the ice transport in?

not connected - no route is possible
not complete - no route is possible
not checking - no candidate available to check
disconnected?? - kind of implies it’s failed / done, but with Trickle ICE it’s not either failed or done in this case.

In Section 3.7, the definition of "disconnected" state says:

“Liveness checks have failed (such as those in [CONSENT]). This may trigger intermittently (and resolve itself without action).”

Based on that text, it would seem that RTCIceTransportState should be "disconnected", BUT...

We are proposing that Section 5.1 (RTCIceGatherer Overview) say the following:

“The RTCIceGatherer does not prune local candidates until at least one RTCIceTransport object has become associated and all associated RTCIceTransport objects are in the "completed" or "disconnected" state.”

But we don’t want to prune in disconnected state when there’s no “end of candidates”.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions