Zahoďte mail, zahoďte SMTP

Co s takovou dementní službou, která obtěžuje a které nelze věřit? (Nemluvím výjimečně o České Poště)

Kdysi, když počítačové sítě byly ještě mladé a jejich uživatelé Opravdovými Programátory, tak se mohlo posílání zpráv po síti jevit jako dobrý nápad. Z té doby pochází i starý známý (chtěl jsem napsat dobrý, ale to bych lhal) protokol SMTP na posílání elektronické pošty. SMTP znamená Simple Mail Transfer Protokol, tedy "Jednoduchý protokol na přenos pošty" nebo "Protokol na přenos jednoduché pošty", jak kdo chce. Zkušenost mne naučila, že platí bezezbytku slogan Jednoduché služby pro jednoduché lidi (nyní i s možností vkládat video s Billem a Tomem).

Slovo SIMPLE, tedy jednoduchý, je v tomto případě velmi přiléhavé, protože protokol byl navržen primárně pro přenos krátkých (pár tisíc znaků) zpráv psaných v sedmibitovém ASCII (tedy bez-hacku-a-carek). Posléze byl rozšířen pro přenos osmibitových znaků, pak pro přenos binárních souborů – šlo to, i když velikost přenášených dat poněkud narostla. Pak přišel kdosi s "geniálním" nápadem posílat maily v HTML. A pak už byl jen krůček k sekretářce, co pošle mailem celé CD (a za chvíli znovu, protože to první nedošlo, a tím úspěšně zahltí mailserver) a k robotům, co posílají tuny sraček na všechny adresy co kde najdou. A od nich byl krůček k bayes filtrům a blacklistům.

Koukal jsem se před nedávnem na statistiky našeho serveru. Za jeden den přišlo 1500 zpráv. Z nich bylo 1200 rozpoznáno jako spam a rovnou zahozeno. Zbývá 300 zpráv. Z těch bylo asi 100 "nerozpoznaných spamů", takže zbývá jen 200 zpráv, u nichž lze předpokládat, že je píše živý člověk živému člověku úmyslně. Z nich skoro čtvrtinu tvořily zprávy typu "Podívej se na tohle", "Hezký vtip", "něco na pracovní den", "animace – sranda!!!!", ovšem objem těchto zpráv činil polovinu celkového objemu oněch dvou set zpráv. Položil jsem si prostou otázku: A kvůli tomu máme (drahý) mailserver? Kvůli tomu máme (drahý) prostor na discích a platíme (drahou) přenosovou kapacitu? (Můžete argumentovat, že ceny nejsou tak vysoké, ale – na takový brak je server i zadarmo drahý!)

Dle mé soukromé statistiky je tedy pouhých 10% z celkového počtu zpráv "užitečný obsah" (terminus technicus, samosebou že většina z těch mailů jsou z vyššího hlediska naprosto neužitečné bláboly, asi jako většina zápisků na blozích, ale nemaje po ruce jiný termín budu používat tento). Co do objemu dat je to ještě horší, tam jsou jen řádově procenta užitečný obsah a naprostá většina je nezajímavý odpad.

Když to přirovnám k poštovní schránce, tak je situace taková, že ze sta doručených dopisů na devadesát obálek "Výhra! Otevřte ihned, setřete políčko pro získání Unikátního Výherního Kódu, protože jste jeden ze tří výherců, kteří mají již teď jistou výhru!" připadne osm pohlednic od známých s textem "Ahoj, jak se máš, my jsme ve Špindlu a svítí tu sluníčko", jeden časopis, který jste si dobrovolně předplatili a jedna obálka s dopisem od pojišťovny, kde vám oznámí, jestli vám zaplatí škodu na autě nebo jestli utřete. Bezvadná služba, takováhle poštovní schránka...

Jenže problém je ještě horší... Protože neúnosnost podobného způsobu psaní vidí i slepý (pro Radima Hasalíka "nevidomý"), tak vznikly všelijaké SpamHausy, BlackListy a SpamCopy (o SPF a MailerID nemluvě), které měly podobným záplavám kravin zabránit. Bohužel jde buď o řešení proprietární, kdy si každý velký hráč vymyslí vlastní způsob, nejlépe takový aby na něm vydělal, anebo jde o řešení mechanické a prosté podle teze Blokujeme ty co rozesílají spam. Blokační služby ale mají podstatnou nevýhodu: Buď jsou benevolentní – a pak jsou nanic, nebo jsou přecitlivělé a blokují i onen "užitečný obsah". Své o tom mohou vyprávět uživatelé velkých mailserverů (a nemusí jít jen o freemaily, může jít i o servery internetových providerů), kteří čas od času napíšou mail a ten zkrátka není doručen, protože jejich SMTP server je na blacklistu u nějakého hysterického CBLXBL a tím pádem jejich maily zkrátka nedojdou. Vede to k situacím někdy kuriozním, vždy však nepříjemným ("Vždyť jsem ti to psal?! Tys mi na můj mail neodpověděl...")

Fajn. To máte z toho, že používáte nespolehlivou službu a spoléháte se na ni.

Řešení není ve vymýšlení dalších antispam metod, greylistů, bayes filtrů a podobných věcí. Řešení je ve změně celé filosofie e-mailových služeb. Když už, tak z gruntu! Jak si to představuju?

