[pjsip] Issues with ICE media transport

Amit Sharma amit398 at gmail.com
Tue Jun 9 04:58:02 EDT 2009


I am using pjsip version 1.0.2 and observed the following issues when
ICE is used

a. If a stun socket reports an error on sending the message(e.g the
lan cable is pulled off) , keep-alive is not rescheduled. It seems
that get_mapped_addr does not use the return value from the session
fail function to reschedule the timer.
b. In cases where connectivity to the internet is lost temporarily
(internet gw down etc) and also case a) above, a failed keep-alive
marks the status of the srflx candidate to be in error. However, the
status is never set back to PJ_SUCCESS even when the connection to the
internet is resumed
c. The result of b) is that subsequent calls after connectivity is
restored do not have the srflx candidate in the sdp but still has the
stun mapped ip and port in the c and m line. If the remote uses ICE ,
an ice-mismatch is detected and there is no media on the calls.If the
remote doesn't use ICE, still no rtp flows from the pjsua since the
status of the candidate had been marked to be in error.

 Only a restart alleviates and restores proper media on the calls

Thanks,
Amit



More information about the pjsip mailing list