Alur kerja email memiliki langkah pengiriman dan langkah kotak surat. SMTP menangani yang pertama; IMAP menangani yang kedua.
Apa fungsi SMTP?
SMTP mengirim dan meneruskan email. Aplikasi atau klien email Anda membuka koneksi ke server SMTP, mengirimkan pengirim, penerima, dan pesan, lalu menerima balasan setelah setiap perintah. Relay kemudian dapat bertindak sebagai klien SMTP dan meneruskan pesan ke server berikutnya.
Protokol ini tidak menentukan cara kotak surat ditampilkan atau pesan mana yang sudah dibaca pengguna. Tugasnya adalah transmisi dan serah terima tanggung jawab antar-server.
Apa fungsi IMAP?
IMAP mengambil pesan dari kotak surat dan menyinkronkan status kotak surat. Ponsel dan laptop dapat menampilkan folder, flag, dan status baca yang sama karena keduanya bekerja terhadap salinan di server.
IMAP tidak mengirimkan pesan baru untuk pengiriman. Klien dapat menggunakan SMTP untuk mengirim balasan, lalu menggunakan IMAP untuk membaca utas balasan di kotak surat.
Bagaimana perbandingan SMTP dan IMAP?
| Pertanyaan | SMTP | IMAP |
|---|---|---|
| Tugas utama | Mengirim dan meneruskan email | Mengambil dan menyinkronkan data kotak surat |
| Arah | Keluar menuju server email atau relay | Antara server kotak surat dan klien |
| Status server | Server dapat mengantre pesan hingga serah terima berikutnya; SMTP tidak mendefinisikan kotak surat pengguna | Server menyimpan salinan kotak surat, folder, dan status pesan |
| Klien tipikal | Aplikasi pengirim atau klien email | Klien email yang membaca kotak masuk |
| Port umum | 587 untuk submission, 465 untuk TLS implisit, 25 untuk relay server-ke-server | 143 untuk plain atau STARTTLS, 993 untuk TLS implisit |
| Penggunaan dalam aplikasi | Mengirim tanda terima, notifikasi, dan pesan lainnya | Membaca atau memproses kotak surat yang ada |
Perbedaan status server menentukan pilihan protokol. SMTP dapat mengantre pesan selama pengiriman, tetapi bukan penyimpan kotak surat. IMAP dirancang di sekitar kotak surat sisi server yang dikunjungi ulang dan disinkronkan oleh klien.
Bagaimana percakapan SMTP dapat mendiagnosis kegagalan?
Tangkap perintah dan balasan yang mengikutinya. SMTP adalah percakapan bertahap: klien mengirim EHLO, MAIL FROM, RCPT TO, dan DATA, lalu server menjawab setiap langkah. Perintah yang gagal mempersempit masalah ke pengaturan koneksi, penerimaan pengirim, penerimaan penerima, atau data pesan.
Sebagai contoh, pertukaran singkat ini mencapai isi pesan:
S: 220 mail.example ESMTP ready
C: EHLO app.example
S: 250-mail.example
C: MAIL FROM:<sender@example>
S: 250 2.1.0 OK
C: RCPT TO:<recipient@example>
S: 550 5.1.1 user unknown
550 tiba setelah RCPT TO, jadi server menolak alamat penerima. Ini bukan bukti bahwa koneksi jaringan atau identitas pengirim gagal. Balasan 4xx pada langkah yang sama akan memerlukan kebijakan coba lagi, bukan kegagalan permanen langsung.
RFC 5321 mendefinisikan format balasan dan menjadikan kode numerik sebagai bagian yang dapat dibaca mesin:
An SMTP reply consists of a three digit number (transmitted as three numeric characters) followed by some text unless specified otherwise in this document. The number is for use by automata to determine what state to enter next; the text is for the human user.
Gunakan digit pertama sebagai pemisah diagnostik awal:
| Kelas kode | Arti | Langkah selanjutnya |
|---|---|---|
2xx | Perintah berhasil | Lanjutkan transaksi |
3xx | Server menerima perintah dan membutuhkan input tambahan | Kirim bagian berikutnya, seperti isi pesan setelah DATA |
4xx | Kegagalan sementara | Pertahankan tanggung jawab atas pesan dan coba lagi setelah kondisi server mungkin sudah pulih |
5xx | Kegagalan permanen untuk permintaan tersebut | Perbaiki alamat, kredensial, atau pesan sebelum mencoba lagi |
Baca perintah dan kode secara bersamaan. 535 setelah autentikasi menunjukkan masalah kredensial atau kebijakan autentikasi. 552 setelah DATA menunjukkan batas ukuran. 421 selama penanganan koneksi menunjukkan batas server atau koneksi sementara.
Protokol mana yang dibutuhkan aplikasi saya?
Gunakan SMTP ketika aplikasi mengirim email. Gunakan IMAP ketika aplikasi membaca dan menyinkronkan kotak surat yang ada. Aplikasi yang memerlukan pemrosesan masuk juga dapat menggunakan API email masuk, yang mengirimkan pesan yang sudah diuraikan tanpa perlu polling kotak surat.
Untuk email keluar, pilih antara relay SMTP dan HTTP email API. SMTP cocok untuk library dan sistem yang sudah menggunakan protokol tersebut. HTTP API cocok untuk lingkungan di mana membuka dan mengelola koneksi SMTP tidak praktis.
Bagaimana Bird membantu pengiriman SMTP?
Untuk mengirim melalui Bird, atur relay host sesuai region kunci Anda, pilih port 465, 587, atau 2525, dan autentikasi dengan username bird beserta kunci API Anda. Panduan relay SMTP menyediakan batas koneksi dan penanganan kode balasan untuk serah terima yang gagal.
Bisakah saya menggunakan IMAP untuk mengirim email?
Tidak. IMAP mengambil dan menyinkronkan data kotak surat. Pengiriman memerlukan SMTP atau HTTP email API.
Apa perbedaan antara IMAP dan POP3?
Keduanya mengambil email, tetapi IMAP menyimpan kotak surat di server dan menyinkronkan status di seluruh klien. POP3 secara tradisional mengunduh pesan ke satu klien, sehingga tidak menyediakan status kotak surat bersama yang sama.
Port SMTP mana yang harus saya gunakan?
Gunakan 587 untuk submission terautentikasi dengan STARTTLS, atau 465 untuk koneksi terenkripsi implisit jika klien Anda mengharapkannya. Port 25 untuk relay server-ke-server dan sering diblokir untuk penggunaan klien langsung. Port SMTP mana yang harus saya gunakan? membandingkan port dan perannya.
Singkatnya
SMTP mengirim dan meneruskan email.
Protokol ini memindahkan pesan dari klien atau aplikasi ke server email berikutnya, lalu melalui hop relay menuju penerima.
IMAP mengambil dan menyinkronkan kotak surat.
Protokol ini memungkinkan klien membaca pesan serta menjaga folder, flag, dan status baca tetap sinkron dengan server.
Kode balasan memberi tahu Anda langkah selanjutnya.
Kode 2xx berarti perintah berhasil, kode 4xx bersifat sementara, dan kode 5xx memerlukan koreksi sebelum mencoba lagi.
Panduan relay SMTP dari Bird membahas pengaturan pengiriman.
Gunakan panduan tersebut untuk host, port, alur autentikasi, dan detail pemecahan masalah khusus SMTP.
