Thư điện tử (như mô tả trong 15.1, "Simple Mail Transfer Protocol" trên
trang 556) có lẽ là ứng dụng TCP / IP được sử dụng rộng rãi nhất. Tuy nhiên, SMTP
được giới hạn văn bản ASCII 7-bit, với chiều dài dòng tối đa 1000 ký tự. Điều này
dẫn đến một số hạn chế, bao gồm:
_ SMTP không thể truyền tải các tập tin thực thi hoặc các đối tượng nhị phân khác. Có quảng cáo
phương pháp hoc của đóng gói các mặt hàng nhị phân trong SMTP bưu phẩm, chẳng hạn như:
- Mã hoá tập tin như là tinh khiết thập lục phân
- Các uuencode UNIX và các tiện ích uudecode, được sử dụng để mã hóa dữ liệu nhị phân trong
các (UUCP) hệ thống gửi thư UNIX-to-UNIX Sao chép
Tuy nhiên, không ai trong số này có thể được mô tả như là một tiêu chuẩn de facto (mặc dù
uuencode / uudecode có lẽ là phổ biến nhất, do vai trò tiên phong
của hệ thống UNIX trong mạng Internet).
_ SMTP không thể truyền tải dữ liệu văn bản mà bao gồm các ký tự ngôn ngữ quốc gia,
bởi vì này được đại diện bởi các điểm mã có giá trị từ 128 (thập phân)
hoặc cao hơn trong tất cả các bộ ký tự dựa trên ASCII.
_ máy chủ SMTP có thể từ chối tin nhắn mail trên một kích thước nhất định. Bất kỳ cho
máy chủ có thể có những hạn chế thường trú hoặc tạm thời, hoặc cả hai, trên tối đa
lượng tử dữ liệu nó có thể chấp nhận từ một khách hàng tại bất kỳ thời điểm nào.
_ Cổng SMTP mà dịch từ ASCII để EBCDIC và ngược lại không
sử dụng một tập quán của ánh xạ trang mã, dẫn đến dịch
vấn đề.
_ Triển khai một số SMTP hoặc đại lý vận tải mail khác (MTA) trong
Internet không tuân thủ hoàn toàn các tiêu chuẩn SMTP được định nghĩa trong RFC
2821. Vấn đề thường gặp bao gồm:
- Loại bỏ các diện ký tự khoảng trắng (tab và không gian).
- Bổ sung các ký tự trắng-không gian để làm cho tất cả các dòng trong một tin nhắn
có cùng độ dài.
- Bao bì của dòng dài hơn 76 ký tự.
- Thay đổi dòng mới trình tự giữa các công ước khác nhau. (Ví
dụ, nhân vật có thể được chuyển đổi sang hoặc là
trình tự).
-. Chuyển đổi các ký tự tab để nhiều không gian
Trang 184
MIME là một dự thảo tiêu chuẩn bao gồm các cơ chế để giải quyết những vấn đề này trong
một cách đó là rất tương thích với các tiêu chuẩn RFC 2822 hiện có. Bởi vì
mail được thường xuyên chuyển tiếp qua cổng email, nó không phải là có thể
cho một khách hàng SMTP để phân biệt giữa một máy chủ quản lý các điểm đến
hộp thư và một trong đó hoạt động như một cửa ngõ vào một mạng khác. Bởi vì mail mà
đi qua một cổng có thể được đường hầm thông qua cổng hơn nữa, một số hoặc
tất cả trong số đó có thể được sử dụng một bộ khác nhau của giao thức nhắn tin, không thể
nói chung cho một SMTP gửi để xác định mẫu số chung thấp nhất
khả năng chung cho tất cả các giai đoạn của các tuyến đường đến hộp thư đích. Đối với điều này
lý do, MIME giả định tồi tệ nhất: vận tải 7-bit ASCII, mà có thể không hoàn toàn
phù hợp với hoặc là tương thích với RFC 2821. Nó không xác định bất kỳ phần mở rộng cho
RFC 2821, nhưng giới hạn bản thân để mở rộng trong khuôn khổ của RFC 2822.
Do đó, một tin nhắn MIME là một trong đó có thể được định tuyến thông qua bất kỳ số lượng
các mạng mà là một cách lỏng lẻo phù hợp với RFC 2821 hoặc có khả năng truyền
RFC 2821 tin nhắn.
MIME có thể được mô tả trong năm phần:
_ Giao thức cho bao gồm cả các đối tượng khác hơn US ASCII text mail trong
các cơ quan của thông điệp phù hợp với RFC 2822. Chúng được mô tả trong
RFC 2045.
_ Cấu trúc chung của hệ thống truyền thông MIME đánh máy, trong đó xác định ban đầu là
tập hợp của các loại phương tiện truyền thông. Điều này được mô tả trong RFC 2046.
_ Một giao thức cho việc mã hóa không phải của Mỹ ASCII văn bản trong lĩnh vực tiêu đề của email
thông điệp phù hợp với RFC 2822. Điều này được mô tả trong RFC 2047.
_ thủ tục đăng ký IANA khác nhau cho các cơ sở MIME liên quan. Điều này được
mô tả trong RFC 2048.
_
tiêu chuẩn MIME phù hợp. Điều này được mô tả trong RFC 2049.
Mặc dù RFC 2045 cung cấp một cơ chế thích hợp để mô tả không nguyên bản
dữ liệu từ các thư X.400 trong một hình thức đó là tương thích với RFC 2822, nó
không nói như thế nào phần nhắn X.400 sẽ được ánh xạ tới phần nhắn MIME.
Việc chuyển đổi giữa X.400 và MIME được định nghĩa trong RFC 2156 và 2157,
trong đó cập nhật các giao thức cho việc chuyển đổi giữa RFC 822 (lỗi thời bởi
RFC 2822) và X.400.
Các tiêu chuẩn MIME được thiết kế với tổng sau thứ tự ưu tiên:
1. Khả năng tương thích với các tiêu chuẩn hiện hành, chẳng hạn như RFC 2822.
Có hai lĩnh vực mà khả năng tương thích với các tiêu chuẩn trước đó là không
hoàn chỉnh:
- RFC 1049 (là một phần của STD 11) mô tả một Content-Type: lĩnh vực được sử dụng
để chỉ các loại (ASCII text ) dữ liệu trong một cơ thể thông. PostScript hoặc
SGML cho phép một tác nhân thư cho người để xử lý nó cho phù hợp. MIME giữ lại
lĩnh vực này, nhưng thay đổi các giá trị được định nghĩa cho nó. Bởi vì các
phản ứng chính xác cho một đại lý mail trên gặp phải một giá trị không rõ trong
lĩnh vực này về cơ bản là bỏ qua nó, điều này không làm tăng bất kỳ khả năng tương thích lớn
mối quan tâm.
- RFC 934 bàn về đóng gói các thông điệp trong bối cảnh thông điệp
chuyển tiếp và xác định ranh giới đóng gói, hoặc dòng cho thấy sự
khởi đầu và kết thúc của một thông báo đóng gói. MIME giữ lại rộng
khả năng tương thích với RFC 934, nhưng không bao gồm các cơ chế trích dẫn
được sử dụng bởi RFC 934 cho các dòng trong các tin nhắn được đóng gói mà nếu không có thể
bị hiểu sai như boundaries.2
Vấn đề quan trọng nhất là khả năng tương thích rằng hình thức tiêu chuẩn của một MIME
tin là có thể đọc được với một RFC đọc thư 2821-compliant. Trong đó,
mã hóa mặc định cho cơ quan thông điệp MIME là thực hiện không có mã hóa
ở tất cả, giống như RFC 2822.
2. Các ưu tiên tiếp theo là sử dụng mạnh mẽ trên thực tế hiện có. Như đã nói
ở trên, có rất nhiều MTA triển khai rộng rãi trên mạng Internet mà không
tuân thủ STD 10 / RFC 2821. Các cơ chế mã hóa quy định tại RFC
2045 được thiết kế để luôn luôn phá vỡ các bệnh thường gặp nhất (gấp
của dòng ngắn như 76 ký tự và tham nhũng của dấu không gian màu trắng
ký tự) bằng cách chỉ truyền đường ngắn với không được có khoảng trắng
nhân vật và cho phép mã hóa các dữ liệu trong một thời trang an toàn mail.
3. Các ưu tiên xem xét khi thiết kế MIME là dễ dàng mở rộng. RFC
đang được dịch, vui lòng đợi..