Re: [MMUSIC] ICE and the "unexpected answer" problem

"Stach, Thomas" <thomas.stach@unify.com> Thu, 24 July 2014 15:48 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 9ED971A03D2 for <mmusic@ietfa.amsl.com>; Thu, 24 Jul 2014 08:48:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level:
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, 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 u6okiwtMtuTK for <mmusic@ietfa.amsl.com>; Thu, 24 Jul 2014 08:48:14 -0700 (PDT)
Received: from mx11.unify.com (mx11.unify.com [62.134.46.9]) by ietfa.amsl.com (Postfix) with ESMTP id 9F1781A03D0 for <mmusic@ietf.org>; Thu, 24 Jul 2014 08:48:13 -0700 (PDT)
Received: from MCHP01HTC.global-ad.net (unknown [172.29.42.234]) by mx11.unify.com (Server) with ESMTP id 54EA31EB855F; Thu, 24 Jul 2014 17:48:12 +0200 (CEST)
Received: from MCHP04MSX.global-ad.net ([169.254.1.120]) by MCHP01HTC.global-ad.net ([172.29.42.234]) with mapi id 14.03.0195.001; Thu, 24 Jul 2014 17:48:12 +0200
From: "Stach, Thomas" <thomas.stach@unify.com>
To: Paul Kyzivat <pkyzivat@alum.mit.edu>, "mmusic@ietf.org" <mmusic@ietf.org>
Thread-Topic: [MMUSIC] ICE and the "unexpected answer" problem
Thread-Index: Ac+mbaDUMIq2nv4JQ7KZBsyANFFFPgAcf82AABSSxUA=
Date: Thu, 24 Jul 2014 15:48:10 +0000
Message-ID: <F81CEE99482EFE438DAE2A652361EE1217AD379C@MCHP04MSX.global-ad.net>
References: <F81CEE99482EFE438DAE2A652361EE1217AD2CB4@MCHP04MSX.global-ad.net> <53D07F21.1030807@alum.mit.edu>
In-Reply-To: <53D07F21.1030807@alum.mit.edu>
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: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Archived-At: http://mailarchive.ietf.org/arch/msg/mmusic/_HDG4Qso7e5hqyjTa9yoSLqx7Xs
Subject: Re: [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: Thu, 24 Jul 2014 15:48:18 -0000

Paul,

> -----Original Message-----
> From: mmusic [mailto:mmusic-bounces@ietf.org] On Behalf Of Paul Kyzivat
> Sent: Mittwoch, 23. Juli 2014 23:36
> To: mmusic@ietf.org
> Subject: Re: [MMUSIC] ICE and the "unexpected answer" problem
> 
> Thomas,
> 
> On 7/23/14 8:00 AM, Stach, Thomas wrote:
> > 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.
> 
> Not too unusual.
> 
> > 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.
> 
> Can you provide details of the offers and answers?
> 
> If it is going to provide MoH then presumably it isn't setting the media
> inactive. (Or is it doing MoH on audio and setting video inactive?)
> 
> Note that once the call goes off hold all this will happen again to get
> back to the actual device again.
[TS] I could give details about the settings of direction attribute to a=sendrecv/inactive/sendonly, but that is not the issue I want to clarify.

I want to get clarification for the situation when due to an offer/answer exchange during an active dialog the support for ICE is removed (or added back again). 
In case of an ICE restart section 9.1.1.1 of RFC5245 has some words that mention changes of implementation level.
However, the case, where the implementation level changed outside of an ICE restart, is not covered.
E.g. in this MoH case, the offer was sent with the in-use candidates, but the answer did no longer include ice-ufrag/ice-pwd/candidates.
An implementation could have decided in such a situation to abandon the call or stop ICE for the rest of call. 
I think both would be bad.
It would be better just to do an ICE restart once the next offer is being sent. 
In the MoH case  it would be OK to do that when the call is put off hold again, 
i.e. it wouldn't be necessary to do the restart immediately.
Regards
Thomas


> 
> 	Thanks,
> 	Paul
> 
> > 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
> >
> >
> >
> > _______________________________________________
> > mmusic mailing list
> > mmusic@ietf.org
> > https://www.ietf.org/mailman/listinfo/mmusic
> >
> 
> _______________________________________________
> mmusic mailing list
> mmusic@ietf.org
> https://www.ietf.org/mailman/listinfo/mmusic