Title: Jarett Boxberger
1MIME(Multipurpose Internet Mail Extensions)
2Introduction to MIME
- Multimedia mail is becoming a fact of network
life. - Users not happy with plain text messages.
- Need to send spreadsheets, word processing files,
audio, video, ect. - Ability to create e-mail messages with audio and
other non-textual contents is a new Internet mail
standard that was approved in June of 1992,
called MIME.
3Prior to MIME
- E-mail messages could transmit only 7-bit ASCII
text. - Before MIME it was possible to send audio/video,
however it was vendor specific. - MIME solved all of this.
4What is MIME?
- Offers a way to interchange text in languages
with different character sets, and multimedia
e-mail among different computer systems that use
Internet mail standards. - Developed by Nathaniel Borenstein of Bellcore and
Ned Feed of Innosoft
5Allows you to create Email with
- Multiple objects in a single message
- Text having unlimited line length or overall
length - Character sets other than ASCII, allowing
non-English language messages - Multi-font messages
- Enriched text
- Images
- Audio
- Video
- Other messages (reliably encapsulated)
- Binary or application specific files
- Tar files
- PostScript
- FTPable file pointers
6Newtons Telecom Dictionary says MIME is a
- Standard format for including non-text
information in Internet mail, thereby supporting
the transmission of mixed-media messages across
TCP/IP networks. - Extension of SMPT, covers binary, audio, and
video data. - Standard for transmitting foreign language text
which cannot be represented in plain ACII code.
7How MIME works
- MIME works by using headers.
- These headers are what allow MIME to work on all
types of computer systems. - There are 5 parts to the Header
- MIME-Version
- Content-Type
- Content-Transfer-Encoding
- Content-ID
- Content-Description
8MIME-Version
- Header field used to specify a version of the
MIME standard that the message conforms to. - MIME was written so it could be compatible with
older Internet E-mail standards, in order to have
a mail message recognize a MIME message, a
MIME-version is required at the top level of the
message.
ExampleMIME-Version 1.0
9Content-Type
- Used to specify the type of object that is
enclosed in the message as well as subtype
specifications. - Subtype can have different additional parameters
that provide more detail about the object. - This allows the receiving Mail User Agent to
easily recognize the enclosures sent in the
message.
10Content-Type cont.
- Fields consist of
- Text
- Application
- Multipart
- Message
- Image
- Audio
- Video
- X-TypeName
ExampleContent-Type text/plain
charsetus-ascii
11Content-Type Text
- Represents Textual Information.
- Most important subtype is plain.
- Indicates unformatted text.
- No special software needed to read message
- Another subtype is enriched text
- Document contains different size font, or
something in italic or bold. - Also called formatted text
12Content-Type Application
- Represents information to be processed by a
mail-based application or binary data that cannot
be interpreted by the mail program. - Subtypes include
- Octet-Stream ? encapsulates binary data that is
not identified as another Content-Type. - PostScript ? Indicates a body containing a
postscript document.
13Content-Type Multipart
- Used when sending e-mail messages that contain
multiple parts, each having its own data type. - Subtypes
- Mixed ? processed in sequential order
- Parallel ? processed in parallel (example,
playing audio and video simultaneously) - Alternative ? different body parts present the
same data in multiple formats - Digest ? for multipart entities in which each
part is of type message
14Content-Type Message
- Specifies an encapsulated message.
- Subtypes
- RFC822 ? when encapsulating an entire RFC822
message - Partial ? Used when the mail system will not
allow transmission of a large message all at
once. The message must be broken down into
smaller pieces, this subtype has parameters that
number and allow the receiving computer to put
the message back together. - External-Body ? object is too large for
encapsulation, the body data are not included,
but are referenced to a file on another server.
15Content-Type Image
- Data represents an image format.
- This case a display device such as a graphical
display, fax machine, or printer is required. - Subtypes
- JPEG
- GIF
- TIFF
16Content-Type Audio
- Represents data that isyou guessed it, in an
audio format. - An audio output device is required.
- Subtypes
- Basic ? audio encoded using 8 bit ISDN u-law
- WAV ? Windows sound file
17Content-Type Video
- Indicates the body data contains a moving picture
image, and could also include sound. - Subtype
- MPEG
18Content-Type X-TypeName
- Private Value
- Only used by mutual agreement
- Allows users to define their own values
19Content-Transfer-Encoding
- Content-Type header fields are represented in
8-bit characters or in binary. - Than can cause problems in some mail systems that
dont support multimedia data. - To ensure complete compatibility, all messages
must contain only 7-bit ASCII data in lines no
longer than 1,000 characters. - MIME solves this problem by having the 8-bit
character data or binary data first converted
into 7-bit ASCII data. When the data reaches its
destination the data is then stored back into its
original format.
20Content-Transfer-Encoding cont.
- This portion of the header has 6 fields
- Quoted-Printable
- Base64
- 8-bit
- 7-bit
- Binary
- X-Encoding
ExampleContent-Transfer-Encoding 7bit
21Quoted-Printable
- Intended to represent data that consists of
octets that correspond to printable characters in
the US ASCII character set. - Lines are no longer than 76 characters
- After the 75th character, the line is cut off and
replaced with an sign, which serves as an
escape character.
22Base64
- Encoding scheme used to represent binary data.
- Uses an alphabet which is a 65-character subset
of the US ASCII character set. - Lines are no longer than 76 characters
238-Bit 7-Bit
- 8-Bit means the data may consist of non-ASCII
characters. - 7-Bit means the data consists of US ASCII
characters only, and the lines are less than
1,000 characters in length. - 7-Bit encoding is the default value.
24Binary X-Encoding
- Binary means the message contains non-ASCII
characters and the length of the lines may be
greater than 1,000 characters. - X-Encoding means that the data is not a standard
Content-Transfer-Encoding. Any additional values
must have a name that begin with X-.
25Content-ID Content-Description
- Two header fields that can be used to further
identify and describe the data in a message body.
26What the process looks like
27What MIME Looks like
From - Tue Apr 1 093921 1997Received from
cantor (ppp-phx-15.futureone.com 207.2.43.15)
by future.futureone.com (8.8.2/8.8.0) with ESMTP
id JAA23032 for Tue, 1 Apr 1997 093614 -0700
(MST)Received from cantor (localhost
127.0.0.1) by cantor (8.7.4/8.7.3) with SMTP id
JAA00568 for Tue, 1 Apr 1997 093857
0700Sender chrlsim_at_futureone.comMessage-ID
33413A21.412D43B3_at_futureone.comDate Tue, 01 Apr
1997 093857 -0700 X-UIDL 859912584.000From
Chuck SimmonsOrganization Organized? You
jest!X-Mailer Mozilla 3.01 (X11 U Linux 2.0.0
i486)MIME-Version 1.0To Chuck
SimmonsSubject Test of fromContent-Transfer-Enc
oding 7bitContent-Type text/plain
charsetus-asciiStatus UX-Mozilla-Status
0001Content-Length 367
28Summary
- MIME allows us to send e-mail that contains more
than just ordinary text. - Uses Headers with 5 parts
- MIME-Version
- Content-Type
- Content-Transfer-Encoding
- Content-ID
- Content-Description