簡單郵件傳輸協議


簡單郵件傳輸協議 (简体)

Free Web Hosting with Website Builder
網路協議
5. 應用層

DHCP · DNS · FTP · Gopher · HTTP · IMAP4 · IRC · NNTP · XMPP · POP3 · SIP · SMTP · SNMP · SSH · TELNET · RPC · RTCP · RTSP · TLS · SDP · SOAP · GTP · STUN · NTP · 更多

4. 傳輸層
TCP · UDP · DCCP · SCTP · RTP · RSVP · PPTP · 更多
3. 網路層
IP (IPv4 · IPv6) · ARP · RARP · ICMP · ICMPv6 · IGMP · RIP · OSPF · BGP · IS-IS · IPsec · 更多
2. 資料鏈結層
802.11 · 802.16 · Wi-Fi · WiMAX · ATM · DTM · 令牌環 · 乙太網 · FDDI · 幀中繼 · GPRS · EVDO · HSPA · HDLC · PPP · L2TP · ISDN · 更多
1. 實體層
乙太網路實體層 · 數據機 · PLC · SONET/SDH · G.709 · 光導纖維 · 同軸電纜 · 雙絞線 · 更多
本模板: 檢視  討論  編輯  歷史

簡單郵件傳輸協議 (Simple Mail Transfer Protocol, SMTP) 是事實上的在Internet傳輸email的標準。

SMTP是一個相對簡單的基於文本的協議。在其之上指定了一條消息的一個或多個接收者(在大多數情況下被確認是存在的),然後消息文本會被傳輸。可以很簡單地通過telnet程序來測試一個SMTP伺服器。SMTP使用TCP埠25。要為一個給定的域名決定一個SMTP伺服器,需要使用MX (Mail eXchange) DNS

在八十年代早期SMTP開始被廣泛地使用。當時,它只是作為UUCP的補充,UUCP更適合於處理在間歇連接的機器間傳送郵件。相反,SMTP在發送和接收的機器始終連接在網路的情況下工作得最好。

Sendmail是最早實現SMTP的郵件傳輸代理之一。到2001年至少有50個程序將SMTP實現為一個客戶端(消息的發送者)或一個伺服器(消息的接收者)。一些其他的流行的SMTP伺服器程序包括了Philip Hazel的exim,IBM的Postfix, D. J. Bernstein的Qmail,以及Microsoft Exchange Server

由於這個協議開始是基於純ASCII文本的,它在二進位文件上處理得並不好。諸如MIME的標準被開發來編碼二進位文件以使其通過SMTP來傳輸。今天,大多數SMTP伺服器都支持8位MIME擴展,它使二進位文件的傳輸變得幾乎和純文本一樣簡單。

SMTP是一個「推」的協議,它不允許根據需要從遠程伺服器上「拉」來消息。要做到這點,郵件客戶端必須使用POP3或IMAP。另一個SMTP伺服器可以使用ETRN在SMTP上觸發一個發送。

目錄

SMTP通信舉例

在發送方(客戶端)和接收方(伺服器)間建立連接之後,接下來是一個合法的SMTP會話。在下面的對話中,所有客戶端發送的都以「C:」作為前綴,所有伺服器發送的都以「S:」作為前綴。在多數計算機系統上,可以在發送的機器上使用telnet命令來建立連接,比如:

telnet www.example.com 25

它打開一個從發送的機器到主機www.example.com的SMTP連接。

S: 220 www.example.com ESMTP Postfix
C: HELO mydomain.com
S: 250 Hello mydomain.com
C: MAIL FROM: sender@mydomain.com
S: 250 Ok
C: RCPT TO: friend@example.com
S: 250 Ok
C: DATA
S: 354 End data with <CR><LF>.<CR><LF>
C: Subject: test message
C: From: sender@mydomain.com
C: To: friend@example.com
C:
C: Hello,
C: This is a test.
C: Goodbye.
C: .
S: 250 Ok: queued as 12345
C: quit
S: 221 Bye

雖然是可選的,但幾乎所有的客戶端都會使用EHLO問候消息(而不是上面所示的HELO)來詢問伺服器支持何種SMTP擴展,郵件的文本體(接著DATA)是典型的MIME格式。

SMTP安全和垃圾郵件

最初的SMTP的局限之一在於它沒有對發送方進行身份驗證的機制。因此,後來定義了SMTP-AUTH擴展。

儘管有了身份認證機制,垃圾郵件仍然是一個主要的問題。但由於龐大的SMTP安裝數量帶來的網路效應,大刀闊斧地修改或完全替代SMTP被認為是不現實的。Internet Mail 2000就是一個替代SMTP的建議方案。

因此,出現了一些同SMTP工作的輔助協議。IRTF的反垃圾郵件研究小組正在研究一些建議方案,以提供簡單、靈活、輕量級的、可升級的源端認證。最有可能被接受的建議方案是發送方策略框架協議。

參見

  • DomainKeys

相關的RFC

參考文獻







Why are we here?
All text is available under the terms of the GNU Free Documentation License
This page is cache of Wikipedia. History