3. 戳記式廣播傳遞機制
3.4 電子郵件應用範例
戳記式廣播傳遞機制除了可以在非結構化點對點疊加系統中用來支援訊息傳遞 外,也可以在電子郵件系統中用來過濾泛濫的轉寄信件。電子郵件為現代人們重要的連 絡與訊息交換工具,但是由於使用便利與成本極低,因此衍生許多問題,例如垃圾廣告 信泛濫、含有病毒的惡意信件充斥等。轉寄信件與垃圾廣告信或含病毒惡意內容信件有 極大的不同,多為朋友間基於善意分享所進行的有限廣播信件。此行為乃發送者個人意 志,因此判斷則較為困難。收信人第一次收到一封轉寄信的時候,會很有興趣地閱讀它,
但如果收信人不斷地收到相同的轉寄信時,常會開始產生困擾,因此在本節設計部分,
我們設法讓使用者只收到一次轉寄信件或少數次的重覆轉寄信件。
根據電子郵件的傳遞過程原理,電子郵件的過濾時機點可大略分成二類:第一類是 收到郵件後做過濾動作,如病毒過濾、廣告信過濾。第二類是在信件送出時就進行過濾,
如本篇論文提出的戳記過濾。實作上也可以細分成在伺服器端或是在使用者端做過濾。
在伺服器端做過濾的話,可以降低收件或發送郵件的成本,節省不必要的頻寬浪費;在 使用者端做過濾則可以協助使用者在閱讀開啟前過濾掉重複資訊,但就沒有降低成本的 優點。
電子郵件的傳遞方式如圖 3-5所示,寄件者在自己的電腦上使用郵件使用者代理人 (Mail User Agent, MUA)如Outlook等軟體寄送郵件,郵件透過SMTP協定傳至服務之伺服 器,這個本地端的郵件伺服器會透過MTA(Mail Transfer Agent, MTA)接收寄件者的請求 並且將寄送到本地其他使用者的郵件透過MDA(Mail Delivery Agent, MDA)分類放置郵 件檔案中,要送至遠端的信件再透過MTA使用SMTP協定送至遠端郵件伺服器,遠端伺 服器同樣利用MTA接收後,透過MDA分類放置到遠端收件者的郵件檔案中,最後收件 者再使用POP/IMAP協定跟伺服器取得郵件資料。
Local Client Remote Client
MUA
MTA
MDA Mail Delivery Agent
(MDA) SMTP
Mail User Agent (MUA)
Mail Transfer Agent (MTA)
Mail Box
POP/IMAP
Mail Box
SMTP
圖 3-5 電子郵件架構圖
戳記法過濾需是在發送信件前先做過濾,以降低發送的信件量,因此理想的情形僅 需要實作於伺服器端的MTA就可以了,郵件收送流程圖如圖 3-6所示,使用者於MUA 發送郵件至伺服器的MTA,MTA收到後會透過戳記判斷準收件者們是否有在戳記中, 者轉寄給 [email protected]的郵件內容,我們在這份電子郵件中加入了戳記的表示
圖 3-6 使用戳記法之電子郵件單層控制流程圖
圖 3-7 使用戳記法之電子郵件雙層控制流程圖
Delivered-To: [email protected]
Received: by 10.100.40.6 with SMTP id n6cs183337ann;
Thu, 15 Jul 2010 02:30:28 -0700 (PDT)
Received: by 10.231.11.3 with SMTP id r3mr18453995ibr.68.1279186228152;
Thu, 15 Jul 2010 02:30:28 -0700 (PDT) Return-Path: <[email protected]>
Received: from col0-omc3-s6.col0.hotmail.com (col0-omc3-s6.col0.hotmail.com) by mx.google.com with ESMTP id m35si2054497ibm.48.2010.07.15.02.30.27;
Thu, 15 Jul 2010 02:30:28 -0700 (PDT) Received-SPF: pass client-ip=65.55.34.144;
Authentication-Results: mx.google.com; spf=pass
Received: from COL103-W21 ([65.55.34.136]) by col0-omc3-s6.col0.hotmail.com with Microsoft SMTPSVC(6.0.3790.4675);
Thu, 15 Jul 2010 02:29:38 -0700
Message-ID: <[email protected]>
Return-Path: [email protected] Content-Type: multipart/alternative;
boundary="_0f652578-3f8d-47df-b86a-8e7255353299_"
X-stamp: {User1, User2, User3}@mail.nuk.edu.tw {ghost855779}@hotmail.com
X-Originating-IP: [140.127.208.228]
From: =?big5?B?p/UgsVKlaw==?= <[email protected]>
To: =?big5?B?p/UgsVKlaw==?= <[email protected]>, <[email protected]>
Subject: For example
Date: Thu, 15 Jul 2010 17:29:37 +0800 Importance: Normal
MIME-Version: 1.0
X-OriginalArrivalTime: 15 Jul 2010 09:29:38.0204 (UTC) FILETIME=[3EC74DC0:01CB2400]
--_0f652578-3f8d-47df-b86a-8e7255353299_
Content-Type: text/plain; charset="big5"
Content-Transfer-Encoding: 8bit Just for example.
圖 3-8 電子郵件實際內文圖