Re: [sipcore] Last Call: <draft-ietf-sipcore-status-unwanted-04.txt> (A SIP Response Code for Unwanted Calls) to Proposed Standard

Alan Johnston <alan.b.johnston@gmail.com> Tue, 21 March 2017 17:05 UTC

Return-Path: <alan.b.johnston@gmail.com>
X-Original-To: sipcore@ietfa.amsl.com
Delivered-To: sipcore@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 589CF129BE8; Tue, 21 Mar 2017 10:05:56 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.998
X-Spam-Level:
X-Spam-Status: No, score=-1.998 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.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 K7BVY5XW_2hY; Tue, 21 Mar 2017 10:05:53 -0700 (PDT)
Received: from mail-wr0-x22b.google.com (mail-wr0-x22b.google.com [IPv6:2a00:1450:400c:c0c::22b]) (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 35009129BEE; Tue, 21 Mar 2017 10:05:52 -0700 (PDT)
Received: by mail-wr0-x22b.google.com with SMTP id l37so116142083wrc.1; Tue, 21 Mar 2017 10:05:52 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=Ub7QC53Wt5L8CoDE2nbSKHCRs/uUl26anHfKfRX2dd4=; b=dyj10meKR/92v7Lgi9w/NnlzkoftL0bhfXyfpoGGuCTbLN8Lh1io7cZ3HlL3vwhDvO JquOoRRFsFSa6OYPut1UwNXp3tHsCKKWjZ2lWDk2hEt5s0T7Tt6wokeRWhffUj13tdv2 SCYk0FOGnfJjd7IpEBX/pcmdQ2Ca6PSBIfj0lgr1QJlCqDKC+Gt5Z/4EX6IqgkkeYNJA jm3S0YvbzQgwOhzps1w3AJmPAKHlgbKBrEEWpYALRJUM2gzUc/7PnTqcYUl0KCm9cxPc IxsmSIhY4SDQRF51n1p0nk5S3cBNaAJROlPA/T3JSKUbSz6FynOU2MePFDj40fHMbe2X taZg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=Ub7QC53Wt5L8CoDE2nbSKHCRs/uUl26anHfKfRX2dd4=; b=B4lqHxg2imYFWHXmaIL7t1W3nsxx8oJx/gKD02g06pP8fbC5qqSiwF8IjxitM0Rn9/ DF8cLQBnMdFWWBh9HN7sUEEj9N9UJTNmLcUzJQniT4XznqHoz/cxEIc0hcXBVIVAlGZW LJ9sUOmtrA7VNIJrMT5BkMsAdbwkyHfeSMJY9U/toFWBSIhtrxNppyuEOJFKOHspMIA/ McFDuEIftpHvpjFFF65QzjMhOYDt97mIPZguwSUJlaq4APwtsNr3XgWVvDxgbNXCyynh lcd+jBAm/79zB0LGBklLsykt4EQPQi2QootW8TpLcl8TlQHqMhlayqLbcOYvSB5nKtY5 W4iA==
X-Gm-Message-State: AFeK/H2dvkr43rHqbdwlGQ1C/5z2Kq8cQ8+9Br+SlwvqcikGeRaK+I/XdeW0iPHbKlCz7ClN1PtO4YyWtZbNZg==
X-Received: by 10.223.153.168 with SMTP id y37mr30756346wrb.193.1490115950608; Tue, 21 Mar 2017 10:05:50 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.177.146 with HTTP; Tue, 21 Mar 2017 10:05:49 -0700 (PDT)
In-Reply-To: <8443007A-60F0-4AB6-80EC-DD20368D61EA@qti.qualcomm.com>
References: <148893258669.17675.7013326933036466908.idtracker@ietfa.amsl.com> <E74825F1-B661-4A8C-9B96-CC970AEA0E56@qti.qualcomm.com> <BY1PR09MB0631F94D0B74E498ECCF3A4DEA3D0@BY1PR09MB0631.namprd09.prod.outlook.com> <8443007A-60F0-4AB6-80EC-DD20368D61EA@qti.qualcomm.com>
From: Alan Johnston <alan.b.johnston@gmail.com>
Date: Tue, 21 Mar 2017 10:05:49 -0700
Message-ID: <CAKhHsXHDoDnO_NBOpMsyKxfY9-oKqnjE9z9SgvXnpmOTJPfDpQ@mail.gmail.com>
To: Pete Resnick <presnick@qti.qualcomm.com>
Cc: Henning Schulzrinne <Henning.Schulzrinne@fcc.gov>, "sipcore@ietf.org" <sipcore@ietf.org>, "ietf@ietf.org" <ietf@ietf.org>, "draft-ietf-sipcore-status-unwanted@ietf.org" <draft-ietf-sipcore-status-unwanted@ietf.org>
Content-Type: multipart/alternative; boundary="f403045f546ee907b2054b40a767"
Archived-At: <https://mailarchive.ietf.org/arch/msg/sipcore/lw7f6gSuf22T-1H3_xCLpRlORkM>
Subject: Re: [sipcore] Last Call: <draft-ietf-sipcore-status-unwanted-04.txt> (A SIP Response Code for Unwanted Calls) to Proposed Standard
X-BeenThere: sipcore@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: SIP Core Working Group <sipcore.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/sipcore>, <mailto:sipcore-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/sipcore/>
List-Post: <mailto:sipcore@ietf.org>
List-Help: <mailto:sipcore-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sipcore>, <mailto:sipcore-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 21 Mar 2017 17:05:56 -0000

Pete,

Joining this conversation late - apologies if it has already been discussed.

If you are proposing using a SIP response code  603 and with a header field
Decline-Type: spam, the problem with this is that in SIP, failure responses
(non-2xx) are delivered hop-by-hop and not end-to-end.  This means that
although the first hop (proxy) will get the Decline-Type:spam header field,
any future hops will not.  Instead, they will just get the 603.

A different response code such as 666 will be conveyed end-to-end, so every
proxy and the calling UA will get the semantics.

- Alan -

On Tue, Mar 21, 2017 at 9:51 AM, Pete Resnick <presnick@qti.qualcomm.com>
wrote:

> Just replying to the points in your message (trimming as I go along):
>
> On 21 Mar 2017, at 11:17, Henning Schulzrinne wrote:
>
> My take of the discussion was that a simple mechanism that reflects
>> plausible and likely UI approaches was preferable to a more complex
>> mechanism.
>>
>
> First, there is nothing complex about adding a header that says,
> "Decline-Type: spam" to 603. It is extremely simple, accomplishes exactly
> the same result, reflects the one envisioned plausible and likely UI, and
> has the added advantage of extensibility.
>
> Nothing prevents adding information to the 'unwanted' status code in the
>> future, should there be a need. As you indicate, the Call-Info labeling may
>> well inform such an effort.
>>
>
> The problem there is that you then will have two different ways of
> expressing "spam", adding yet more ambiguity. It means that the implementer
> has to know whether they're talking to a 666 implementation that does or
> does not know about the additional parameter to understand what the
> behavior will be. We've constantly faced this problem in IMAP over the
> years and it's made for horrible implementations.
>
> Better to do the simple thing first and not end up with two incompatible
> ways to do the same thing in the future.
>
> Yes, the idea was to model the (apparently near-universal) notions of the
>> email spam button.
>>
>
> Simply achievable with 603 and "Decline-Type: spam". The only additional
> complexity is to create the IANA registry for future decline types. I'm
> only suggesting this document defining the one right now.
>
> The goal was never to create a full-fledged API for rejecting classes of
>> calls or otherwise controlling the behavior of voice spam filters.
>>
>
> Nor am I proposing such an API. Sure, pieces of this (and Call-Info
> labeling) might be useful for such a thing later, but I have no interest in
> such a thing now.
>
> In practice, users will only be willing to spend a limited amount of time
>> on feedback for unwanted calls.
>>
>
> Again, the mechanism I propose does not add to that limited time. It
> functions, in that scenario, exactly like 666. The difference is only in
> extensibility (and avoids the potential pitfalls I mentioned earlier).
>
> Adding parameters to existing status codes can be done, but that seems
>> more a matter of design taste.
>>
>
> As I said quite clearly, it's not a design matter. Using a separate status
> code to mean "decline, with additional semantics" has side effects, because
> you already have a status code for decline. Please re-read my explanation.
>
> After all, we could then dispense with all specific codes and just use
>> 100, 200, 400, 500 and 600, each with headers attached.
>>
>
> No, that absolutely does not follow. A layered approach of status codes
> for broader semantic values and headers for specialized processing works
> incredibly well. The problem arises when you introduce a status code that
> does not give the basic processing engine enough information to go on.
>
> What you want in this case is to have the default behavior be "decline",
> as per the status code, and then have some side processing to figure out
> whether to deposit information into a spam analysis engine, or hand it off
> to some other process that does different sorts of things, based on the
> additional semantic information in the header. That's a good division of
> labor.
>
> I don't see the problem with a new status code - we routinely add them and
>> the mechanism of handling unknown ones are quite clear.
>>
>
> Please see my earlier comments on this particular status code: It
> increases semantic ambiguity, it increases the possibility for data loss,
> and it limits future extensibility.
>
> Again, it's not clear that you've fully understood and considered what I
> wrote.
>
> pr
> --
> Pete Resnick <http://www.qualcomm.com/~presnick/>
> Qualcomm Technologies, Inc. - +1 (858)651-4478
>
> _______________________________________________
> sipcore mailing list
> sipcore@ietf.org
> https://www.ietf.org/mailman/listinfo/sipcore
>