[ietf-smtp] Proper definition of the term "email payload".
Viruthagiri Thirumavalavan <giri@dombox.org> Sun, 31 March 2019 17:58 UTC
Return-Path: <giri@dombox.org>
X-Original-To: ietf-smtp@ietfa.amsl.com
Delivered-To: ietf-smtp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 53C201201AC for <ietf-smtp@ietfa.amsl.com>; Sun, 31 Mar 2019 10:58:09 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.99
X-Spam-Level:
X-Spam-Status: No, score=-1.99 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_NONE=-0.0001, SPF_PASS=-0.001, T_MIME_MALF=0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=dombox.org
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 lsncvBAuNB7X for <ietf-smtp@ietfa.amsl.com>; Sun, 31 Mar 2019 10:58:07 -0700 (PDT)
Received: from mail-yb1-xb43.google.com (mail-yb1-xb43.google.com [IPv6:2607:f8b0:4864:20::b43]) (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 DD8B612001B for <ietf-smtp@ietf.org>; Sun, 31 Mar 2019 10:58:06 -0700 (PDT)
Received: by mail-yb1-xb43.google.com with SMTP id g12so469193ybh.7 for <ietf-smtp@ietf.org>; Sun, 31 Mar 2019 10:58:06 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dombox.org; s=default; h=mime-version:from:date:message-id:subject:to; bh=v3Zb9ziiotgojo9zXIXGhEjw0PuH9N/Omknkos8KdUU=; b=lyCwKqyj70MHHfwjFLRHqBunXL+Pk4LqxpqfrF8DVcugjYNgG+1R9uiLPFysnTJOGG Q21F3H9+PY6dqnNlcXJVx5uMjAB4UlN+EvEqofS6LLH3sqMG4/kNdHSHtg9rQEPCMrz8 gbV/pEETNqI2naSTOwGhlelW7lMfgQEFnZG1k10ErNY/E+pUALwqiHBjDPJBGijfCuIf ofACQTf2LfQnepJz74vDfWb+IAoDcdFpb+l/xg8oczXmCha1Y8cdrWCOVkO6ci9qbs57 2Vtnb1R0swrSC4QkEhTWOzKv/pCawpDkcuqihYSKY+e7X7kn+Xpqz3LQrJOc02dij+7h 2CKg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=v3Zb9ziiotgojo9zXIXGhEjw0PuH9N/Omknkos8KdUU=; b=KTrXrUzJ/HlcvBd9tOgvaUpcQkMbJXPxsuPkqBGRcaDaZY3iIEN6ejwn/x3P0NVx3N 1EIl7XZn0EXO2bizUGQ0DfrL6VnE1rGJwSIvAKbmr3j7H0SArq760E97jFsGTIOouohF h+m1wJIws38PiE20kyCs1ieYiDXv2CQRKPn0KvzVD+/c1ffvpOHcF3FdPJP6qrBUJrQo 9tOHmiWf+ONU8m1ng069w/4CFyy5pf+nYtkxWLCUvrqwZwNH87+V6tmquTWGVfzHviCx yUlCQIDzQ4+IJVGLu7H742k8/yUifXJErgL09TUbN2QqxhQr5ADXn3put/FjCYFt+fz2 6IxA==
X-Gm-Message-State: APjAAAWb57sszAmP37MLhhRYRIvPupt72ZR5G0feag3eTGhyay17dpOM neoRerBvo/oclBqMGceO9DKXBqlS0c9lcCAzSn4jri6athQ=
X-Google-Smtp-Source: APXvYqx5NmTJRhKwysoSyKXNa/efifa8vhZ+oC2Zax+/WCUpECgjLXvRX1jN7UKBIfcAqAtpWLCpLpy3jJMnpKbv8sc=
X-Received: by 2002:a25:6b4d:: with SMTP id o13mr7677213ybm.89.1554055085953; Sun, 31 Mar 2019 10:58:05 -0700 (PDT)
MIME-Version: 1.0
From: Viruthagiri Thirumavalavan <giri@dombox.org>
Date: Sun, 31 Mar 2019 23:27:30 +0530
Message-ID: <CAOEezJRM8ZVaWK6rtvP4ZH9CbN-itVof9_Zi8hf+wVym0cAxzA@mail.gmail.com>
To: ietf-smtp@ietf.org, barry@python.org
Content-Type: multipart/alternative; boundary="0000000000005c2ddc058567a5cf"
Archived-At: <https://mailarchive.ietf.org/arch/msg/ietf-smtp/8i_gnHqMYjZcnr1jLVFYJgw7Z60>
Subject: [ietf-smtp] Proper definition of the term "email payload".
X-BeenThere: ietf-smtp@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Discussion of issues related to Simple Mail Transfer Protocol \(SMTP\) \[RFC 821, RFC 2821, RFC 5321\]" <ietf-smtp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ietf-smtp>, <mailto:ietf-smtp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ietf-smtp/>
List-Post: <mailto:ietf-smtp@ietf.org>
List-Help: <mailto:ietf-smtp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ietf-smtp>, <mailto:ietf-smtp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 31 Mar 2019 18:00:08 -0000
Hello IETF, I need some clarification about the term "email payload". Wikipedia <https://en.wikipedia.org/wiki/Payload_(computing)> says *In computing and telecommunications, the payload is the part of transmitted data that is the actual intended message. Headers and metadata are sent only to enable payload delivery* Python email library documentation <https://docs.python.org/3/library/email.message.html> says this. *An email message consists of headers and a payload (which is also referred to as the content). Headers are RFC 5322 or RFC 6532 style field names and values, where the field name and value are separated by a colon. The colon is not part of either the field name or the field value. The payload may be a simple text message, or a binary object, or a structured sequence of sub-messages each with their own set of headers and their own payload. The latter type of payload is indicated by the message having a MIME type such as multipart/* or message/rfc822.* It looks like Python email library <https://github.com/python/cpython/blob/3.7/Lib/email/message.py>author "Barry Warsaw <https://barry.warsaw.us/>" followed similar definition found in wikipedia when defining his library functions. But I feel like calling ONLY the email "Body Part" as "payload" is wrong. The term "payload" should refer to the entire "Message Part" in Email. i.e. Both Headers and Body. When you place an order for a "box of beer", you are not paying only for the "beer cans", but also paying for the "container box". So the payload here is the entire box. HTTP Example: HTTP/1.1 200 OK Date: Sun, 10 Oct 2010 23:26:07 GMT Content-Type: text/html Content-Length: 1234 <html> <head> <title>Hello World!</title> </head> <body> (more contents) . . . </body> </html> If you take a closer look at this HTTP example, the headers are only just instructions for the client. The end user doesn't need to worry about any piece of information found in those headers. So wikipedia definition perfectly suited for applications like HTTP. But in Email, When a mail get transferred from Hop A to Hop C via Hop B, the user in Hop A actually wants to deliver the whole "message part" to Hop C. If Hop B, strips the headers and transfer only the "Body" part, then it becomes an "Anonymous" message. So the end user requires the information found in the "Headers" too. e.g. From, Subject, Date etc. [In HTTP, title tag is equivalent to Subject and it's found in the "head" Markup, not in the HTTP Headers] As you can see, the user is interested in the "entire message". So the term "actual intended message" should refer to the "whole message" extracted from the DATA command. The "actual intended message" should be pictured like this <https://www.dropbox.com/s/2i6mec5fzgu1v6n/messagepart1.png?dl=0> in email. Also note that, when you migrate your mails to another mail service, you need the whole message with Headers, not just the body. Based on my points, I believe calling only the "Body" part as "Payload" is wrong. I would love to hear your thoughts on this. If Barry Warsaw is here, would love to know your opinion too. PS: I did actually ask this question 2 years back in a stackexchange website <https://softwareengineering.stackexchange.com/questions/342184/what-is-an-email-payload>. I wasn't satisfied with the answer I got there. I don't want to use the term incorrectly in my application. That's why I'm posting it here. Thanks -- Best Regards, Viruthagiri Thirumavalavan Dombox, Inc.
- [ietf-smtp] Proper definition of the term "email … Viruthagiri Thirumavalavan
- Re: [ietf-smtp] Proper definition of the term "em… Keith Moore
- Re: [ietf-smtp] Proper definition of the term "em… Viruthagiri Thirumavalavan
- Re: [ietf-smtp] Proper definition of the term "em… Keith Moore
- Re: [ietf-smtp] Proper definition of the term "em… Viruthagiri Thirumavalavan
- Re: [ietf-smtp] Proper definition of the term "em… Viruthagiri Thirumavalavan
- Re: [ietf-smtp] Proper definition of the term "em… Dave Crocker
- Re: [ietf-smtp] Proper definition of the term "em… Viruthagiri Thirumavalavan
- Re: [ietf-smtp] Proper definition of the term "em… Viruthagiri Thirumavalavan
- Re: [ietf-smtp] Proper definition of the term "em… Viruthagiri Thirumavalavan
- Re: [ietf-smtp] Proper definition of the term "em… Barry Warsaw
- Re: [ietf-smtp] Proper definition of the term "em… Mark Sapiro
- Re: [ietf-smtp] Proper definition of the term "em… John C Klensin
- Re: [ietf-smtp] Proper definition of the term "em… Viruthagiri Thirumavalavan
- Re: [ietf-smtp] Proper definition of the term "em… Valdis Kl=?utf-8?Q?=c4=93?=tnieks
- Re: [ietf-smtp] Proper definition of the term "em… Hector Santos
- Re: [ietf-smtp] Proper definition of the term "em… Dave Crocker
- Re: [ietf-smtp] Proper definition of the term "em… Michael Peddemors