Subject: Re: [MMUSIC] T.140 in Data Channel scenarios - the pull request

From: Christer Holmberg <[email-masked]>
Date: Thu, 26 Sep 2019 10:18:27 +0000

Hi,

I created a pull request:

https://github.com/cdh4u/draft-datachannel-t140/pull/34

I used Gunnar's text as base, but modify the second sentence, because I was not sure what "does not specify ... by any application protocol" meant.

Regards,

Christer

On 26/09/2019, 12.19, "Gunnar Hellström" <[email-masked]> wrote:

    Hi,

    Den 2019-09-26 kl. 08:08, skrev Christer Holmberg:
    > Hi,
    >
    >> Your note looks good.  You might also want to add a sentence or two about why you have
    >> chosen reliable transport and the implications (that redundancy is not needed).
    > “NOTE: T.140 does not provide reliable and ordered transmission of T.140 data.
    > Instead, T.140 requires the transport channel to provide real-time text without
    > duplication and in original order. When RTP based transport is used, the RTP sequence
    > number is used to detect packet loss and out-of-order packets, and a redundancy
    > mechanism using the RTP timestamp is used to achieve reliable delivery of T.140 data.
    > By using the reliable and in-order transmission features on the T.140 data channel, there
    > is no need for a redundancy mechanism or a mechanism to detect packet loss and
    > out-of-order packets.”
    
    I think the proposed wording may scare some readers with the wording 
    that no reliability provided etc, even if the surrounding wording 
    explains the situation well. So, here is an effort to reword it slightly.
    
    “NOTE: T.140 requires the transport channel to provide real-time text without
    duplication and in original order. Therefore, T.140 does not specify reliable
    and ordered transmission of T.140 data by any application protocol.
    Instead, when RTP based transport is used, the RTP sequence number is used
    to detect packet loss and out-of-order packets, and a redundancy mechanism
    using the RTP timestamp is used to achieve reliable delivery of T.140 data.
    By using the reliable and in-order transmission features on the T.140 data
    channel, there is no need for a redundancy mechanism or a mechanism to detect
    data loss and out-of-order delivery on the application level. The latency
    characteristics of the T.140 data channel is also regarded to be sufficient
    to meet the application requirements of T.140.”
    
    Regards
    Gunnar
    
    >
    > Regards,
    >
    > Christer
    >
    >
    > On Wed, Sep 25, 2019 at 2:26 AM Christer Holmberg <mailto:[email-masked]> wrote:
    >   
    > Hi,
    >   
    >> Thanks for the explanation.  Would there be a way for some of this to make its way into the document?
    >> I think that would make it easier for the APA to review.
    >   
    > What about the following note below the table:
    >   
    > “NOTE: T.140 does not provide reliable and ordered transmission of T.140 data.
    > Instead, T.140 requires the transport channel to provide real-time text without
    > duplication and in original order. When RTP based transport is used, the RTP sequence
    > number is used to detect packet loss and out-of-order packets, and a redundancy
    > mechanism using the RTP timestamp is used to achieve reliable delivery of T.140 data.”
    >   
    > Regards,
    >   
    > Christer
    >   
    >   
    >   
    >   
    >   
    >   
    >   
    >   
    > Christer said:
    >   
    > "T.140 requires the transport mechanism to keep packets in order, and without duplication. When using RTP, the sequence number is used to detect out-of-order packets and loss of packets. You don’t have that mechanism in a data channel, and T.140 itself does not contain a sequence number.
    >   
    > When using RTP, reliability can provided by sending of redundant data, or by using FEC. FEC is RTP-specific, so you can’t use that on a data channel.
    >   
    > I don’t think the redundancy mechanism can be used on the data channel either, because it uses the RTP header timestamp.
    >   
    > And, you can not re-transmit T.140 text on a data channel (T.140 RTP packets are not re-transmitted either), because the receiver will not be able to detect it (again, because T.140 does not contain a sequence number).
    >   
    > Of course we could have defined an “envelope” for the data channel T.140 text, with sequence numbers. But, the idea was to simply send the T.140 text as the data channel itself provides delivery and reliability."
    >   
    > On Tue, Sep 24, 2019 at 1:12 PM Christer Holmberg <mailto:[email-masked]> wrote:
    > Hi Bernard,
    >   
    > Gunnar will probably be able to give a better answer, but below are some comments from me.
    >   
    >> At the W3C TPAC 2019 meeting last week, draft-ietf-mmusic-t140-usage-data-channel came up as part of a discussion of Accessible RTC Use Cases:
    >> https://www.w3.org/WAI/APA/wiki/Accessible_RTC_Use_Cases
    >>   
    >> Here are a few of the questions that came up.
    >>   
    >> Section 3
    >>   
    >>         +--------------------------+-------------------------------+
    >>         | Subprotocol Identifier   | t140                          |
    >>         | Transmission reliability | reliable                      |
    >>         | Transmission order       | in-order                      |
    >>         | Label                    | See https://tools.ietf.org/html/draft-ietf-mmusic-t140-usage-data-channel-05#section-4.1 and https://tools.ietf.org/html/draft-ietf-mmusic-t140-usage-data-channel-05#section-6 |
    >>         +--------------------------+-------------------------------+
    >>   
    >> Are there any situations in which unreliable or partially reliable transport might be appropriate?
    >> For example, some participants envisaged scenarios in which low latency communications might be
    >>    desirable, such as in emergencies, and questioned whether it might make sense to use the maxPacketLifetime
    >> or maxRetransmissions parameters.
    >>   
    >> So there was a question about whether it might ever make sense to support an unreliable data channel (possibly with redundancy).
    >   
    > T.140 requires the transport mechanism to keep packets in order, and without duplication. When using RTP, the sequence number is used to detect out-of-order packets and loss of packets. You don’t have that mechanism in a data channel, and T.140 itself does not contain a sequence number.
    >   
    > When using RTP, reliability can provided by sending of redundant data, or by using FEC. FEC is RTP-specific, so you can’t use that on a data channel.
    >   
    > I don’t think the redundancy mechanism can be used on the data channel either, because it uses the RTP header timestamp.
    >   
    > And, you can not re-transmit T.140 text on a data channel (T.140 RTP packets are not re-transmitted either), because the receiver will not be able to detect it (again, because T.140 does not contain a sequence number).
    >   
    > Of course we could have defined an “envelope” for the data channel T.140 text, with sequence numbers. But, the idea was to simply send the T.140 text as the data channel itself provides delivery and reliability.
    >   
    > ---
    >   
    >> Lost information (compared with RTP)
    >>   
    >> We had some questions relating to information "lost in translation" between realtime text
    >> and data channel.  This includes aspects of the RTP header, including SSRCs, timestamps and sequence numbers.
    >   
    > Yes, that information is lost.
    >   
    > There were some discussions about including SSRC somehow, in order to support conferences where a mixer uses a single data channel for text received from multiple remote users, but we decided that it is outside the scope of this draft.
    >   
    > Regards,
    >   
    > Christer
    >   
    >   
    >
    > _______________________________________________
    > mmusic mailing list
    > [email-masked]
    > https://www.ietf.org/mailman/listinfo/mmusic
    
    -- 
    
    + + + + + + + + + + + + + +
    
    Gunnar Hellström
    Omnitor
    [email-masked]
    +46 708 204 288