37

SMTP は TCP または UDP に基づいていますか? 本当に確認できません。私の意見では、SMTP は UDP に基づいている必要がありますが、それは TCP でなければならないという人もいました。

4

2 に答える 2

49

理論的には、SMTP は TCP、UDP、またはサードパーティのプロトコルのいずれかで処理できます。

RFC 821RFC 2821、およびRFC 5321で定義されているように:

SMTP は、特定の伝送サブシステムから独立しており、信頼できる順序付けられたデータ ストリーム チャネルのみを必要とします。

さらに、Internet Assigned Numbers Authority は、SMTP で使用するために TCP と UDP の両方にポート 25を割り当てています。

ただし、実際には、すべてではないにしてもほとんどの組織やアプリケーションは、TCP プロトコルの実装のみを選択します。たとえば、Microsoft のポート リストでは、ポート 25 は TCP に対してのみリストされており、UDP に対してはリストされていません。


ここでTCPを理想的なものにするTCPとUDPの大きな違いは、TCPがすべてのパケットが受信されていることを確認し、そうでない場合は再送信することです.UDPは単にパケットを送信し、受信を確認しません. これにより、UDP は、サーバーからクライアントへのパケットの継続的なフローを維持することほど重要ではないビデオのストリーミングなどに最適です。

SMTP を考慮すると、TCP over UDP を使用する方が理にかなっています。SMTP はメール転送プロトコルであり、メールではすべてのパケットが重要です。メッセージの途中でいくつかのパケットを失うと、受信者はメッセージを受信することさえできない可能性があり、受信した場合、重要な情報が失われる可能性があります。これにより、すべてのパケットが配信されることが保証されるため、TCP がより適切になります。

于 2013-09-16T17:23:10.723 に答える