Re: [MMUSIC] draft-holmberg-mmusic-t140-usage-data-channel - multi-party

Christer Holmberg <christer.holmberg@ericsson.com> Sun, 25 August 2019 08:25 UTC

Return-Path: <christer.holmberg@ericsson.com>
X-Original-To: mmusic@ietfa.amsl.com
Delivered-To: mmusic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 91C201200B8 for <mmusic@ietfa.amsl.com>; Sun, 25 Aug 2019 01:25:41 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.001
X-Spam-Level:
X-Spam-Status: No, score=-2.001 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=ericsson.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id qE7aXlTKQgqM for <mmusic@ietfa.amsl.com>; Sun, 25 Aug 2019 01:25:38 -0700 (PDT)
Received: from EUR03-AM5-obe.outbound.protection.outlook.com (mail-eopbgr30072.outbound.protection.outlook.com [40.107.3.72]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6CA29120048 for <mmusic@ietf.org>; Sun, 25 Aug 2019 01:25:38 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Tym1kTRJIH7WBTfwmkMxna1H7T5zbiaGwax8JFoFObqk2z1E8wMS7Amw16BGmZz8+kNx8WvL4GEbFfqwJAcljTli7nksmAL8xGDfefiykZUxX8aQ0MFcvr6UkdOJHfzR8VafsuY9HX0+BukJYXLWLcGQK/0ZxCAohlwk3zR+PGwnv0yF97gzAsgM+9PZMVquIChKvYkGrqdrDd6aOd/ZjWcAVtyDWm+QWU9sKV4cShyYBJTUA0wxePtP9kb+piU8Ksrb9tOUMft8QBnwTFXLQOaOJZ8lyDsaLrb5JOPNOMQRX9g3m61beDRL6JXEjHgoTluICHJrZMJTpU9ILIhkZQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=EtRpG9ZqdTiZjjycm5Ee5sbhtrJ/JHh0bqWw/NgpkBY=; b=WzhCg/KJxgXOGnsO2PqCMkwAnHfa1HvG/YsU3i5ZG6Ml0ZY7Xj7pjyf5jdOmepc9DN+o+dVAPKxEXw7iyBXGx9HOy5WpW6WFQ9ppPOo8EJzN1dGkf72+sckXWwxaw3hYtrY3OGe/3omabydUGpKboNs0hctOM72V47NlYfe/nZLX3VqpWp3MXg2zqE4y2iQIdmDdiZKNYNxkDsEze/ornr6x8v6hAR9Av0zeNAOvhAlaPXrAhS+ccxdjFqI+4vzj65PFf9e75f8+bNR7FGuxp6sT4IPWxqSrhAn+3e5uvsQsUC12HZHhKVosZIZdtud8VM9FOu4FSUQiZlRodky/cw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ericsson.com; dmarc=pass action=none header.from=ericsson.com; dkim=pass header.d=ericsson.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericsson.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=EtRpG9ZqdTiZjjycm5Ee5sbhtrJ/JHh0bqWw/NgpkBY=; b=ADT6LA2pOiXTm0xHuzp4nT+tYJvk9X3zTdrjWPsu7H/Lx8RP6HUo568uObOZJiPJKUpEQM4Kd8IrfJxYZW4oEh5IDIju/rkU/4Lc8HkBEj6OGdXfFuAGriFclQUK3TfXadcRIoSQsZ9teMETCcAbC7WlFG0P3xBz2nQk/hAayO4=
Received: from HE1PR07MB3161.eurprd07.prod.outlook.com (10.170.245.23) by HE1PR07MB4188.eurprd07.prod.outlook.com (20.176.166.29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2199.12; Sun, 25 Aug 2019 08:25:35 +0000
Received: from HE1PR07MB3161.eurprd07.prod.outlook.com ([fe80::f0a1:2199:7816:ff8d]) by HE1PR07MB3161.eurprd07.prod.outlook.com ([fe80::f0a1:2199:7816:ff8d%6]) with mapi id 15.20.2220.013; Sun, 25 Aug 2019 08:25:35 +0000
From: Christer Holmberg <christer.holmberg@ericsson.com>
To: =?utf-8?B?R3VubmFyIEhlbGxzdHLDtm0=?= <gunnar.hellstrom@omnitor.se>, "mmusic@ietf.org" <mmusic@ietf.org>
Thread-Topic: [MMUSIC] draft-holmberg-mmusic-t140-usage-data-channel - multi-party
Thread-Index: AQHVWxEvddfWyrxgrkCFyNXjkjXeRqcLee8g
Date: Sun, 25 Aug 2019 08:25:35 +0000
Message-ID: <HE1PR07MB31617F7C6E81EF041716749793A60@HE1PR07MB3161.eurprd07.prod.outlook.com>
References: <49749CEF-41E8-4E87-8CC6-938DBDA0CEE7@ericsson.com> <CAOW+2duTuUc8FXT-BEhJioUnPsOkzYJddK=xAp1oWiBQCKM2vg@mail.gmail.com> <HE1PR07MB3161874ED292FA17015EF95E93AE0@HE1PR07MB3161.eurprd07.prod.outlook.com> <665185b6-c1e7-62c3-4e3b-e9374d23bfd5@omnitor.se> <DF010721-81CD-40DE-A848-DE4D36836FDA@ericsson.com> <ED158CF5-E059-482B-8D7E-934BA2C753A1@ericsson.com> <2201665d-5054-1872-d208-a0fe2d26095c@omnitor.se> <VI1PR07MB3167055C995D17D4BA9E36DE93A50@VI1PR07MB3167.eurprd07.prod.outlook.com> <8d14b055-8405-4a4f-174d-d7580bea348c@omnitor.se> <0DA1248C-41FC-4155-A578-29A19883857C@ericsson.com> <a91850b9-6e86-058f-dddd-3f856bcd6710@omnitor.se> <DBC532B8-38DC-4140-B7C4-0B6853F0EF77@ericsson.com> <6fcf46a6-544d-027c-97c7-5c0e08caa555@omnitor.se> <HE1PR07MB3161A9A0C696B9636BBD380C93A70@HE1PR07MB3161.eurprd07.prod.outlook.com> <6484f305-0c38-4178-ee12-05a7dc38364f@omnitor.se>
In-Reply-To: <6484f305-0c38-4178-ee12-05a7dc38364f@omnitor.se>
Accept-Language: en-US
Content-Language: fi-FI
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=christer.holmberg@ericsson.com;
x-originating-ip: [79.134.118.162]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 37c68492-08d4-42be-12ff-08d72935cdac
x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600166)(711020)(4605104)(1401327)(2017052603328)(7193020); SRVR:HE1PR07MB4188;
x-ms-traffictypediagnostic: HE1PR07MB4188:
x-ms-exchange-purlcount: 1
x-microsoft-antispam-prvs: <HE1PR07MB4188743C96FFEE880BA89CD593A60@HE1PR07MB4188.eurprd07.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-forefront-prvs: 01401330D1
x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(346002)(396003)(376002)(136003)(39860400002)(366004)(199004)(189003)(966005)(6116002)(55016002)(11346002)(446003)(52536014)(3846002)(76116006)(14454004)(66556008)(66476007)(64756008)(66946007)(66446008)(14444005)(8936002)(66066001)(9686003)(186003)(44832011)(102836004)(86362001)(110136005)(476003)(6306002)(316002)(5660300002)(33656002)(53936002)(74316002)(71200400001)(8676002)(486006)(256004)(25786009)(305945005)(7736002)(81156014)(76176011)(2501003)(2906002)(26005)(71190400001)(81166006)(478600001)(6506007)(99286004)(7696005)(6436002); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR07MB4188; H:HE1PR07MB3161.eurprd07.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1;
received-spf: None (protection.outlook.com: ericsson.com does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam-message-info: 3W0HALo2FBGaBfO1VsKFWodxBVZHnFQE6n8oXuY0DEFdBeFF9D/fF5Y4e2grjLyVQ07VeUohAQB5RXaDxp+GDPjmcOOoY3Qz34kBSzYJQRDKnDmQW7gh7ntTKG396wLxU22nZGS3ols2bJSyn9owrwF1XQwb4+J9aMMN0sYuGaSCp6rKmyoMiNFuc7m7UfdPQSYRipDA8lPk3Fr0czCi6xkn/dv0At6HulKipBOrCGkgiPWsDGxdyatiWwXwq65dkhXBdcN8BeMmxwCkDmt7fo80HTdksIQCT0tkjuw7twdyOeWR4o/YGyAoaJmlof1AmG9J+S/knM0H0ktGpd1RmARXiNnBH5w/n+eIWYKclQ5uw3vAxkJF6icEdLAhfUzi8YObKRD5cO3g5pJcyqZ4IsM4U1y2fu30UoTHq6OmzP8=
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: ericsson.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 37c68492-08d4-42be-12ff-08d72935cdac
X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Aug 2019 08:25:35.5667 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 92e84ceb-fbfd-47ab-be52-080c6b87953f
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: m4ziDpxX+uufyoxxRuEEKAuiQS3FfFKWsF3izrP3MNF4lR1uxtoWSb49tmLxF9IGQfYrRCVe+ObfG6eVKrpkeBAENRZHNPk2ZLFnzMoFcRU=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR07MB4188
Archived-At: <https://mailarchive.ietf.org/arch/msg/mmusic/VIPZLkADG6jw0hHEEDmkTZny9H4>
Subject: Re: [MMUSIC] draft-holmberg-mmusic-t140-usage-data-channel - multi-party
X-BeenThere: mmusic@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Multiparty Multimedia Session Control Working Group <mmusic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mmusic>, <mailto:mmusic-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/mmusic/>
List-Post: <mailto:mmusic@ietf.org>
List-Help: <mailto:mmusic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mmusic>, <mailto:mmusic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 25 Aug 2019 08:25:41 -0000

Hi Gunnar,

Please see inline.

--------------------------------------------------------------------------------------------------------------------------------------------

18. Add a new section 4.5

4.5 Multi-party considerations

>>>Implementations should be prepared to accept establishment and use of multiple T140 data channels in order to support multi-party sessions 
>>>with real-time text. A number of scenarios are available for how multi-party sessions can be supported in the WebRTC environment. 
>>>Implementations may select any suitable scenario.
>>I don't think we need the two last sentences.
>>
>> Also, in some cases all communication will go via a central server, so there will only be one T.140 data channel towards each participant.
> No, T.140 has no source indicator of its own, it relies on the transport to indicate the source for each T140block. 

Good point.

>In RTP, this can be done by an RTP mixer making one stream from multiple sources including CSRC for the sources
>of the primary text and for the redundant generations of text in each packet. On the T140 data channel side, I do
>not know any corresponding way to indicate different sources in the same data channel. 
>
> The solutions I see are:
>        1) create one T140 channel per source/destination pair. or 
>        2) Introduce a source indicator in the data format for the T140 data channel, either one per STCP message
>        requiring all T140blocks in the message being from one source only, or inline between series of T140blocks
>        from different sources. 
>
> This is because the real-time text from multiple sources simultaneously need to be presented with some separation, 
> so that the text gets readable at least sentence-wise from each source. The T.140 Appendix 1 shows two ways to do 
> this, one column-oriented, and one sentence-oriented with a label per start of sentence. You can read more about 
> the topic in https://www.ietf.org/archive/id/draft-hellstrom-text-conference-04.txt
>
>
>> So, maybe something like:
>>
>> "In order for an implementation to be able to support multi-party scenarios where each participant will communicate directly 
>>with the other participants, the implementation need to be able to support multiple simultaneous T.140 data channels."
>
> While that is true, it does not tell us how to solve the case with a conference server.
>
>>> Presentation should be made so that the source of the real-time text is perceivable and the relative time relations in the conversation approximately presented. 
>>>The "label" attribute may be used to convey a presentable source.
>>
>> I am not sure I understand the "relative time relations" part.
>
> In order to enable the reader to follow the flow of a multi-party text conversation, it is a good habit to present older text placed higher in 
> the text area and newer text placed lower. (This is valid for both when you present text in one column per source and if you combine all 
> sources in one (IRC-style) column).  
> It is also a good habit to present text from the same source readable together, e.g. sentence by sentence, (and not break the text just 
> because a text item from another source was received during the time the sentence was created).
> These two requirements are in conflict. A true time-related presentation would fragment simultaneous text from different sources into unreadability, 
> and presenting all text from each source in one chunk each would give no clue about the flow of the discussion.  
> Therefore this expression " the relative time relations in the conversation approximately presented".

