Re: [rtcweb] JSEP-03: O/A state machine and trickle ICE with forking

Justin Uberti <juberti@google.com> Thu, 28 February 2013 01:20 UTC

Return-Path: <juberti@google.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 CA1A821F84C8 for <rtcweb@ietfa.amsl.com>; Wed, 27 Feb 2013 17:20:05 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.776
X-Spam-Level:
X-Spam-Status: No, score=-102.776 tagged_above=-999 required=5 tests=[AWL=0.200, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-1, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6Bh9W3m1FKtn for <rtcweb@ietfa.amsl.com>; Wed, 27 Feb 2013 17:20:05 -0800 (PST)
Received: from mail-qe0-f50.google.com (mail-qe0-f50.google.com [209.85.128.50]) by ietfa.amsl.com (Postfix) with ESMTP id 1D35D21F94FF for <rtcweb@ietf.org>; Wed, 27 Feb 2013 16:34:37 -0800 (PST)
Received: by mail-qe0-f50.google.com with SMTP id w7so988826qeb.37 for <rtcweb@ietf.org>; Wed, 27 Feb 2013 16:34:09 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:mime-version:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; bh=vQXgrlvTGwGtyfyBf6I/woYuTcFq66hYGbnyqe+tdB4=; b=IFcF/MTfgb2bI7tyq+XrBsYxoF5doioh69uWXe1+m/lwc1mAJi19MwqXzuS2FJQec9 qainuYraWPPkiXZd2ora7YNR66IRDyOmlNTYrRAk1apfpLP65mEyogYo6wAM0FKy/x3D 9IQixyRprhNJLKSzCAEyn7U75f8Lz9cNYG89FP17zxZtUlSi5fGAu1VrK10SIel2FRjf YQdJkpvFRRRdbkvTJrVG/z8WKrH8Bzcoe+rEG2Noia7/Trnwe5qUx2o27EwwS9ZLLdaQ IeAvHEPEhLFMmW8p7b0W7dttJqQyLT6F0o1Zzj7hZz6utXx7UCW6a9OFy/84NVuDhIe8 JYug==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:mime-version:in-reply-to:references:from:date:message-id :subject:to:cc:content-type:x-gm-message-state; bh=vQXgrlvTGwGtyfyBf6I/woYuTcFq66hYGbnyqe+tdB4=; b=oMlX7aL5iSagB1saMfT5/CWfbW55zk2uMk6BIKyStZDF3uRX/z0L/4rqKivlLDsMho LH110bCCbOTpvNmqGvzt96hebxs+JC7W5d8Nwl/SDlWs9Ay+pRQqdMOKZXjb5FUB65Zh gGhEFeHCXu6DwpdKgvqzA4q5FS8P8NyBybh6D+iFL4E+kflUCd9zN/mdTRS7pIpz6xWn Up8UN0iHEl1yj7+1fDZdI7IL2pGgP9+c9hVrf7k+33MPABx5219ii3RFZaEDUx5vq7U5 PLhPEIrE5wRI8Q4wepcpi7WSx4qO5s7vg6y6M58bXwQNRIJv6mV1S7EnEMiWw4Alo313 QQCw==
X-Received: by 10.49.73.105 with SMTP id k9mr7563547qev.6.1362011649206; Wed, 27 Feb 2013 16:34:09 -0800 (PST)
MIME-Version: 1.0
Received: by 10.229.206.17 with HTTP; Wed, 27 Feb 2013 16:33:49 -0800 (PST)
In-Reply-To: <7594FB04B1934943A5C02806D1A2204B10B6DE@ESESSMB209.ericsson.se>
References: <7594FB04B1934943A5C02806D1A2204B10B6DE@ESESSMB209.ericsson.se>
From: Justin Uberti <juberti@google.com>
Date: Wed, 27 Feb 2013 16:33:49 -0800
Message-ID: <CAOJ7v-0UTceYRjiTL2tPWhnJ914dsk54MYd1vvXAGLmp8ByztQ@mail.gmail.com>
To: Christer Holmberg <christer.holmberg@ericsson.com>
Content-Type: multipart/alternative; boundary="047d7b67897c87fcf004d6be0c67"
X-Gm-Message-State: ALoCoQl1mTIplh8mnGljOBgx966wiLEfMkLuRNGXW2M/nzkCw89CqE7+9qGTZWAbaDrmC83tNxGvTWEXpMAf0qw0SvmvjS9i0zyLqGIbwJKtkSTO4uX1EEZ0rwT0oUy6ppQmWoREbxS4fuP+aZHILh6tMzeglln390/wKz9Sp0kMvqYbe/NfSoNlVVA1Hsw5exlvoycyKRh4
Cc: "rtcweb@ietf.org" <rtcweb@ietf.org>
Subject: Re: [rtcweb] JSEP-03: O/A state machine and trickle ICE with forking
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: Thu, 28 Feb 2013 01:20:09 -0000

On Wed, Feb 27, 2013 at 12:23 PM, Christer Holmberg <
christer.holmberg@ericsson.com> wrote:

>
> Hi,
>
> A could of questions on jsep-03, related to the O/A state machine, and the
> usage of trickle ICE with forking:
>
>
> Q_OA_1: As I have commented earlier, the state machine does not support
> setting of remote offer when a remote pranswer has been set. A JS SIP app
> may e.g. receive an SDP answer in a reliable 18x response, call
> setPranswer, and then receive an UPDATE on the same leg with a new offer.
>

Section 3.5.2, paragraph 2, attempts to provide a workaround for this
issue.

>
>
> Q_OA_2: The text in section 4.2.3 says:
>
>    "A description used as a "pranswer" may be applied as a response to an
> "offer", or an update to a previously sent "answer"."
>
> I don't understand the "update to a previously sent answer" part. As the
> previously sent "answer" has freed any resources that are no longer needed,
> is a subsequent "preanswer" supposed to un-free those? Also, the state
> machine doesn't seem to support it, and there is text saying that once
> "answer" has been set, no more "answer"/"pranswer" can be set for that O/A
> transaction.
>

This should have said "previously sent "pranswer"", like the paragraph that
follows it.

>
>
> Q_TI_1:
>
> Assume the JS APP receives an SDP answer from remote entity A, and
> provides it to the browser as a pranswer. Then the JS APP receives an SDP
> answer from remote entity B, and provides it to the browser as a pranswer.
>
> Then, the JS APP receives trickle ICE candidates from both entities A and
> B. What will happen to the trickle ICE candidates from remote entity A? The
> same question applies if the browser receives peer reflexive candidates
> from A.
>

> The draft says that trickle ICE candidates will be provided to the ICE
> Agent, that will then perform connectivity checks etc. But, does that mean
> that the ICE Agent will perform connectivity checks with both A and B.
>
> This could of course be handled by always creating separate
> PeerConnections (and hence separate ICE agents) for A and B, even in the
> case of serial forking.
>
> But, in any case I think the draft also needs to describe the ICE impacts
> of forking, because currently I don't think there is any text.
>

Thanks for pointing this out. I discussed this at the IETF 83.5 interim,
but forgot to put this into the draft. The answer is that when B's pranswer
is applied, and the received ICE credentials are different than the
previous answer (as they would be in this case), the existing candidates
are discarded.


>
> Regards,
>
> Christer
> _______________________________________________
> rtcweb mailing list
> rtcweb@ietf.org
> https://www.ietf.org/mailman/listinfo/rtcweb
>