Trickle ICE

CC
chris coleman
Wed, Sep 26, 2018 1:49 AM

Hello PJSIP team,
For Nansng and anyone else working on this Trickle ICE.How’s it going with implementing it?I noticed it was marked for 2.8 then slipped to next version 2.9Can you talk here about the implementation plan?Which already functioning implementation are you borrowing into PJSIP?Anything missing, any obstacle?

Hello PJSIP team, For Nansng and anyone else working on this Trickle ICE.How’s it going with implementing it?I noticed it was marked for 2.8 then slipped to next version 2.9Can you talk here about the implementation plan?Which already functioning implementation are you borrowing into PJSIP?Anything missing, any obstacle?
M
Ming
Wed, Sep 26, 2018 6:33 AM

Hi Chris,

To be honest, we haven't looked further into it. The only thing we
know is that at first glance, it already looks like the behavior that
we currently have with our ICE. So if you have any insights or
feedbacks (or implementation patches :) ), please feel free to share
with us because basically we haven't started anything yet.

Regards,
Ming
On Wed, Sep 26, 2018 at 9:54 AM chris coleman via pjsip
pjsip@lists.pjsip.org wrote:

Hello PJSIP team,

For Nansng and anyone else working on this Trickle ICE.
How’s it going with implementing it?
I noticed it was marked for 2.8 then slipped to next version 2.9
Can you talk here about the implementation plan?
Which already functioning implementation are you borrowing into PJSIP?
Anything missing, any obstacle?


Visit our blog: http://blog.pjsip.org

pjsip mailing list
pjsip@lists.pjsip.org
http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org

Hi Chris, To be honest, we haven't looked further into it. The only thing we know is that at first glance, it already looks like the behavior that we currently have with our ICE. So if you have any insights or feedbacks (or implementation patches :) ), please feel free to share with us because basically we haven't started anything yet. Regards, Ming On Wed, Sep 26, 2018 at 9:54 AM chris coleman via pjsip <pjsip@lists.pjsip.org> wrote: > > Hello PJSIP team, > > For Nansng and anyone else working on this Trickle ICE. > How’s it going with implementing it? > I noticed it was marked for 2.8 then slipped to next version 2.9 > Can you talk here about the implementation plan? > Which already functioning implementation are you borrowing into PJSIP? > Anything missing, any obstacle? > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip@lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
CC
chris coleman
Thu, Sep 27, 2018 10:14 PM

Hi Ming,

  1. Trickle ICE is really great to add as a 100% RFC compliant version, because this should give an order of magnitude faster call connection time and mobile handoff time which usually must connect thru one or more NAT gateways.  Something like 25-50ms vs 250-500ms. Because Trickle ICE uses the callback pattern which lets there be a fast connection attempt to the first candidate  This is huge for PJSIP and it results in much better user experience.

  2. I’d suggest to avoid reinventing the wheel.  The reference implementation is already developed by WebRTC groups and it’s working. It’s here:https://github.com/webrtc/samples/blob/59784be99f8140460f73f05c379487b3cc533693/src/content/peerconnection/trickle-ice/js/main.js 

  3. Twi ways to get the official Trickle ICE into PJSIP:
    A. Compare PJSIP’s Vanilla ICE and WebRTC’s Trickle ICE, see where they deviate in behavior, and modify PJSIP’s Vanilla ICE to functionally match WebRTC’s Trickle.
    B. Use a translator, such as JXcore, to auto convert WebRTC’s JavaScript to C++, then write a script to wrap it in a class, and have PJSIP instantiate this encapsulated object, call its methods, yet remain immune from its inner working details.  Next release of WebRTC’s Trickle ICE, just run the translator and script again, to get an updated better version of the official Trickle ICE code from WebRTC working group.

On Wednesday, September 26, 2018, 2:33 AM, Ming ming@teluu.com wrote:

Hi Chris,

To be honest, we haven't looked further into it. The only thing we
know is that at first glance, it already looks like the behavior that
we currently have with our ICE. So if you have any insights or
feedbacks (or implementation patches :) ), please feel free to share
with us because basically we haven't started anything yet.