Gotcha.

>> Regarding the source, perhaps extending my suggested text above with something like:
>
> "In order for an implementation to be able to support multi-party scenarios where each participant will communicate directly 
> with the other participants, the implementation need to be able to support multiple simultaneous T.140 data channels. The label
> attribute can be used to provide information that helps an implementation to distinguish between the T.140 data channels."
>
> Yes, this is a good statement for the case without the server, or can be modified for a server that maintains a channel per source.
>
> But which solution do you prefer if we allow a mixing server?
> 1) require also servers to support one T140 data channel per source
> 2) introduce a data format for the T140 data channel containing a unique source identifier
> 3) introduce a source identifier in-line in the T.140 data stream. (T.140 is extendable)

Short term, as far as the draft is concerned, I think we should go for alternative 1. Alternatives 2 and 3 would probably take some time, so 
if done I think it should be done as a separate task (and, again, probably in a separate WG).

So, what about the following text:

"If an implementation needs to support multi-party scenarios, implementations (both clients and servers) need
to support multiple simultaneous T.140 data channels, one for each source. At the time of writing this document, this
is true even in scenarios where each participants communicate via a centralized conference server. The reason is 
that, unlike RTP media, WebRTC data channels and the T.140 protocol do not support the indication of the source of T.140 data.

NOTE: Future extensions to T.140, or to the T140block, might allow indicating the source of T.140 data, in which case 
it might be possible to use a single T.140 data channel to transport data from multiple sources."

Regards,

Christer