| 研究生: |
董仲愷 Tung, Chung-Kie |
|---|---|
| 論文名稱: |
Open WebMail: 一個基於伺服機群的網頁郵件系統 Open WebMail: A Server Group Based Scalable Webmail System |
| 指導教授: |
蔡尚榮
Tsai, Shong-Rong |
| 學位類別: |
博士 Doctor |
| 系所名稱: |
電機資訊學院 - 電機工程學系 Department of Electrical Engineering |
| 論文出版年: | 2005 |
| 畢業學年度: | 93 |
| 語文別: | 英文 |
| 論文頁數: | 104 |
| 中文關鍵詞: | 網頁郵件 、國際化 、防垃圾信 、萬國碼 、防毒 、MIME 、字集 、郵件 、叢集伺服器 、容錯 、高可用度 、負載平衡 |
| 外文關鍵詞: | server cluster, antivirus, fault tolerant, internationalization, Unicode, charset, MIME, webmail, antispam, mail, load balancing, high availability |
| 相關次數: | 點閱:139 下載:1 |
| 分享至: |
| 查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
網頁郵件已經成為網際網路最受歡迎的服務之一。在這篇論文中
我們探討了一個基於伺服機組網頁郵件系統的設計與實作。
這個系統包含了兩個主要元件,分別是 SG Cluster 與 Open WebMail。
SG Cluster讓系統管理者能夠替大多數現有的應用建立具有負載分散與容錯能力的高可用度叢集。一個標準的 SG Cluster 通常包含一到兩個的負載分散器和數部後端伺服器。對於外部的世界來說,整個 SG Cluster 看起來就像是單一部伺服主機。負載分散器會根據後端伺服器的負載狀況與可用情形將使用者端要求分散到這些伺服器上。 我們介紹了用來做負載分散器容錯的 bidding 通訊協定,並且探討了 SG Cluster 中的讀寫模型,負載分散策略與容錯方法。
Open WebMail 這套網頁郵件系統的設計目標是以有效率的記憶體運用方式來處理大型的信件匣,同時提供足夠多的功能讓原本 Microsoft Outlook 的使用者能夠容易地轉移過來。由於網頁郵件系統可能會面對來自各個不同地方的大量使用者,因此系統效能與國際化成為 Open WebMail 設計中的兩個重要議題。我們介紹了 Open
WebMail 中幾個用來增進系統效能的方法,並且探討了 Unicode 與 iconv()在字集編碼轉換時會碰到的問題,以及說明 Open WebMail 中如何處理字集編碼轉換。
最後,我們建立了一個包含兩個負載分配器與三個伺服器節點的 Open WebMail 叢集,效能測試顯示在伺服器節點增加時,系統的反應時間與錯誤發生率都明顯地的減少與降低,代表SG Cluster 的確能有效地提高 Open WebMail 系統可變尺度能力。
WebMail has become one of the most popular services on the Internet. In
this dissertation, we have discussed the design and implementation of a
server group based scalable webmail system which contains two major
components: the SG Cluster and the Open WebMail.
The SG Cluster enables the system administrator to create load
balancing, fault tolerant and high availability cluster for most existing
applications easily. A typical SG Cluster contains one or two load
balancers and several back-end servers; however, the whole cluster looks
like a single server from the outside world. The load balancer is
responsible for distributing the client requests to the backend servers
based on their availability and load status. We have described the bidding
protocol used to do load balancer failover. And the read/write model, load
balancing policies and fault tolerant methods supported by the SG Cluster
are also discussed.
The Open WebMail is targeted is to manage very large mail folder files
in a memory efficient way. It also provides a range of features to help
users migrate smoothly from Microsoft Outlook. As a webmail system may face
a lot of users which come from different locations, so both the performance
and the internationalization are two important issues in the design of Open
WebMail. Several methods used to speedup the Open WebMail performance are
described, The problems of the Unicode and the iconv() function in the
encoding conversion have been addressed, and we show how the encoding
conversion is used in the Open WebMail.
Finally, we setup an Open WebMail Cluster with two load balancers and
three server nodes. The benchmark shows the SG Cluster does improve the
scalability of the Open WebMail system. For the same number of concurrent
clients, the response time and the error rate are reduced when the number
of server node is increased.
[1] E. Anderson, D. Patterson and E. Brewer (1996). .The Magicrouter: An
Application of Fast Packet Interposing.. Second Symposium on Operating
Systems Design and Implementation.
http://www.cs.berkeley.edu/~eanders/projects/magicrouter/
[2] AntiPhishng - http://www.antiphishing.org/
[3] Azer Bestavros, Mark Crovella, Jun Liu and David Martin (1998).
Distributed Packet Rewriting and its Application to Scalable Server
Architectures. Boston, MA, Boston University.
http://citeseer.nj.nec.com/54392.html
[4] Inc. Cisco Systems (2001). Cisco LocalDirector Configuration and Command
Reference Guide.
http://www.cisco.com/univercd/cc/td/doc/product/iaabu/localdir/ldv42/421g
uide/i ndex.htm
[5] Day Light Saving - http://www.energy.ca.gov/daylightsaving.html
[6] Om P. Damani, P. Emerald Chung and Yennun Huang (1997). .ONE-IP:
Techniques for Hosting a Service on a Cluster of Machines. Computer
Networks and ISDN Systems 29(8--13): 1019--1027.
http://www.scope.gmd.de/info/www6/technical/paper196/paper196.html
[7] K. Egevang and P. Francis (1994). The IP Network Address Translator
(NAT), RFC 1631. http://www.cis.ohio-state.edu/cgi-bin/rfc/rfc1631.html
[8] NeoMail - http://www.neomail.org/
[9] FastCGI - http://www.fastcgi.com/
[10] Chris Gage (2000). White paper, IBM Network Dispatcher Version 3.0
[11] George Gousios, Diomidis Spinellis, "A comparison of Portable Dynamic
Web Content Technologies for the Apache Server", 3rd International
System Administration and Networking Conference Proc. P 103-119,
Maastricht, The Netherlands, May 2002
[12] Greylist - http://projects.puremagic.com/greylisting/
[13] IMP Mail Client - http://www.horde.org/imp/
[14] ISC - http://www.isc.org/index.pl?/ops/ds/
[15] Eric Dean Katz, Michelle Butler and Robert McGrath (1994). "A Scalable
HTTP Server: The NCSA Prototype." Computer Networks and ISDN Systems
27:155-164.
[16] mod_perl - http://perl.apache.org/
[17] C. Perkins (1996). IP Encapsulation within IP, RFC 2003.
http://www.cis.ohio-state.edu/cgi-bin/rfc/rfc2003.html
[18] Postgrey - http://isg.ee.ethz.ch/tools/postgrey/
[19] http://perl.apache.org/docs/1.0/guide/index.html
[20] http://httpd.apache.org/docs-2.0/mod/prefork.html
[21] Procmail - http://www.procmail.org
[22] RFC2045 - Multipurpose Internet Mail Extensions (MIME) Part 1: Format
of Internet Message Bodies
[23] RFC2046 - Multipurpose Internet Mail Extensions (MIME) Part 2: Media
Types
[24] RFC2047 - MIME (Multipurpose Internet Mail Extensions) Part 3: Message
Header Extensions for Non-ASCII Text
[25] RFC2048 - Multipurpose Internet Mail Extensions (MIME) Part 4:
Registration Procedures
[26] RFC2049 - Multipurpose Internet Mail Extensions (MIME) Part 5:
Conformance Criteria and Examples
[27] RFC821 - Simple Mail Transfer Protocol. J. Postel. Aug-01-1982.
[28] RFC1939 - Post Office Protocol - Version 3. J. Myers & M. Rose. May
1996
[29] RFC2060 - Internet Message Access Protocol - Version 4rev1. M. Crispin.
December 1996.
[30] Trevor Schroeder, Steve Goddard and Byrav Ramamurthy (2000). .Scalable
Web Server Clustering Technologies.. IEEE Network May/June : 38- 45.
http://www.ece.eng.wayne.edu/~czxu/ece7995/reading/ServerReview-
Schroeder.pdf
[31] SpeedyCGI - http://daemoninc.com/SpeedyCGI/
[32] SqWebMAil - http://www.inter7.com/sqwebmail/sqwebmail.html
[33] Squirrel Mail - http://www.squirrelmail.org
[34] TCP/IP Illustrated, Volume2, Wright Stevens, Addison Wesley, Chapter 2
[35] The Web Information Gateway - http://twig.screwdriver.net/
[36] Throttle Httpd - http://www.acme.com/software/thttpd/notes.html#nbio
[37] http://www.unicode.org/versions/Unicode4.0.0/ch03.pdf
[38] http://www.unicode.org/standard/WhatIsUnicode.html
[39] J.Almeida, P.Cao., "Measuring proxy performance with the Wisconsin
proxy bench mark", Technical Report 1373, Computer Science Dep. Univ. of
Wisconsin-Madison, 1998.
[40] Wensong Zhang, Shiyao Jin and Quanyuan Wu (1999). Creating Linux
Virtual Servers. LinuxExpo 1999 Conference, Linux Virtual Server
Project. http://www.linuxvirtualserver.org/linuxexpo.html