Re: [imap5] Feature set? - was Re: Designing a new replacement protocol for IMAP

Bron Gondwana <brong@fastmail.fm> Sun, 19 February 2012 22:08 UTC

Return-Path: <brong@fastmail.fm>
X-Original-To: imap5@ietfa.amsl.com
Delivered-To: imap5@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 639D321F8516 for <imap5@ietfa.amsl.com>; Sun, 19 Feb 2012 14:08:39 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.395
X-Spam-Level:
X-Spam-Status: No, score=-3.395 tagged_above=-999 required=5 tests=[AWL=-0.111, BAYES_00=-2.599, RCVD_IN_DNSWL_LOW=-1, SARE_MILLIONSOF=0.315]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id D-RusDMnGLYi for <imap5@ietfa.amsl.com>; Sun, 19 Feb 2012 14:08:38 -0800 (PST)
Received: from out5-smtp.messagingengine.com (out5-smtp.messagingengine.com [66.111.4.29]) by ietfa.amsl.com (Postfix) with ESMTP id 4BA5B21F84F5 for <imap5@ietf.org>; Sun, 19 Feb 2012 14:08:38 -0800 (PST)
Received: from compute1.internal (compute1.nyi.mail.srv.osa [10.202.2.41]) by gateway1.nyi.mail.srv.osa (Postfix) with ESMTP id D41D321342 for <imap5@ietf.org>; Sun, 19 Feb 2012 17:08:36 -0500 (EST)
Received: from frontend1.nyi.mail.srv.osa ([10.202.2.160]) by compute1.internal (MEProxy); Sun, 19 Feb 2012 17:08:36 -0500
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=fastmail.fm; h= date:from:to:cc:subject:message-id:references:mime-version :content-type:in-reply-to; s=mesmtp; bh=xBxkaA7RiIfHHQBxzp+qM0+q r/o=; b=KxTaXkBJZ4kOE/410bJ/cduX3IcfZn1pzVZfs9+t2Q0HwEjoRBfoRCWD IHImGb2QGj0oPIXL/281iFLMWL3S7X9D74L5RXX+PM49diQAACxTKNgd0eHXh5a9 ZzRu/DUk8rtb6ypG6pqiZqLoyhQhQ2cmV1Rg8Jkc7VsILPNbWp4=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d= messagingengine.com; h=date:from:to:cc:subject:message-id :references:mime-version:content-type:in-reply-to; s=smtpout; bh=xBxkaA7RiIfHHQBxzp+qM0+qr/o=; b=upUW4Si04zj0ua+lIZ+zNw86PR3V MSxNyHv3PC0eXjwVnqbmuwQFuXDHB3uAaZg53Y7rcEmrR0ho/8zyKvIPXXMXFesa TBVFrXr5NmsS9JRVxqWZu6rAhko37HTAsG73CBalknwmvf2M5VGwEiwkWyR9qNdV Mu2L2iBH+ZOmO0Q=
X-Sasl-enc: /pKA8q9NSCgSOoaHFaBPcb837C3Um+/IaLSOpmvWomPz 1329689316
Received: from localhost (99.249.9.46.customer.cdi.no [46.9.249.99]) by mail.messagingengine.com (Postfix) with ESMTPSA id 67E0E8E0109; Sun, 19 Feb 2012 17:08:36 -0500 (EST)
Received: by localhost (Postfix, from userid 1000) id 0B871316B81; Sun, 19 Feb 2012 23:08:35 +0100 (CET)
Date: Sun, 19 Feb 2012 23:08:35 +0100
From: Bron Gondwana <brong@fastmail.fm>
To: Adrien de Croy <adrien@qbik.com>
Message-ID: <20120219220835.GB12549@launde.brong.net>
References: <1329394296.953.140661037317197@webmail.messagingengine.com> <4F3CFD35.10501@qbik.com> <alpine.LSU.2.00.1202161626400.30682@hermes-2.csi.cam.ac.uk> <4F3D6E57.8010301@qbik.com> <alpine.LSU.2.00.1202171127330.30682@hermes-2.csi.cam.ac.uk> <4F3F4F8F.3040601@qbik.com> <1329550573.30138.140661038121885@webmail.messagingengine.com> <alpine.LSU.2.00.1202191832430.12769@hermes-2.csi.cam.ac.uk> <20120219192604.GA11323@launde.brong.net> <4F415C07.3040100@qbik.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <4F415C07.3040100@qbik.com>
Organization: brong.net
User-Agent: Mutt/1.5.21 (2010-09-15)
Cc: "Discussion on drastically slimming-down IMAP." <imap5@ietf.org>, Arnt Gulbrandsen <arnt@gulbrandsen.priv.no>
Subject: Re: [imap5] Feature set? - was Re: Designing a new replacement protocol for IMAP
X-BeenThere: imap5@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: "Discussion on drastically slimming-down IMAP." <imap5.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/imap5>, <mailto:imap5-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/imap5>
List-Post: <mailto:imap5@ietf.org>
List-Help: <mailto:imap5-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/imap5>, <mailto:imap5-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 19 Feb 2012 22:08:39 -0000

On Mon, Feb 20, 2012 at 09:31:03AM +1300, Adrien de Croy wrote:
> not everyone is on sendmail
> 
> we're talking about adding 2 parameters, a return path and forward
> path.    Hardly complex.
> 
> this allows us to
> - not have to parse the headers
> - not have to re-write the entire message when stripping bcc

Most MTAs seem to do header rewriting by appending or stripping
parts of the header on the fly.  They don't rewrite the entire
message, they print the headers down the wire, then blat the
body.  That's not expensive unless you're doing it wrong.

> these things are not cheap.  they will affect service capacity.

Seriously?  We do it to millions of emails in Postfix every day
on a single box and the CPU barely breaks a sweat.  What sort of
capacities are you considering serving on a single machine here?
Micro-optimising this... if you can save a single fsync somewhere
you'll get much better optimisation than avoiding a header removal.
Remember you're probably ADDING a header anyway to note the sending
time and user/ip of the sender at the time it happened.

> Why would you incur such penalty simply to avoid transmission of a
> couple of parameters?

Because I don't believe you when you make it out to be a big penalty.
You're not rewriting the header on disk, purely on what gets written
to the wire.

> It's trivially simple for an MUA to supply this information when it
> wants to send the message.

Trivially simple, yes - not so simple to track and repeat.

> There's no reason to assume this information would be lost either.
> It's up to the server how to record such things and make them
> visible.  Whether that's in the sent items folder or something
> associated with the message.

Significantly more complex than a simple keyword.  For a rare case.
Parsing "Resent-To" instead handily covers the entire use-case that
you have raised, with no loss of functionality, and without bloody
raising the edge cases to higher importance than the simple common
case which happens all the time.  Make the easy things EASY and the
hard things possible, not everything equally hard.

> Distinction between envelope and content is a key principle of SMTP.
> One could argue it's also a cause of certain issues, but I don't
> think it should be discarded without some fairly serious thought.

Happy to have serious thought about it, but in this case the initial
envelope should IMHO be part of the content, because you're sending
something out of your "\Sent" box, near enough, and what's there
should be a record of what you sent.

SMTP will still exist for the 0.1% cases.  Resent-To will handily
cover the normal "user operated client" use-case.  This is a method
for "submission by a user operated client", that's all.

Bron ( getting bogged down in side issues, whee )