SMTP是基於TCP還是UDP?我真的無法證實它。在我看來,SMTP應該基於UDP,但有人告訴我必須是TCP。是基於TCP還是UDP的SMTP?
24
A
回答
25
理論上SMTP可以通過TCP,UDP或某些第三方協議處理。
如圖RFC 821定義,RFC 2821,和RFC 5321:
SMTP是依賴於特定的傳輸子系統,和 僅需要一個可靠的有序的數據流信道。
另外,互聯網號碼分配機構已經爲TCP和UDP分配port 25供SMTP使用。
但實際上,大多數組織和應用程序只選擇實現TCP協議。例如,在Microsoft's port listing端口25僅列出了TCP而不是UDP。
TCP和UDP之間的巨大差異,使得TCP理想這裏是TCP檢查,以確保每一個數據包被接收並重新發送他們,如果他們沒有,而UDP會簡單地發送數據包,而不是檢查收據。這使得UDP成爲諸如流式視頻之類的應用的理想之選,其中每個數據包都不如保持數據包從服務器連續流向客戶端那麼重要。
考慮到SMTP,使用TCP over UDP更合理。 SMTP是一種郵件傳輸協議,在郵件中,每一個數據包都很重要。如果在郵件中間丟失了幾個數據包,收件人甚至可能不會收到該郵件,如果他們這樣做,他們可能會丟失關鍵信息。這使得TCP更合適,因爲它確保了每個數據包的傳送。
相關問題
- 1. LDAP是TCP還是UDP協議?
- 2. 不是基於TCP的Memcache?
- 3. FireWall如何知道交通是UDP還是TCP?
- 4. NS-3 TCP/UDP套接字是非阻塞還是阻塞?
- 5. 實時無線傳感器數據傳輸。 WiFi還是藍牙? TCP還是UDP?
- 6. 我應該爲我的Minecraft式遊戲使用UDP還是TCP?
- 7. ?基於xml還是基於註釋?
- 8. 是「newPageLoaded」標誌?它是基於DOM還是基於網絡?
- 9. websocket是基於流的還是基於包的協議?
- 10. 服務器推送或客戶端請求? TCP還是UDP?
- 11. Apple推送通知服務使用UDP還是TCP?
- 12. 檢查PostgreSQL/C ArrayType是基於零還是基於一個的
- 13. 系統如何識別接收到的數據包是TCP還是UDP?
- 14. ELB是基於tcp的排空嗎?
- 15. 什麼是一些不使用TCP或UDP等端口的基於IP協議?
- 16. 在Windows Azure中,CloudBlockBlob.PutBlock方法是使用TCP還是UDP作爲傳輸協議?
- 17. 是ASP.Net Webforms和基於ASP.Net MVC組件還是基於動作?
- 18. 更新一堆行是基於事務還是基於行?
- 19. Cookie-是基於用戶還是基於機器?
- 20. 檢查CLLocation是基於GPS還是基於蜂窩電話
- 21. 泛型還是基於對象的?
- 22. 基於TCP的SIP與基於UDP的SIP [SIP:會話初始化協議]
- 23. udp單播是否比tcp更快?
- 24. SMS是否更像UDP或TCP?
- 25. 什麼是數據包UDP/TCP?
- 26. 瀏覽器是「基於webkit」還是「基於壁虎」是什麼意思?
- 27. C# - 基於UDP
- 28. Google Drive API是基於JSON的API還是舊的基於XML的API?
- 29. 對於多線程服務器,TCP是否比UDP更好?
- 30. 它是基於窗口還是基於視圖的應用程序?
http://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol'SMTP使用TCP端口25' – Kyslik