1 |
‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐ |
2 |
On Friday, August 21, 2020 11:37 PM, Grant Taylor <gtaylor@×××××××××××××××××××××.net> wrote: |
3 |
|
4 |
> SMTP may not be the best, but I do think that it has some merits. |
5 |
> Merits that the previously mentioned HTTP/2 alternative misses. |
6 |
|
7 |
not a major point but just to clarify a thing. |
8 |
|
9 |
i think it's unfair to look at SMTP as a single |
10 |
thing that compares against HTTP*. because while |
11 |
HTTP* is a single-ish thing, SMTP is several |
12 |
things. i.e. SMTP is at least 2 parts: |
13 |
|
14 |
1. resource exchange layer where people are |
15 |
defined as some kind of URL (e.g. |
16 |
name@×××.zone) and attachments are base64-ed |
17 |
text balls referred to by some numbers in |
18 |
RFC822. This part overlaps with HTTP*. let's |
19 |
call this "RESXCH_SERVER". |
20 |
|
21 |
2. the part where it defines how to process |
22 |
the exchanged resources (e.g. safe storage, |
23 |
routing, etc). this part is beyond HTTP*'s |
24 |
scope, and is the "web app" scope. let's call |
25 |
this "RESUSE_SERVER" |
26 |
|
27 |
of course, email still doesn't work with those 2 |
28 |
parts, because you need a way to get mails to your |
29 |
email client, so you end up using POP or IMAP. |
30 |
now, this --itself-- is also two parts: |
31 |
|
32 |
1. resource exchange layer to send resources to |
33 |
users. which also overlaps with HTTP* (again). |
34 |
let's call this "RESXCH_CLIENT". |
35 |
|
36 |
2. the part where it defines how the mail client |
37 |
to treat the resources. let's call this |
38 |
"RESUSE_CLIENT". |
39 |
|
40 |
|
41 |
> Why add an additional protocol to the stack? |
42 |
> |
43 |
> TCP / SMTP is two layers. |
44 |
> |
45 |
> TCP / HTTP / $Email-protocol-de-jure is three layers. |
46 |
> |
47 |
> UDP / HTTP / $Email-protocol-de-jusre is three layers. |
48 |
> |
49 |
> Why introduce an additional layer? |
50 |
|
51 |
i disagree. i think this is more like it about |
52 |
the current email system: |
53 |
|
54 |
RESXCH_SERVER / RESUSE_SERVER / RESXCH_CLIENT / RESUSE_CLIENT |
55 |
|
56 |
it's 4 different layers to exchange mail between |
57 |
people. |
58 |
|
59 |
but if we plug HTTP* in the mix, it because only 3 |
60 |
different layers: |
61 |
|
62 |
HTTP* / RESUSE_SERVER / HTTP* / RESUSE_CLIENT |
63 |
|
64 |
and it is even nicer for when HTTP* is plugged, |
65 |
because it is also the protocol used for most of |
66 |
internet's traffic (web browsing). |
67 |
|
68 |
so basically total expected number of |
69 |
protocols/layers used in the universe, per second, |
70 |
will be much less if we, on planet earth, use a |
71 |
mail system that uses HTTP* instead of RESXCH_*. |