No, zaprvé zahodit SMTP protokol, který vytvořilo konsorcium krále Klacka, a vyvinout nový a robustnější. Nechť je od počátku nastaven tak, aby umožňoval posílání příloh, nechť je definován standard pro přenos dat (co takhle dát jednotné kódování UTF-8?) a nechť je jasně řečeno, jak má zpráva vypadat (z různých představ jednotlivých firem o MIME multipart base64 uuencode se osypal asi každý, kdo se pokoušel napsat nějaký univerzální parser doručených mailů a nechal si v rámci testů poslat maily z několika různých mailových klientů). A měl bych i jeden zlepšovací návrh (kdo si ho patentuje jako první, ten vyhrál odměnu – ostře ořezanou tužku Bloguje, kterou mu vrazím do svalu sedacího)

Dnes když člověk pošle mail, tak z jeho počítače celá zpráva odejde na mailserver příjemce, kde straší až do doby, kdy nešťastník spustí přenos zpráv. To jestli jde o kravinu nebo ne rozhodne až server příjemce nebo, v tom horším případě, příjemce sám. Náklady tedy nese převážně příjemce.

Kdybych chtěl najít analogii s obyčejnou poštou, tak by to vypadalo asi tak, že by poplatky platil příjemce "ze schránky", naopak odeslání by nestálo nic (jen obálku a papír). Žádná známka. Na "vaší" poště by se zásilky "pro vás" shromažďovaly (samosebou za měsíční paušální poplatek podle velikosti úložiště), pošťačka by vyhazovala zjevné kraviny (např. vše kde by byl odesilatel Readers Digest Výběr), vy byste si jednou za čas přišli pro poštu, zaplatili korunu za každý přístup ke své schránce a dostali byste pytel zpráv, které byste si mohli přečíst, vyhodit či nechat ve schránce. Absurdní? E-mail funguje ale přesně takhle!

Nový protokol by proto měl ponechávat zprávy na serveru odesilatele. Tenhle server by poslal jen krátkým PINGnutím serveru příjemce informaci o tom, že pro něj něco má (jeden či dva TCP pakety s odesilatelem a hlavičkou) a bylo by čistě na příjemci, jestli to chce stáhnout nebo ne. Myslím že takové řešení by nejen výrazně snížilo datový provoz, ale vedlo by k výraznému omezení spamu. Přeci jen – poslat milion zpráv, když mě to nic nestojí, je příliš lákavé. Pokud by ale ten milion zpráv měl viset na serveru, který si platím, a viděl bych, že si je nikdo nevyzvedává, kdyby mi server oznámil po odeslání pěti set nevyzvednutých zpráv, že další doručovat nebude... Inu, myslím, že by Slabých spammerů výrazně ubylo... (Vrhli by se na diskusní fóra, tam je to taky nic nestojí a to místo platí někdo jiný.)

Snadno by se daly implementovat i další funkce, třeba "adresy které si důvěřují" apod. Myslím že příští rok by tohle už mohlo fungovat – s chutí pak přenechám komunikaci e-mailem sekretářkám a prodejcům s velkými penisy.

---

Jo a ICQ od chvíle, kdy zablokovalo na oficiálním klientu posílání odkazů, je ještě blbější než jsem si kdy myslel že být může. Opensource věrozvěsti sice hudlají cosi o Jabberu ("Já mám Jabber a jsem v pohodě" – nepřipomíná vám to tuč... ehm, něco?), ale realita bude nejspíš taková, že Jabberu se podobné problémy vyhýbají proto, že jej zatím používají převážně geekové. Vzpomeňte si, že i mail v dřevních dobách geeků býval skvělou a bezproblémovou službou... Ale Google Talk na Jabber vsadil, můžeme tedy očekávat i u Jabberu brzké problémy stejného typu jaké má ICQ (viry a spam).

Pro SMTP (Současný Mail Trablů Plný) tedy nevidím budoucnost nijak růžovou. Spíš má barvu hnědou, až dočerna. Ale víte někdo o něčem, co by se mohlo místo něj dnes používat?

Dne 27.10.2006

Twittni

Přidej do: asdf.sk StumbleUpon Toolbar Stumble It!

Komentáře

[1] (Jana ) 27.01.2007, 22:11:41 [X] [D]
Arthure, tak ten nápad na nový protokol je parádní. jak by se vlastně v praxi dal zavést tenhle a zároveň zrušit smtp? - asi se ptám blbě, ale zní to tak zajímavě a lákavě, že mě zajímají technické možnosti... i kdyby jenom teoretické.

a zároveň jsem se chtěla zeptat - jaká je úspěšnost vymáhání poplatků podle "pravidel využití mailových adres @bloguje.cz"? a taky: máš to patentované, anebo bych podobný text mohla doporučit k používání člověku, který na spammery nadává při každé příležitosti? :) díky - a teď budu doufat, že čteš i komentáře ke starším článkům...

[2] (Arthur Dent ) 27.01.2007, 22:21:28 [X] [D]
[1] Čtu :) Jak by se zaváděl? Stejně jako se zavedl Jabber po ICQ :) To s tou fakturou je od Dana Dočekala (POOH).