Communication asynchrone
Couche application / TCP / IP
Protocole SMTP
RFCs: 821, 822, 1123
Révision en cours à l'IETF (working group drums)
7 bits
NVT-ASCII
Ligne à ligne (CR/LF)
220-mailhost.mondomaine.fr Sendmail 8.6.12/8.6.12 ready at Mon,
30 Oct 1995 15:38:46 +0100
220 ESMTP spoken here
HELO client.autredomaine.fr
250-mailhost.mondomaine.fr Hello client.autredomaine.fr
[193.55.0.1], pleased to meet you
VRFY <postmaster>
250 <postmaster@mailhost.mondomaine.fr>
EXPN <postmaster>
250-<user1@mailhost.mondomaine.fr>
250-<user2@mailhost.mondomaine.fr>
MAIL FROM: <alain.durand@autredomaine.fr>
250 alain.durand@autredomaine.fr... Sender ok
RCPT TO: <jean.dupont@mondomaine.fr>
250 jean.dupont@mondomaineinria.fr... Recipient ok
DATA
354 Enter mail, end with "." on a line by itself
from: <alain.durand@autredomaine.fr>
to: <jean.dupont@mondomaine.fr>
subject: test
sdfsdfs
blah blah
...
.
250 PAA02281 Message accepted for delivery
QUIT
221 mailhost.mondomaine.fr closing connection
Ligne blanche
Corps du message
TO:
CC:
REPLY-TO:
ERROR-TO:
DATE:
RECEIVED
MESSAGE-ID
Pas de structure propre
Texte ascii non structuré
Envoie d'un "mode d'emploi" séparé.
binhex
sun-attachements
Structurer le corps des messages en contenus (body-parts)
Standardiser les différents contenus possibles
Mime-version: 1.0
Seule la version 1.0 est définie à ce jour.
Perte: environ 20 %, selon la nature des données.
NB: Il faut préciser l'alphabet utilisé.
Un codage spécial est prévu pour encoder les fins de lignes.
24 bits explosés en 4 caractères US-ASCII
perte: 30% (fixe)
Avantages sur uuencode:
N'utilise pas hyphen ("-")
Pas d'interférence connue à ce jour avec un MTA
Pas de conflits avec EBCDIC.
Les lignes sont composées de caractères 8 bits
NB: Il faut préciser l'alphabet utilisé.
Problème: comment reconnaitre la fin du message?
Ces contenus sont standardisés en 7 types
Chaque type de contenus est qualifié par un sous-type. Des paramètres peuvent être présent.
MIME-Version: 1.0
From: Nathaniel Borenstein <nsb@bellcore.com>
To: Ned Freed <ned@innosoft.com>
Subject: A multipart example
Content-Type: multipart/mixed;
boundary=unique-boundary-1
This is the preamble area of a multipart message.
Mail readers that understand multipart format
should ignore this preamble.
If you are reading this text, you might want to
consider changing to a mail reader that understands
how to properly display multipart messages.
--unique-boundary-1
...Some text appears here...
[Note that the preceding blank line means
no header fields were given and this is text,
with charset US ASCII. It could have been
done with explicit typing as in the next part.]
--unique-boundary-1
Content-type: text/plain; charset=US-ASCII
This could have been part of the previous part,
but illustrates explicit versus implicit
typing of body parts.
--unique-boundary-1
Content-Type: multipart/parallel;
boundary=unique-boundary-2
--unique-boundary-2
Content-Type: audio/basic
Content-Transfer-Encoding: base64
... base64-encoded 8000 Hz single-channel
mu-law-format audio data goes here....
--unique-boundary-2
Content-Type: image/gif
Content-Transfer-Encoding: base64
... base64-encoded image data goes here....
--unique-boundary-2--
--unique-boundary-1
Content-type: text/richtext
This is <bold><italic>richtext.</italic></bold>
<smaller>as defined in RFC 1341</smaller>
<nl><nl>Isn't it
<bigger><bigger>cool?</bigger></bigger>
--unique-boundary-1
Content-Type: message/rfc822
From: (mailbox in US-ASCII)
To: (address in US-ASCII)
Subject: (subject in US-ASCII)
Content-Type: Text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: Quoted-printable
... Additional text in ISO-8859-1 goes here ...
--unique-boundary-1--
Si le serveur est OK, il repond la liste des services supportes.
250-mailhost.mondomaine.fr Hello client.autredomaine.fr [193.55.0.1], pleased to meet you
250-EXPN
250-SIZE
250-8BITMIME
250 HELP
Exemple:
RCPT TO: <jean.dupont@mondomaine.fr> BODY=8BITMIME
250 <jean.dupont@mondomaine.fr>... Sender and 8BITMIME ok
1864 DS J. Myers, M. Rose, "The Content-MD5 Header Field", 10/24/1995. (Pages=4) (Format=.txt) (Obsoletes RFC1544)
1844 I E. Huizer, "Multimedia E-mail (MIME) User Agent checklist",08/24/1995. (Pages=8) (Format=.txt) (Obsoletes RFC1820)
1830 E G. Vaudreuil, "SMTP Service Extensions for Transmission of Large and Binary MIME Messages", 08/16/1995. (Pages=8) (Format=.txt)
1767 PS D. Crocker, "MIME Encapsulation of EDI Objects", 03/02/1995. (Pages=7) (Format=.txt)
1741 I P. Faltstrom, D. Crocker, E. Fair, "MIME Content Type for BinHex Encoded Files", 12/22/1994. (Pages=6) (Format=.txt)
1740 PS P. Faltstrom, D. Crocker, E. Fair, "MIME Encapsulation of Macintosh files - MacMIME", 12/22/1994. (Pages=16) (Format=.txt)
1653 DS J. Klensin, N. Freed, K. Moore, "SMTP Service Extension for Message Size Declaration", 07/18/1994. (Pages=8) (Format=.txt) (Obsoletes RFC1427)
1652 DS J. Klensin, N. Freed, M. Rose, E. Stefferud, D. Crocker, "SMTP Service Extension for 8bit-MIMEtransport", 07/18/1994. (Pages=6) (Format=.txt) (Obsoletes RFC1426)
1651 DS J. Klensin, N. Freed, M. Rose, E. Stefferud, D. Crocker, "SMTP Service Extensions", 07/18/1994. (Pages=11) (Format=.txt) (Obsoletes RFC1425)
1641 E D. Goldsmith, M. Davis, "Using Unicode with MIME", 07/13/1994. (Pages=6) (Format=.txt, .ps)
1590 I J. Postel, "Media Type Registration Procedure", 03/02/1994. (Pages=7) (Format=.txt) (Updates RFC1521)
1563 I N. Borenstein, "The text/enriched MIME Content-type", 01/10/1994. (Pages=16) (Format=.txt, .ps) (Obsoletes RFC1523)
1556 I H. Nussbacher, "Handling of Bi-directional Texts in MIME", 12/23/1993. (Pages=3) (Format=.txt)
1522 DS K. Moore, "MIME (Multipurpose Internet Mail Extensions) Part Two: Message Header Extensions for Non-ASCII Text", 09/23/1993. (Pages=10) (Format=.txt) (Obsoletes RFC1342)
1521 DS N. Borenstein, N. Freed, "MIME (Multipurpose Internet Mail Extensions) Part One: Mechanisms for Specifying and Describing the Format of Internet Message Bodies", 09/23/1993. (Pages=81) (Format=.txt, .ps) (Obsoletes RFC1341) (Updated by RFC1590)
1496 PS H. Alvestrand, J. Romaguera, K. Jordan, "Rules for downgrading messages from X.400/88 to X.400/84 when MIME content-types are present in the messages", 08/26/1993. (Pages=7) (Format=.txt) (Updates RFC1328)
1437 I N. Borenstein, M. Linimon, "The Extension of MIME Content-Types to a New Medium", 04/01/1993. (Pages=6) (Format=.txt)
1428 I G. Vaudreuil, "Transition of Internet Mail from Just-Send-8 to 8Bit-SMTP/MIME", 02/10/1993. (Pages=6) (Format=.txt)
1427 PS K. Moore, N. Freed, J. Klensin, "SMTP Service Extension for Message Size Declaration", 02/10/1993. (Pages=8) (Format=.txt) (Obsoleted by RFC1653)
1344 I N. Borenstein, "Implications of MIME for Internet Mail Gateways", 06/11/1992. (Pages=9) (Format=.txt, .ps)
1343 I N. Borenstein, "A User Agent Configuration Mechanism For Multimedia Mail Format Information", 06/11/1992. (Pages=10) (Format=.txt, .ps)
1123 S R. Braden, "Requirements for Internet hosts - application and support", 10/01/1989. (Pages=98) (Format=.txt) (STD 3)
0822 S D. Crocker, "Standard for the format of ARPA Internet text messages", 08/13/1982. (Pages=47) (Format=.txt) (Obsoletes RFC0733) (STD 11) (Updated by RFC1327, RFC0987)
0821 S J. Postel, "Simple Mail Transfer Protocol", 08/01/1982. (Pages=58) (Format=.txt) (Obsoletes RFC0788) (STD 10)