Re: [rtcweb] New use-case proposed

Oscar Ohlsson <oscar.ohlsson@ericsson.com> Tue, 15 May 2012 18:27 UTC

Return-Path: <oscar.ohlsson@ericsson.com>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D2BBE21F86EB for <rtcweb@ietfa.amsl.com>; Tue, 15 May 2012 11:27:31 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.491
X-Spam-Level:
X-Spam-Status: No, score=-6.491 tagged_above=-999 required=5 tests=[AWL=-0.242, BAYES_00=-2.599, HELO_EQ_SE=0.35, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 02ERFFbbBvm6 for <rtcweb@ietfa.amsl.com>; Tue, 15 May 2012 11:27:31 -0700 (PDT)
Received: from mailgw7.ericsson.se (mailgw7.ericsson.se [193.180.251.48]) by ietfa.amsl.com (Postfix) with ESMTP id 7DECE21F86E5 for <rtcweb@ietf.org>; Tue, 15 May 2012 11:27:29 -0700 (PDT)
X-AuditID: c1b4fb30-b7be1ae0000059fc-32-4fb2a0100d87
Received: from esessmw0237.eemea.ericsson.se (Unknown_Domain [153.88.253.125]) by mailgw7.ericsson.se (Symantec Mail Security) with SMTP id 0E.CA.23036.010A2BF4; Tue, 15 May 2012 20:27:29 +0200 (CEST)
Received: from ESESSCMS0360.eemea.ericsson.se ([169.254.1.5]) by esessmw0237.eemea.ericsson.se ([153.88.115.90]) with mapi; Tue, 15 May 2012 20:27:28 +0200
From: Oscar Ohlsson <oscar.ohlsson@ericsson.com>
To: "rtcweb@ietf.org" <rtcweb@ietf.org>
Date: Tue, 15 May 2012 20:27:27 +0200
Thread-Topic: [rtcweb] New use-case proposed
Thread-Index: Ac0vdiHw0ZhBhnYyQ+KJTcwm3f2z+ADTmebQ
Message-ID: <A1B638D2082DEA4092A268AA8BEF294D1948BCF4A4@ESESSCMS0360.eemea.ericsson.se>
References: <4FAD0D8C.7020701@ericsson.com>
In-Reply-To: <4FAD0D8C.7020701@ericsson.com>
Accept-Language: sv-SE, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: sv-SE, en-US
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-Brightmail-Tracker: AAAAAA==
Subject: Re: [rtcweb] New use-case proposed
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Real-Time Communication in WEB-browsers working group list <rtcweb.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/rtcweb>
List-Post: <mailto:rtcweb@ietf.org>
List-Help: <mailto:rtcweb-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 15 May 2012 18:27:31 -0000

Hi,

An interesting variant of Stefan's use case is when the central media 
node is provided by an untrusted 3rd-party. The application provider and 
the users trust the 3rd party to deliver the media as expected, but they 
do not necessarily trust it with cleartext media, be that audio, video 
or data.

The benefit is that the application provider can be less picky when 
selecting the 3rd-party provider(s). Having a large pool to choose from 
makes it easier to switch provider or select the cheapest or 
geographically closest one.

         +---+      +------------+      +---+
         | A |<---->|            |<---->| B |
         +---+      | Translator |      +---+
         +---+      |(untrusted) |      +---+
         | C |<---->|            |<---->| D |
         +---+      +------------+      +---+


A requirement for this to work is that group keys are supported. This 
allows the central media node to simply forward the media without 
decrypting and re-encrypting it for each recipient. The fact that the 
central media node becomes less complex and can achieve higher 
throughput is of course beneficial, but it's not the main purpose.

Another requirement is that the group key can be distributed by the 
application provider (or some other trusted party) without the central 
media node learning its value. This can easily be achieved in 
DTLS-SRTP + EKT by using the a=dtls-srtp-host attribute. The host 
specified in the attribute performs an initial DTLS-SRTP handshake with 
each party and transmits the shared EKT key (i.e. the group key).

                    +------------+ 
                    | Key Server |
   |-----EKTkey---- | (trusted)  | ----EKTkey-----|
   |                |            |                |
   |                +------------+                |
   |                                              |
   |     +---+      +------------+      +---+     |
   |---> | A |<---->|            |<---->| B | <---|
   |     +---+      | Translator |      +---+     |
   |     +---+      |(untrusted) |      +---+     |
   |---> | C |<---->|            |<---->| D | <---|
         +---+      +------------+      +---+


Is the above something that this group would like to support or 
investigate further?

Best regards,

Oscar Ohlsson

> -----Original Message-----
> From: rtcweb-bounces@ietf.org 
> [mailto:rtcweb-bounces@ietf.org] On Behalf Of Stefan Hakansson LK
> Sent: Friday, May 11, 2012 3:01 PM
> To: rtcweb@ietf.org
> Subject: [rtcweb] New use-case proposed
> 
> I've been sketching on a new use-case. The use-case is 
> intended to derive requirements that enable low complex 
> central nodes for multi party sessions, which in turn leads 
> to requirements regarding
> (essentially) keying solution for SRTP and the possibility 
> for the app to control/set things in the media configuration 
> (in other words, for JSEP):
> 
> 
> Multi-party with low complexity central node 
> ==============================================
> 
> A geographically spread (charity, non-profit, school) 
> organization offers its members multi-party video 
> communication via a shared virtual room that participants can 
> enter and leave at any time. At times there are many persons 
> in the virtual room (20+), at other times very few (3-5, or even 0-1).
> 
> The application will control if few participants (a subset) 
> are shown at a higher fidelity or if many (all) are shown at 
> a lower fidelity or a mix of some few at high fidelity and 
> the rest at much lower fidelity given the existing bandwidth 
> limitations between participants.
> 
> Since there are at times many persons in the virtual room, it 
> is not feasible to set up a mesh. The bandwidth needed by a 
> participant exceeds what many members have access to, 
> especially in their uplinks, so instead a central media node 
> is deployed. In addition, the organization does not have 
> access to much funds, but has to rely on cheap hardware 
> (often donated) operated by volunteers.
> 
>   From this use-case a high level requirement saying something like
> 
> "It must be possible to set up media streams and encryption 
> in such a way that processing in a central node is minimized 
> (no transcoding required, no RTP packet rewriting, no 
> decryption/re-encryption for every outgoing flow - just 
> simple forwarding)."
> 
> can be derived. This can in turn be broken down into more 
> detailed requirements such as:
> 
> - The keying solution must allow each participants to encrypt 
> to multiple receivers without any decryption+encryption in 
> the middle node
> 
> - RTP sessions that have SSRCs from multiple PeerConnections 
> being interconneted must be supported. From a given end-point 
> all SSRCs will come over one PC, but the full path will be 
> different towards different sets of SSRCs.
> 
> - Signalling must be capable of establishing a common set of 
> receiver configurations over all participants.
> 
> - The API must allow for the above, i.e.:
> -- The app must be able to chose a keying solution that 
> enables encryption to multiple receivers (if the app can have 
> any control over keying method used)
> -- The app must be able to control SSRCs to use for outgoing streams
> -- The app must be able to control the receiver configuration 
> the browser uses
> 
> Is this something we should consider adding to the use-case document?
> 
> Br,
> Stefan
> _______________________________________________
> rtcweb mailing list
> rtcweb@ietf.org
> https://www.ietf.org/mailman/listinfo/rtcweb
>