Regards,
Ming
On Wed, Sep 26, 2018 at 9:54 AM chris coleman via pjsip
pjsip@lists.pjsip.org wrote:

Hello PJSIP team,

For Nansng and anyone else working on this Trickle ICE.
How’s it going with implementing it?
I noticed it was marked for 2.8 then slipped to next version 2.9
Can you talk here about the implementation plan?
Which already functioning implementation are you borrowing into PJSIP?
Anything missing, any obstacle?


Visit our blog: http://blog.pjsip.org

pjsip mailing list
pjsip@lists.pjsip.org
http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org

Hi Ming, 1. Trickle ICE is really great to add as a 100% RFC compliant version, because this should give an order of magnitude faster call connection time and mobile handoff time which usually must connect thru one or more NAT gateways.  Something like 25-50ms vs 250-500ms. Because Trickle ICE uses the callback pattern which lets there be a fast connection attempt to the first candidate  This is huge for PJSIP and it results in much better user experience. 2. I’d suggest to avoid reinventing the wheel.  The reference implementation is already developed by WebRTC groups and it’s working. It’s here:https://github.com/webrtc/samples/blob/59784be99f8140460f73f05c379487b3cc533693/src/content/peerconnection/trickle-ice/js/main.js  3. Twi ways to get the official Trickle ICE into PJSIP: A. Compare PJSIP’s Vanilla ICE and WebRTC’s Trickle ICE, see where they deviate in behavior, and modify PJSIP’s Vanilla ICE to functionally match WebRTC’s Trickle. B. Use a translator, such as JXcore, to auto convert WebRTC’s JavaScript to C++, then write a script to wrap it in a class, and have PJSIP instantiate this encapsulated object, call its methods, yet remain immune from its inner working details.  Next release of WebRTC’s Trickle ICE, just run the translator and script again, to get an updated better version of the official Trickle ICE code from WebRTC working group. On Wednesday, September 26, 2018, 2:33 AM, Ming <ming@teluu.com> wrote: Hi Chris, To be honest, we haven't looked further into it. The only thing we know is that at first glance, it already looks like the behavior that we currently have with our ICE. So if you have any insights or feedbacks (or implementation patches :) ), please feel free to share with us because basically we haven't started anything yet. Regards, Ming On Wed, Sep 26, 2018 at 9:54 AM chris coleman via pjsip <pjsip@lists.pjsip.org> wrote: > > Hello PJSIP team, > > For Nansng and anyone else working on this Trickle ICE. > How’s it going with implementing it? > I noticed it was marked for 2.8 then slipped to next version 2.9 > Can you talk here about the implementation plan? > Which already functioning implementation are you borrowing into PJSIP? > Anything missing, any obstacle? > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip@lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
M
Ming
Fri, Sep 28, 2018 1:12 AM

Hi Chris,

Thanks for your valuable input. This will definitely improve its
chance of being included in the upcoming release, although at the end
of the day, we still need to choose which ones among the wish list we
can squeeze into release 2.9.

Regards,
Ming

On Fri, Sep 28, 2018 at 6:14 AM, chris coleman christocoleman@yahoo.com wrote:

Hi Ming,

  1. Trickle ICE is really great to add as a 100% RFC compliant version,
    because this should give an order of magnitude faster call connection time
    and mobile handoff time which usually must connect thru one or more NAT
    gateways.  Something like 25-50ms vs 250-500ms. Because Trickle ICE uses the
    callback pattern which lets there be a fast connection attempt to the first
    candidate  This is huge for PJSIP and it results in much better user
    experience.

  2. I’d suggest to avoid reinventing the wheel.  The reference implementation
    is already developed by WebRTC groups and it’s working. It’s here:
    https://github.com/webrtc/samples/blob/59784be99f8140460f73f05c379487b3cc533693/src/content/peerconnection/trickle-ice/js/main.js

  3. Twi ways to get the official Trickle ICE into PJSIP:

