Subject: Re: [bfcpbis] [MMUSIC] m= line protocol in case of ICE

From: "Charles Eckel (eckelcu)" <[email-masked]>
Date: Thu, 1 Dec 2016 20:17:13 +0000

Roman,

Why would selecting TCP/BFCP as transport violate RFC 6544? Perhaps it does, but after a quick scan I am not sure why.

Cheers,
Charles

From: Roman Shpount <[email-masked]>
Date: Tuesday, November 29, 2016 at 10:38 AM
To: Charles Eckel <[email-masked]>
Cc: Alan Ford <[email-masked]>, "[email-masked]" <[email-masked]>, "[email-masked]" <[email-masked]>, "[email-masked]" <[email-masked]>, Christer Holmberg <[email-masked]>
Subject: Re: [bfcpbis] [MMUSIC] m= line protocol in case of ICE

On Tue, Nov 29, 2016 at 12:48 PM, Charles Eckel (eckelcu) <[email-masked]<mailto:[email-masked]>> wrote:
It seems to me that the most straightforward approach would be to mandate support for BFCP over UDP when using ICE, use UDP as the default candidate, and signal the BFCP m-line as if it is BFCP over UDP. If we can mandate the use of DTLS, that would be even better.
Thoughts?

I agree.

The only issue that I still have, if DTLS is not used, what protocol is used when ICE tcp candidate is selected for transport. Is this TCP/BFCP (which goes against RFC6544)  or is it UDP/BFCP with RFC4571 framing? If it is UDP/BFCP with RFC4571 framing, what transport tag should be used in the re-INVITE which is sent after ICE nomination with only selected candidate? Should it be TCP/UDP/BFCP or something similar?

Regards,
_____________
Roman Shpount

---

From: Roman Shpount <[email-masked]>
Date: Thu, 1 Dec 2016 15:34:53 -0500

Charles,

RFC 6544 Sending Media (https://tools.ietf.org/html/rfc6544#section-10.1) says
that "The framing defined in RFC 4571 <https://tools.ietf.org/html/rfc4571>
MUST be used when sending media." This means the protocol used is not
TCP/BFCP which is using application level framing. I believe that
STUN/Media demultiplexing requirements would prevent using TCP/BFCP
directly with ice tcp candidates without redesign of either ICE TCP or
TCP/BFCP.

Furthermore there are other implied ICE requirements that I outlined before
(switching between udp and tpc candidates, existence of SBC which terminate
ICE only but do not support the embedded protocol) because of which ice tcp
is considered unreliable transport and will require fragmentation support
and re-transmit timers that are not part of TCP/BFCP.

Regards,

_____________
Roman Shpount

On Thu, Dec 1, 2016 at 3:17 PM, Charles Eckel (eckelcu) <[email-masked]>
wrote:

> Roman,
>
>
>
> Why would selecting TCP/BFCP as transport violate RFC 6544? Perhaps it
> does, but after a quick scan I am not sure why.
>
>
>
> Cheers,
>
> Charles
>
>
>
> *From: *Roman Shpount <[email-masked]>
> *Date: *Tuesday, November 29, 2016 at 10:38 AM
> *To: *Charles Eckel <[email-masked]>
> *Cc: *Alan Ford <[email-masked]>, "[email-masked]" <
> [email-masked]>, "[email-masked]" <[email-masked]>, "[email-masked]" <
> [email-masked]>, Christer Holmberg <[email-masked]>
> *Subject: *Re: [bfcpbis] [MMUSIC] m= line protocol in case of ICE
>
>
>
> On Tue, Nov 29, 2016 at 12:48 PM, Charles Eckel (eckelcu) <
> [email-masked]> wrote:
>
> It seems to me that the most straightforward approach would be to mandate
> support for BFCP over UDP when using ICE, use UDP as the default candidate,
> and signal the BFCP m-line as if it is BFCP over UDP. If we can mandate the
> use of DTLS, that would be even better.
>
> Thoughts?
>
>
>
>
>
> I agree.
>
>
>
> The only issue that I still have, if DTLS is not used, what protocol is
> used when ICE tcp candidate is selected for transport. Is this TCP/BFCP
> (which goes against RFC6544)  or is it UDP/BFCP with RFC4571 framing? If it
> is UDP/BFCP with RFC4571 framing, what transport tag should be used in the
> re-INVITE which is sent after ICE nomination with only selected candidate?
> Should it be TCP/UDP/BFCP or something similar?
>
>
>
> Regards,
>
> _____________
> Roman Shpount
>
>
>
>

---

From: "Charles Eckel (eckelcu)" <[email-masked]>
Date: Sat, 3 Dec 2016 00:01:20 +0000

I have no experience with ICE with TCP candidates so hopefully others can chime in as to what they think is a workable solution.

Cheers,
Charles

Date: Thursday, December 1, 2016 at 12:34 PM

Charles,

RFC 6544 Sending Media (https://tools.ietf.org/html/rfc6544#section-10.1) says that "The framing defined in RFC 4571<https://tools.ietf.org/html/rfc4571> MUST be used when sending media." This means the protocol used is not TCP/BFCP which is using application level framing. I believe that STUN/Media demultiplexing requirements would prevent using TCP/BFCP directly with ice tcp candidates without redesign of either ICE TCP or TCP/BFCP.

Furthermore there are other implied ICE requirements that I outlined before (switching between udp and tpc candidates, existence of SBC which terminate ICE only but do not support the embedded protocol) because of which ice tcp is considered unreliable transport and will require fragmentation support and re-transmit timers that are not part of TCP/BFCP.

Regards,

_____________
Roman Shpount

On Thu, Dec 1, 2016 at 3:17 PM, Charles Eckel (eckelcu) <[email-masked]<mailto:[email-masked]>> wrote:
Roman,

Cheers,
Charles

From: Roman Shpount <[email-masked]<mailto:[email-masked]>>
Date: Tuesday, November 29, 2016 at 10:38 AM
To: Charles Eckel <[email-masked]<mailto:[email-masked]>>
Cc: Alan Ford <[email-masked]<mailto:[email-masked]>>, "[email-masked]<mailto:[email-masked]>" <[email-masked]<mailto:[email-masked]>>, "[email-masked]<mailto:[email-masked]>" <[email-masked]<mailto:[email-masked]>>, "[email-masked]<mailto:[email-masked]>" <[email-masked]<mailto:[email-masked]>>, Christer Holmberg <[email-masked]<mailto:[email-masked]>>
Subject: Re: [bfcpbis] [MMUSIC] m= line protocol in case of ICE

I agree.

Regards,
_____________
Roman Shpount