Mengapa ukuran email saya sekitar sepertiga lebih besar dari ukuran file yang dilampirkan?

Ketika melampirkan data ke email saya, saya melihat bahwa Thunderbird menghitung ukuran total yang dihasilkan email sebagai jauh lebih besar dari file yang saya lampirkan.

Berikut ini's baru-baru contoh: dua gambar, satu di 13MB dan satu di 3.6 MB harus total menjadi sekitar 17MB. Ada empat baris teks. Thunderbird kemudian meminta saya jika saya benar-benar ingin mengirim email dengan ukuran total 22MB.

Di mana perbedaan itu berasal? 5MB teks kedengarannya seperti agak banyak.

Mengomentari pertanyaan (4)
Larutan

Data anda adalah 17 MiB. Ada 1024 KiB dalam MiB. Ada 1024 B dalam KiB. Ada 8 bit dalam satu byte. Sehingga's 142,606,336 bit.

Base 64 encoding mengkodekan setiap enam bit sebagai terpisah byte. Jadi kita perlu tentang 23,767,722 byte. Membagi dengan 1024 dua kali membuat kita 22.67 MiB. Sehingga's di mana 22 MiB berasal dari.

Email yang cukup lama teknologi dan doesn't mengasumsikan sebuah 8-bit bersih pipa.

Komentar (13)

Mengapa email yang lebih besar?

Karena data yang dikodekan dalam base64 yang mengkode kelompok hingga tiga byte sebagai kelompok dari empat karakter ASCII yang dapat dicetak. Biasanya, kelompok-kelompok ini karakter yang dapat dicetak kemudian dibagi menjadi garis-garis.

Hasilnya adalah bahwa data dikodekan hanya lebih dari 1⅓ kali ukuran data asli.

Mengapa base64 digunakan?

Email memiliki sejarah panjang dan awalnya dirancang untuk membawa teks. Hanya nilai-nilai byte mewakili karakter ASCII yang dapat dicetak dipercaya bisa melewati berbagai sistem email di planet ini.

Jadi MIME divised dua skema encoding data-data lainnya seperti ASCII text - "quoted-printable" dirancang untuk sebagian besar teks ASCII dengan beberapa potongan lain, dan "BASE64" untuk sewenang-wenang data biner.

Sudah ada ekstensi ke protokol SMTP untuk mencoba dan menghapus pembatasan ini. Pertama, 8BITMIME pada tahun 1994, yang memungkinkan lebih tinggi nilai-nilai oktet tapi sayangnya tidak't menghapus batas-batas yang berkaitan dengan panjang garis dan garis ujung, sehingga tidak cocok untuk sewenang-wenang data biner, dan kemudian BINARYMIME pada tahun 1995, yang memungkinkan transfer pesan yang berisi sewenang-wenang data biner.

Namun, standar ini belum melihat adopsi luas. Salah satu masalahnya adalah, apa yang terjadi jika salah satu hop di mail rantai mendukung mereka, tetapi hop berikutnya doesn't? Mail server yang kemudian dapat't mengirim e-mail pada saat-ini, itu harus menolaknya karena tidak terkirim dan mental (yang tidak mungkin dapat diterima untuk pengguna), atau mengubahnya (yang membutuhkan tambahan yang signifikan kode di mail server). Konversi dilakukan terutama menyakitkan oleh MIME aturan mengenai tidak menggunakan transfer konten pengkodean pada beberapa jenis.

Komentar (2)