Re: [Jmap] Submission

Brandon Long <blong@google.com> Thu, 20 April 2017 04:46 UTC

Return-Path: <blong@google.com>
X-Original-To: jmap@ietfa.amsl.com
Delivered-To: jmap@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id CB165127B52 for <jmap@ietfa.amsl.com>; Wed, 19 Apr 2017 21:46:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.701
X-Spam-Level:
X-Spam-Status: No, score=-2.701 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001] 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 WPGu6PCM_1Xp for <jmap@ietfa.amsl.com>; Wed, 19 Apr 2017 21:46:31 -0700 (PDT)
Received: from mail-oi0-x22b.google.com (mail-oi0-x22b.google.com [IPv6:2607:f8b0:4003:c06::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 3C8B212EAF6 for <jmap@ietf.org>; Wed, 19 Apr 2017 21:46:30 -0700 (PDT)
Received: by mail-oi0-x22b.google.com with SMTP id r203so33518887oib.3 for <jmap@ietf.org>; Wed, 19 Apr 2017 21:46:30 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=G1yW3LYmlTvy18CSeOnYR041IxelEa/SC8q6mQAL11I=; b=gVHzwzEEIE8CC2t8lRr+Aedyvdqqa9SV81BIOZq6eyunDa1rRpkpxqiWuyaVX9kSZ9 rysc8sDTezb+RZL839HEh74u4QXs2V8Nu1yO3yumcuzW55LMmK4uJ5FRmGtdgL5fe58m Fupdp53mWotBSJTAN3t+a9fQ+mj7Y+aiKvOsXU6pO3ECfB+szG2BDyvjR+0BeSLL6Oew 6ymM2UNPjFR/WQV0J6/dtdbaKUHjcKdHWJ6YCTM9EZpiZ9HBwqUBeJrnZQXJW2Npgw7Q P/XJgaezUO9Z2x0lRdiz9UO7t1KAF6ZJSICamBTGqV/GKe5FiUeQ34c3cv2QYgL2fXG/ DwmA==
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=G1yW3LYmlTvy18CSeOnYR041IxelEa/SC8q6mQAL11I=; b=dULh/tfGb1ucVVJKE4IqtIHNI3c9tRhzkclmZq9LE8rOdKPr3vyuo2cQtgqaL9B6A+ elmBhmZguLMKvcxQRhgCjBhijypTqYKmjDICZj3UAjknlvT0DI8W/NyxFcoE59BNbioV fsA0wj+5DB/ZbBDA24BP76nSpyXVlvJtXBqqXDgt9/EDg0CvIT7fiDzKtukon6d9dKlO B/ztdo+s0ccq3vXD6i1UeaDO2HNbxVSq95ji91kkS/3IrWO1kho5RMJL7Z+oO+fpVQKy /ifonLTisp/7mvYh/Au+AiV2fGOx9c/KDW//cbopoFGTa4m/D8ud647EJ1AEO73tkbg9 apAQ==
X-Gm-Message-State: AN3rC/6aUb15NllJw74f9iJxrK6U2znKxts58OYFdJR8Ekc2YI6olWWM HziL/CxCR1K+KYF/eDOEL8MqLgfo/OTZ
X-Received: by 10.157.43.56 with SMTP id o53mr896267otb.97.1492663589330; Wed, 19 Apr 2017 21:46:29 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.182.120.72 with HTTP; Wed, 19 Apr 2017 21:46:28 -0700 (PDT)
In-Reply-To: <096E2D4B-D7ED-4439-BB6F-7944892D2ACA@oracle.com>
References: <em27fa7b29-5584-44f3-aa88-086ce734ab59@bodybag> <096E2D4B-D7ED-4439-BB6F-7944892D2ACA@oracle.com>
From: Brandon Long <blong@google.com>
Date: Wed, 19 Apr 2017 21:46:28 -0700
Message-ID: <CABa8R6tRV2-aK-m54FaXAc2v3uoZ1L9uKMzDOdkENKFumF6QYA@mail.gmail.com>
To: Chris Newman <chris.newman@oracle.com>
Cc: "jmap@ietf.org" <jmap@ietf.org>
Content-Type: multipart/alternative; boundary="001a11c0c15e03494c054d91d390"
Archived-At: <https://mailarchive.ietf.org/arch/msg/jmap/RC0vClmKqheT46SYqlkNc0ntbQw>
Subject: Re: [Jmap] Submission
X-BeenThere: jmap@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: JSON Message Access Protocol <jmap.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/jmap>, <mailto:jmap-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/jmap/>
List-Post: <mailto:jmap@ietf.org>
List-Help: <mailto:jmap-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/jmap>, <mailto:jmap-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 20 Apr 2017 04:46:33 -0000

On Wed, Apr 19, 2017 at 12:29 PM, Chris Newman <chris.newman@oracle.com>
wrote:

> The original IMAP designer always opposed adding submission to IMAP as a
> matter of functional separation. While I strongly agree with the need for
> functional specification, it is possible to design a protocol in such a way
> that multiple separable functions are provided in the same protocol. As a
> result I support adding submission to JMAP in a way that preserves
> functional separation.
>
> When deploying a large mail service it's important to keep the submission
> mail queues (which have management/monitoring issues) functionally separate
> from the mail store (which has very different management/monitoring
> issues). If the JMAP design requires a mail queue to be present on the JMAP
> server or present in the mail store, that is an unacceptable protocol
> design error as it hinders the manageability of large deployments.
>
> Furthermore, SMTP submission is a full standard IETF protocol that
> continues to be extended. JMAP should leverage the semantics of the
> existing standard in such a way that it's not necessary to change the JMAP
> specification when a new submission extension that's useful to JMAP is
> added. In addition to giving JMAP clients access to all the useful
> submission extensions like FUTURERELASE, UTF8SMTP, DELIVERBY, etc. This
> will ultimately make the JMAP specification simpler (as it won't have to
> deal with submission extensions directly) and more flexible to deploy.
>

SMTPUTF8 I presume.


> Finally, if JMAP supports submission then I expect a client author will
> want to use the JMAP submission mechanism for all submissions. If JMAP has
> a rigid design where each submission extension requires an additional JMAP
> extension then a high-end client will eventually be forced to implement
> SMTP submission in addition to JMAP submission. And it will be stuck doing
> both (the former for functionality, the latter for ease-of-setup). I don't
> want JMAP clients to be forced down that path.
>

Is there any proof that the majority of clients would bother?  I realize
that's the argument that's always been made about including submission in
IMAP, but is there proof that the majority of clients used by people
implement these?  I mean, SMTPUTF8, sure, should be a requirement for jmap.

What this means is that for JMAP to support submission correctly, it must
> be able to function as an SMTP submission proxy from a semantic viewpoint.
> This creates a number of requirements. The basic requirements are:
>
> 1. It must be possible to query the JMAP server for the set of Submission
> ESMTP extensions semantically equivalent to the SMTP submission EHLO
> response. The JMAP server needs to omit the extensions that aren't relevant
> (e.g., AUTH, STARTTLS, PIPELINING).

2. It must be possible to provide an SMTP envelope for submission that is
> semantically identical to the submission protocol. This needs to support
> MAIL FROM, one or more RCPT TO, and ESMTP parameters to those envelope
> components. There needs to be an algorithmic way to convert from JMAP
> envelope syntax to SMTP Submission envelope syntax.
> 3. It must be possible to get submission errors that are semantically
> identical to those provided by a submission server. Including at least
> 3-digit SMTP code, optionally enhanced SMTP code and human readable text of
> error and potentially one response for mail from, one for each rcpt to and
> one for data/bdat final response.
>

Why?


> So that's the submission functionality JMAP needs to provide if it
> provides submission at all. If you want to also provide a simpler model for
> submission in JMAP, I won't object as long as the full model is mandatory.


Maybe that's the simplest way to avoid the argument.

Brandon