RE: Issue 173: DTLS handshake packets arrive because of connectivity checks before DTLS transport setup

Roman said: 

"This is not a bad option except that you might be dealing with several ICE DTLS negotiations at the same time due to forking."

[BA] Right.  Where multiple IceTransports are associated with the same IceGatherer, you wouldn't know which IceTransport the incoming packets belonged to until iceTransport.start() was called, and therefore could deliver the DTLS packets to the DtlsTransport. 

Roman also said: 

"So, internally, you need to implement some sort of common buffer for received packets and then only pick the packets from the buffer that correspond to the particular Ice/DTLS transport. Since we are looking at a common buffer, it probably makes sense to keep it in the common object (IceListener/IceGatherer) and for IceTransport to pull this common object for queued packets when it is started."

[BA] Don't think there is any other choice but to buffer in the IceGatherer until the IceTransport/DtlsTransport  to deliver the packets to can be determined. 

Received on Friday, 6 February 2015 23:54:18 UTC