Re: [Ice] ICE PAC: When to start the timer waiting for possible peer reflexive candidates? - discussion restart
Peter Thatcher <pthatcher@google.com> Tue, 02 July 2019 00:56 UTC
Return-Path: <pthatcher@google.com>
X-Original-To: ice@ietfa.amsl.com
Delivered-To: ice@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B521A1200CE for <ice@ietfa.amsl.com>; Mon, 1 Jul 2019 17:56:57 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -17.499
X-Spam-Level:
X-Spam-Status: No, score=-17.499 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, ENV_AND_HDR_SPF_MATCH=-0.5, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, USER_IN_DEF_DKIM_WL=-7.5, USER_IN_DEF_SPF_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=google.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 SPEDQ786ycTZ for <ice@ietfa.amsl.com>; Mon, 1 Jul 2019 17:56:53 -0700 (PDT)
Received: from mail-vs1-xe2c.google.com (mail-vs1-xe2c.google.com [IPv6:2607:f8b0:4864:20::e2c]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1B13E12009C for <ice@ietf.org>; Mon, 1 Jul 2019 17:56:53 -0700 (PDT)
Received: by mail-vs1-xe2c.google.com with SMTP id r3so2292570vsr.13 for <ice@ietf.org>; Mon, 01 Jul 2019 17:56:53 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=6dJLJNoJ0Onuyv+JPUy6RPgQOLlZGOp9M1c9gHXNJq0=; b=NeoDpo/jt68v/JzM4/WiAcQrVsr3rTKe/VEWXxBn18z0RlG1NSJvj7lGOcaGAnjjD9 fh6YU/wXx6CE/l2KhkDp3KTxKbmdS/pGYVl0dcX3mqA9dtZe5/vPWmDAXnhtu+pMD6MD tUA5l/4fSTi5rFBAfoGjdte6WpcDIUPe9nhrv+FOJEiDtRLZthjhMQz4JteBwfNLB4IJ Eg26Kxp2dQnqJPEovXb3n+TBR9r7KGy9eZ8Uk+rGNaPYUTOc3S9CHWziHjRTcswVzbs7 bX9+0DLMbZ9kviAZOn/AiomqPux6VcwA1Tx55YjgtoElZr/BHw+bEfPdQJdDp3cc+D1K Whiw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=6dJLJNoJ0Onuyv+JPUy6RPgQOLlZGOp9M1c9gHXNJq0=; b=JZ6VLCBrIJtSbEkf3DeAep99/l2EPyJH85a4qWBMnto+JxOEC16M+9FlnbAEhNQ7YM rcR5RWhYdEHKW1G+SuiyXGh2bdWnN9hZj6NEpMVNKXNuqruzdzJC6cQjjreFJrqEZCyn 5QWHGjuZfP9B3XS6eBtLdwiK3+UhpVBQE1QUSHkfdReFwv1rt3NTZYrgkGJBHnMwNJiq j/HQFj/aMvpukeN6G/p91yuhyr5MMPoOeUEpAt66K6BFYoJIdW0v/xxPTMl9MejwiVcW pPOZkWDTdJBwhvz3SCeKLreNjqDWf5nSe78uc5O6wnh2QEy4pwEMIK0Ld7qF60PGZXDH d4hw==
X-Gm-Message-State: APjAAAVF2jYI4dYco+C3LLcuJdzpKU/oNcfbIGiOl1j2WJcOA9+FSt1A iZ2MrwoHUzCxTyzzuiJjmB/qoUrN5Kr9WVFWrYHiXQ==
X-Google-Smtp-Source: APXvYqz9bxInr48c1W5TErJeJuLVWH6YxLGabHP9BlinFkJ4ouFWP2Nv4Ha3JNAuvx3a2tUZeW7mjTPue9LEt1WGP2s=
X-Received: by 2002:a67:d48b:: with SMTP id g11mr16000149vsj.63.1562029011699; Mon, 01 Jul 2019 17:56:51 -0700 (PDT)
MIME-Version: 1.0
References: <AFCE8799-8865-454F-8478-81CE11E9B454@ericsson.com> <1aa5aac7-af59-4e3b-8651-18f6e6431a2d@alvestrand.no> <66678ADA-7C02-4D9D-B9D2-308873BC0125@ericsson.com> <7a829bc0-d066-a3be-b7be-9b39ce799821@alvestrand.no>
In-Reply-To: <7a829bc0-d066-a3be-b7be-9b39ce799821@alvestrand.no>
From: Peter Thatcher <pthatcher@google.com>
Date: Mon, 01 Jul 2019 17:56:15 -0700
Message-ID: <CAJrXDUHZJURLvzBYX2MGcMsrFgyOagW5=s1OSXwDmTZpsruD0A@mail.gmail.com>
To: Harald Alvestrand <harald@alvestrand.no>
Cc: Christer Holmberg <christer.holmberg@ericsson.com>, Justin Uberti <juberti@google.com>, Nils Ohlmeier <nohlmeier@mozilla.com>, Roman Shpount <roman@telurix.com>, "ice@ietf.org" <ice@ietf.org>
Content-Type: multipart/alternative; boundary="0000000000005f54d3058ca8387b"
Archived-At: <https://mailarchive.ietf.org/arch/msg/ice/ZQS2fuiaLoHri7XHj5dppYSIvhM>
Subject: Re: [Ice] ICE PAC: When to start the timer waiting for possible peer reflexive candidates? - discussion restart
X-BeenThere: ice@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Interactive Connectivity Establishment \(ICE\)" <ice.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ice>, <mailto:ice-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ice/>
List-Post: <mailto:ice@ietf.org>
List-Help: <mailto:ice-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ice>, <mailto:ice-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 02 Jul 2019 00:56:58 -0000
I agree. The options you present seem reasonable and I think we should move ahead with them. On Mon, Jun 24, 2019 at 6:20 AM Harald Alvestrand <harald@alvestrand.no> wrote: > On 6/24/19 12:06 PM, Christer Holmberg wrote: > > Hi, > > > > Go for what? 😊 > > I was noting the month of silence, and thinking that I should encoruage a > decision to be taken - "analysis paralysis" is not a good thing! > > > > Regarding 1), eventhough it’s not my personal preference to start the > timer when the first offer/answer is sent, I could live with it. > > > It's a well defined time, and is observable by the entity that has to act > when the timer expires, so I think it is much better than "undefined". > > That's my requirement :-) > > > > > Regarding 2), however, I would really like some input on whether the > duration should be independent of the number of streams, components etc. > > I think having a single number is preferable to having a complex number > that could change over time (for instance, if we don't reset the timer when > adding streams, then adding or removing streams after the timer started > will lead to hard-to-define behavior). > > > But my main concern is that we get this stuff done and get the basic timer > mechanism into interoperable code - having a spec to implement from now is > better than having a spec that has had slightly more discussion, but no > fundamental changes, 6 months from now. > > > > > Regards, > > > > Christer > > > > *From: *Harald Alvestrand <harald@alvestrand.no> <harald@alvestrand.no> > *Date: *Sunday, 23 June 2019 at 9.08 > *To: *Christer Holmberg <christer.holmberg@ericsson.com> > <christer.holmberg@ericsson.com>, Justin Uberti <juberti@google.com> > <juberti@google.com>, Nils Ohlmeier <nohlmeier@mozilla.com> > <nohlmeier@mozilla.com> > *Cc: *Roman Shpount <roman@telurix.com> <roman@telurix.com>, > "ice@ietf.org" <ice@ietf.org> <ice@ietf.org> <ice@ietf.org> > *Subject: *Re: [Ice] ICE PAC: When to start the timer waiting for > possible peer reflexive candidates? - discussion restart > > > > On 5/28/19 1:54 PM, Christer Holmberg wrote: > > Hi, > > > > We need to move forward with this. > > > > There are two main questions at the moment: > > > > 1. When does an endpoint start the timer ("minimum-time-to-run-ICE" > timer, based on previous discussions)? > 2. What is the duration of the timer? > > > > Regarding 1), my understanding is that people suggest alternative c), > which starts the timer when an endpoint has sent (in an offer or answer) at > least one local candidate (or EOC). > > > > > > Regarding 2), it has been suggested that the duration would be the same as > the max duration of a connectivity check transaction. Do we think that is > enough, no matter how many media streams and components are used? > > > > Go for it. It is much better than having nothing. > > > > > > Regards, > > > > Christer > > > > > > > > > > > > > > > > > > > > *From: *Ice <ice-bounces@ietf.org> <ice-bounces@ietf.org> on behalf of > Christer Holmberg <christer.holmberg@ericsson.com> > <christer.holmberg@ericsson.com> > *Date: *Friday, 3 May 2019 at 15.02 > *To: *Justin Uberti <juberti@google.com> <juberti@google.com>, Nils > Ohlmeier <nohlmeier@mozilla.com> <nohlmeier@mozilla.com> > *Cc: *Roman Shpount <roman@telurix.com> <roman@telurix.com>, > "ice@ietf.org" <ice@ietf.org> <ice@ietf.org> <ice@ietf.org> > *Subject: *Re: [Ice] ICE PAC: When to start the timer waiting for > possible peer reflexive candidates? > > > > Hi, > > > > I don’t think there will be any interoperability issues. At the end of the > day PAC is only about how long to wait for candidates, so the worse thing > that can happen is than an agent declares ICE failure too early. > > > > And, no matter whether an agent knows that the peer supports PAC or not, > it should aim at sending it’s candidates to its peer as soon as possible, > depending on whatever local policies. The agent should not delay sending > candidates just because it assumes that the peer will anyway wait for them. > > > > Regards, > > > > Christer > > > > *From: *Justin Uberti <juberti@google.com> <juberti@google.com> > *Date: *Thursday, 2 May 2019 at 22.28 > *To: *Nils Ohlmeier <nohlmeier@mozilla.com> <nohlmeier@mozilla.com> > *Cc: *Christer Holmberg <christer.holmberg@ericsson.com> > <christer.holmberg@ericsson.com>, Roman Shpount <roman@telurix.com> > <roman@telurix.com>, "ice@ietf.org" <ice@ietf.org> <ice@ietf.org> > <ice@ietf.org> > *Subject: *Re: [Ice] ICE PAC: When to start the timer waiting for > possible peer reflexive candidates? > > > > > > > > On Thu, May 2, 2019 at 12:22 PM Nils Ohlmeier <nohlmeier@mozilla.com> > wrote: > > > > > > > > On May 2, 2019, at 12:13, Justin Uberti <juberti@google.com> wrote: > > > > > > > > On Thu, May 2, 2019 at 10:07 AM Nils Ohlmeier <nohlmeier@mozilla.com> > wrote: > > > >> I do think Nils' point is important though, i.e., if we have a bad > server it will take a very long time to decide on 'last set of candidates', > >> which is probably not helpful. As such I think the potential positions > we can take are: > >> a) Start the timer as soon as we have an answer, regardless of any > candidates. > >> b) a) + receipt of at least one remote candidate (or remote EOC). (This > is Nils' suggestion). > >> c) a) + sending at least one local candidate (or local EOC). > > As we are mostly concerned about the remote side: 1) not providing us with > candidates, or 2) providing us with unusable candidates or 3) providing us > with candidates really late I don’t see how option c) would help in any of > these scenarios. > From my point of view we should choose either a) or b). > > > > c) is just a clarification of a), in that you can't expect to receive > prflx candidates until you've at least provided the other side with a > candidate, so that may be the right time for the timer to start. I don't > feel super strongly about this though. > > > > Ok. I hadn’t looked at it from that angle. So c) being a stronger a) I > guess it would be okay. > > > > I guess my only concern is that in Firefox we stopped doing a) because it > caused to many problems. With that in mind would it cause interop problems > if we leave up to the implementor to choose to implement either b) or c)? > > > > I'd be fine with that, but I'd want to describe what to watch out for. Can > you explain a bit more? > > > > > > > >> b) has a problem if the remote side doesn't send any candidates, which > we want to explicitly allow. > > > > True. > > Just to make sure we are all on the same page: b) is only a problem in the > scenario where the remote side doesn’t send any candidates but also does > not send EOC. > > > The EOC should allow agents which explicitly don’t want to provide > candidate to get the timer started soon. > I think that leaves us with scenarios where the remote doesn’t provide > host candidates, and it’s reflexive or relay candidates take for ever > because of slow servers. > > > > Correct, but we can't control which endpoints will send us an EOC or not. > So that will always be a possibility. > > > > Fair enough. > > > > > > > >> I tend to lean towards a) as the simplest option. > > > > Keep in mind that RFC 8445 is generic, so we need to to define what we > mean by "answer". I guess it means some kind of indication that makes the > agent assume that the remote peer has been contacted. In ice-sip-sdp we can > then map that to an SDP answer. > > Good point. We basically treat the SDP answer here to be something like an > beginning of ICE, because we don’t have an explicit signal for that. I > think in SDP based worlds there is no need for an extra signal like that. > Not sure if other use cases of ICE would benefit from an explicit begin > signal. > > > > The answer in some ways is an explicit begin signal, because it contains > the username/password information needed to start ICE checks. > > > > Yeah I didn’t see your reply before hitting send on mine. Using the > availability sounds like a good idea as the minimum gating function/signal. > > > > Best > > Nils > > > > > > _______________________________________________ > > Ice mailing list > > Ice@ietf.org > > https://www.ietf.org/mailman/listinfo/ice > > > > -- > > Surveillance is pervasive. Go Dark. > > > -- > Surveillance is pervasive. Go Dark. > > _______________________________________________ > Ice mailing list > Ice@ietf.org > https://www.ietf.org/mailman/listinfo/ice >
- Re: [Ice] ICE PAC: When to start the timer waitin… Christer Holmberg
- Re: [Ice] ICE PAC: When to start the timer waitin… Harald Alvestrand
- Re: [Ice] ICE PAC: When to start the timer waitin… Christer Holmberg
- Re: [Ice] ICE PAC: When to start the timer waitin… Harald Alvestrand
- Re: [Ice] ICE PAC: When to start the timer waitin… Peter Thatcher
- Re: [Ice] ICE PAC: When to start the timer waitin… Christer Holmberg
- Re: [Ice] ICE PAC: When to start the timer waitin… Roman Shpount
- Re: [Ice] ICE PAC: When to start the timer waitin… Justin Uberti
- Re: [Ice] ICE PAC: When to start the timer waitin… Harald Alvestrand
- Re: [Ice] ICE PAC: When to start the timer waitin… Christer Holmberg
- Re: [Ice] ICE PAC: When to start the timer waitin… Christer Holmberg
- Re: [Ice] ICE PAC: When to start the timer waitin… Roman Shpount
- Re: [Ice] ICE PAC: When to start the timer waitin… Christer Holmberg
- Re: [Ice] ICE PAC: When to start the timer waitin… Harald Alvestrand
- Re: [Ice] ICE PAC: When to start the timer waitin… Christer Holmberg
- Re: [Ice] ICE PAC: When to start the timer waitin… Justin Uberti
- Re: [Ice] ICE PAC: When to start the timer waitin… Justin Uberti
- Re: [Ice] ICE PAC: When to start the timer waitin… Roman Shpount
- Re: [Ice] ICE PAC: When to start the timer waitin… Peter Thatcher
- Re: [Ice] ICE PAC: When to start the timer waitin… Nils Ohlmeier
- Re: [Ice] ICE PAC: When to start the timer waitin… Justin Uberti
- Re: [Ice] ICE PAC: When to start the timer waitin… Christer Holmberg
- Re: [Ice] ICE PAC: When to start the timer waitin… Justin Uberti
- Re: [Ice] ICE PAC: When to start the timer waitin… Christer Holmberg