Pernahkah kalian berpikir bagaimana email itu
dapat dikirim dan diterima kita sebagai pengguna?. Tulisan blog kali ini akan membahas
bagaimana sebuah email dapat dikirim dan diterima user melalui sebuah jaringan.
Jaringan yang digunakan dalam melakukan transaksi pertukaran data pada email
adalah model jaringan TCP/IP. Email bekerja dalam beberapa protocol yang
biasanya digunakan, yaitu POP3 (Post Office Protocol), IMAP (Internet Message
Access Protocol) dan yang sekarang umum digunakan adalah SMTP (Simple Mail
Transfer Protocol). Pada tulisan kali ini, akan dibahas protocol yang paling
umum digunakan yaitu SMTP.
SMTP muncul karena desain sistem email yang
mengharuskan adanya server surat elektronik yang menampung sementara sampai
surat elektronik diambil oleh penerima yang berhak untuk mengaksesnya. Ketika
email dam mail transfer agent yang lain menggunakan SMTP untuk mengirim dan
menerima pesannya, client atau pengguna biasanya menggunakan POP (Post Office
Protocol) atau IMAP (Internet Message Access Protocol) untuk mengakses kotak
surat mereka pada mail server. SMTP bisa
kita ibaratkan adalah sebuah kantor pos. Ketika kita ingin mengirimkan sebuah
email, komputer akan mengarahkan email yang akan kita kirim kedalam SMTP
server, untuk diarahkan kembali ke mail server tujuan. Sedangkan Mail server
bisa kita ibaratkan adalah kotak surat yang ada di rumah kita. Email-email yang
telah dikirimkan akan menempati kotak pos itu sampai ketika kita sebagai orang
yang berhak untuk membuka kotak pos itu dapat mengambilnya.
SMTP merupakan protocol
yang hanya dapat melakukan pengiriman email dari client tetapi tidak dapat
melakukan pengambilan email di server oleh client. Pengambilan email tersebut
hanya dapat dilakukan dengan menggunakan protocol khusus yaitu POP3 (Post
Office Protokol) atau IMAP (Internet Message Access Protocol).
Dalam melakukan transmisi pengiriman melalui SMTP, alur yang digunakan adalah sebagai berikut:
SMTP Pengirim melakukan koneksi TCP/IP dengan SMTP penerima dan menunggu server untuk mengirim pesan 220 yang menandakan pelayanan terhadap pesan sudah siap atau pesan 421 pelayanan tidak siap. HELO (kependekan dari hello) dikirim oleh server dengan menunjukkan nama domain. Pengirim akan memulai memberikan perintah kepada SMTP dimana apabila SMTP mendukung perintah tersebut akan membalas dengan pesan 250 OK. Memberikan informasi kepada SMTP tentang tujuan dari email dengan perintah RCPT TO dilanjutkan dengan alamat email yang dituju. Setelah tujuan diset, dilanjutkan dengan perintah DATA yang menunjukkan bahwa baris berikutnya adalah isi dari email dengan diakhiri dengan CRLF. Client mengisikan data sesuai dengan pesan yang akan dikirimkan hingga mengisikan CRLF kembali untuk menandakan berakhirnya data. Pengirimkan akan menghentikan kegiatan dengan memberi perintah QUIT.
Dalam melakukan transmisi pengiriman melalui SMTP, alur yang digunakan adalah sebagai berikut:
SMTP Pengirim melakukan koneksi TCP/IP dengan SMTP penerima dan menunggu server untuk mengirim pesan 220 yang menandakan pelayanan terhadap pesan sudah siap atau pesan 421 pelayanan tidak siap. HELO (kependekan dari hello) dikirim oleh server dengan menunjukkan nama domain. Pengirim akan memulai memberikan perintah kepada SMTP dimana apabila SMTP mendukung perintah tersebut akan membalas dengan pesan 250 OK. Memberikan informasi kepada SMTP tentang tujuan dari email dengan perintah RCPT TO dilanjutkan dengan alamat email yang dituju. Setelah tujuan diset, dilanjutkan dengan perintah DATA yang menunjukkan bahwa baris berikutnya adalah isi dari email dengan diakhiri dengan CRLF. Client mengisikan data sesuai dengan pesan yang akan dikirimkan hingga mengisikan CRLF kembali untuk menandakan berakhirnya data. Pengirimkan akan menghentikan kegiatan dengan memberi perintah QUIT.
Sedangkan dalam
melakukan penerimaan atau pengambilan email dari server melalui protocol POP3
alurnya adalah sebagai berikut:
Server memulai layanan POP3 dengan
mendengarkan permintaan pada TCP
port 110. POP3 server mengirim greeting
(kata pembuka). Client akan memberikan command (perintah) ke server
dan POP3 server akan memberikan response (jawaban) sampai
hubungan ditutup atau digagalkan. Client mengirim nama
dan password user ke server untuk membuktian
keaslian user tersebut agar dapat mengambil mail-nya. Ketika client telah
berhasil membuktikan identitas asilnya, server akan memperoleh informasi yang
berhubungan dengan mail yang dimiliki client tersebut, dan sesi selanjutnya
memasuki tahap transaction yaitu proses penerimaan email, pendaan email untuk
penghapusan, pembatalan penandaan untuk penghapusan, dan penampilan statistic
email. Pada saat client telah memberikan perintah quit untuk mengakhiri
hubungan, maka sesi selanjutnya adalah sesi update yaitu server akan
menjalankan semua perintah yang diperoleh selama sesi transaction dan menutup
sesi dan akhirnya hubungan TCP diputus.
Begitulah bagaimana caranya sebuah email dapat ditransfer, semoga tulisan kali ini dapat bermanfaat, terimakasih.