A. Compare PJSIP’s Vanilla ICE and WebRTC’s Trickle ICE, see where they
deviate in behavior, and modify PJSIP’s Vanilla ICE to functionally match
WebRTC’s Trickle.

B. Use a translator, such as JXcore, to auto convert WebRTC’s JavaScript to
C++, then write a script to wrap it in a class, and have PJSIP instantiate
this encapsulated object, call its methods, yet remain immune from its inner
working details.  Next release of WebRTC’s Trickle ICE, just run the
translator and script again, to get an updated better version of the
official Trickle ICE code from WebRTC working group.

On Wednesday, September 26, 2018, 2:33 AM, Ming ming@teluu.com wrote:

Hi Chris,

To be honest, we haven't looked further into it. The only thing we
know is that at first glance, it already looks like the behavior that
we currently have with our ICE. So if you have any insights or
feedbacks (or implementation patches :) ), please feel free to share
with us because basically we haven't started anything yet.

Regards,
Ming

On Wed, Sep 26, 2018 at 9:54 AM chris coleman via pjsip
pjsip@lists.pjsip.org wrote:

Hello PJSIP team,

For Nansng and anyone else working on this Trickle ICE.
How’s it going with implementing it?
I noticed it was marked for 2.8 then slipped to next version 2.9
Can you talk here about the implementation plan?
Which already functioning implementation are you borrowing into PJSIP?
Anything missing, any obstacle?

Hi Chris, Thanks for your valuable input. This will definitely improve its chance of being included in the upcoming release, although at the end of the day, we still need to choose which ones among the wish list we can squeeze into release 2.9. Regards, Ming On Fri, Sep 28, 2018 at 6:14 AM, chris coleman <christocoleman@yahoo.com> wrote: > Hi Ming, > > 1. Trickle ICE is really great to add as a 100% RFC compliant version, > because this should give an order of magnitude faster call connection time > and mobile handoff time which usually must connect thru one or more NAT > gateways. Something like 25-50ms vs 250-500ms. Because Trickle ICE uses the > callback pattern which lets there be a fast connection attempt to the first > candidate This is huge for PJSIP and it results in much better user > experience. > > 2. I’d suggest to avoid reinventing the wheel. The reference implementation > is already developed by WebRTC groups and it’s working. It’s here: > https://github.com/webrtc/samples/blob/59784be99f8140460f73f05c379487b3cc533693/src/content/peerconnection/trickle-ice/js/main.js > > > 3. Twi ways to get the official Trickle ICE into PJSIP: > > A. Compare PJSIP’s Vanilla ICE and WebRTC’s Trickle ICE, see where they > deviate in behavior, and modify PJSIP’s Vanilla ICE to functionally match > WebRTC’s Trickle. > > B. Use a translator, such as JXcore, to auto convert WebRTC’s JavaScript to > C++, then write a script to wrap it in a class, and have PJSIP instantiate > this encapsulated object, call its methods, yet remain immune from its inner > working details. Next release of WebRTC’s Trickle ICE, just run the > translator and script again, to get an updated better version of the > official Trickle ICE code from WebRTC working group. > > > On Wednesday, September 26, 2018, 2:33 AM, Ming <ming@teluu.com> wrote: > > Hi Chris, > > To be honest, we haven't looked further into it. The only thing we > know is that at first glance, it already looks like the behavior that > we currently have with our ICE. So if you have any insights or > feedbacks (or implementation patches :) ), please feel free to share > with us because basically we haven't started anything yet. > > Regards, > Ming > > On Wed, Sep 26, 2018 at 9:54 AM chris coleman via pjsip > <pjsip@lists.pjsip.org> wrote: >> >> Hello PJSIP team, >> >> For Nansng and anyone else working on this Trickle ICE. >> How’s it going with implementing it? >> I noticed it was marked for 2.8 then slipped to next version 2.9 >> Can you talk here about the implementation plan? >> Which already functioning implementation are you borrowing into PJSIP? >> Anything missing, any obstacle? > >> >> _______________________________________________ >> Visit our blog: http://blog.pjsip.org >> >> pjsip mailing list >> pjsip@lists.pjsip.org >> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org