[MMUSIC] ICE and the "unexpected answer" problem

"Stach, Thomas" <thomas.stach@unify.com> Wed, 23 July 2014 12:00 UTC

Return-Path: <thomas.stach@unify.com>
X-Original-To: mmusic@ietfa.amsl.com
Delivered-To: mmusic@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D53101A0ABC for <mmusic@ietfa.amsl.com>; Wed, 23 Jul 2014 05:00:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RP_MATCHES_RCVD=-0.001] autolearn=ham
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 Pe6rqi_2zZnL for <mmusic@ietfa.amsl.com>; Wed, 23 Jul 2014 05:00:07 -0700 (PDT)
Received: from mx12.unify.com (mx12.unify.com [62.134.46.10]) by ietfa.amsl.com (Postfix) with ESMTP id 9948E1A0A9F for <mmusic@ietf.org>; Wed, 23 Jul 2014 05:00:06 -0700 (PDT)
Received: from MCHP02HTC.global-ad.net (unknown [172.29.42.235]) by mx12.unify.com (Server) with ESMTP id 21CAE23F069A; Wed, 23 Jul 2014 14:00:05 +0200 (CEST)
Received: from MCHP04MSX.global-ad.net ([169.254.1.120]) by MCHP02HTC.global-ad.net ([172.29.42.235]) with mapi id 14.03.0195.001; Wed, 23 Jul 2014 14:00:04 +0200
From: "Stach, Thomas" <thomas.stach@unify.com>
To: MMUSIC <mmusic@ietf.org>
Thread-Topic: ICE and the "unexpected answer" problem
Thread-Index: Ac+mbaDUMIq2nv4JQ7KZBsyANFFFPg==
Date: Wed, 23 Jul 2014 12:00:04 +0000
Message-ID: <F81CEE99482EFE438DAE2A652361EE1217AD2CB4@MCHP04MSX.global-ad.net>
Accept-Language: de-AT, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [172.29.42.225]
Content-Type: multipart/alternative; boundary="_000_F81CEE99482EFE438DAE2A652361EE1217AD2CB4MCHP04MSXglobal_"
MIME-Version: 1.0
Archived-At: http://mailarchive.ietf.org/arch/msg/mmusic/HXVMnWmaBZTNoQF-fmN_wqlA8dY
Cc: Ari Keränen <ari.keranen@ericsson.com>
Subject: [MMUSIC] ICE and the "unexpected answer" problem
X-BeenThere: mmusic@ietf.org
X-Mailman-Version: 2.1.15
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: <http://www.ietf.org/mail-archive/web/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: Wed, 23 Jul 2014 12:00:11 -0000

ICE experts,

we came across the following situation that has some relation to ICE restart procedures.

Consider that A calls B via a B2BUA. Both A and B support ICE and have successfully finished ICE procedures though the B2BUA is ICE-unaware.
Now after a while either A or B sends out a new offer to put the other party on hold (a=inactive) without indicating an ICE restart.
It includes the in-use candidates and the remote-candidates as required by section 9 of RFC5245 and expects to get the remote-candidates reflected in the answer.

However, the B2BUA in the signaling path introduces via some 3PCC means a media server that provides MoH to the Held UA.
On the call-leg towards the Holding UA, the B2BUA sends back some dummy answer that fulfills RFC3264 requirements (e.g. includes a=inactive) but does not include the expected remote-candidates.
The Holding UA was unaware of the B2BUA's interference, but now gets an "unexpected answer" to its hold offer.

Of course there could al                so exist other similar situations where the peer changes mid-call and the offerer receives some "unexpected" answer. If we take RFC3264 into consideration, an offerer would need to be prepared to receive such an "unexpected" answer.
But with respect to ICE procedures there is no guidance what to do next, although http://tools.ietf.org/html/rfc5245#section-9.1.1.1 talks already about Hold and ICE restarts.
However, it does not cover the above situation.
Would it be justified to include some clarification e.g.  into rfc5245bis or draft-ietf-mmusic-ice-sip-sdp that something like the above could happen and even give some suggestions when/how to perform ICE restart?

Such suggestion could look roughly as follows:
The UA that got the "unexpected answer" would have to do an ICE restart in order to get things straight again once it sends out its next offer.
In the above situation It would be sufficient when the Holding UA performs the ICE restart once it reconnects to the Held UA,
i.e. it would not be necessary to do the ICE restart immediately although in other situations that might be justified.
In yet other situations there might even be an ICE restart performed from the peer, that sent the "unexpected answer".

Any thoughts/comments?
If people agree I would also be happy to contribute corresponding text.

Regards
Thomas