2A-SI 5 - Services et Applications 5.2 – L`Email
Transcription
2A-SI 5 - Services et Applications 5.2 – L`Email
2A-SI 5 - Services et Applications 5.2 – L’Email Stéphane Vialle [email protected] http://www.metz.supelec.fr/~vialle Services et applications : email Principes du courrier électronique (1) SMTP SMTP SMTP mailbox client email sender’s mail server receiver’s mail server POP3 ou IMAP Client email • L’application qui a fait le succès initial du Web • Plusieurs protocoles impliqués dans le cheminement complet d’un email • SMTP pour envoyer et acheminer un email sur le réseau jusqu’à la boîte de l’utilisateur • IMAP/POP pour récupérer un email depuis une boîte utilisateur • Des normes de constitution des emails 2 Services et applications : email Principes du courrier électronique (2) SMTP SMTP SMTP mailbox client email sender’s mail server receiver’s mail server POP3 ou IMAP Client email • Concepts de « zones tampons » : les emails sont stockés localement avant émission et après lecture de la boite mail • Concepts de fonctionnement asynchrone : les emails sont envoyés et récupérés des zones tampons par des processus en tâche de fond. 3 1 Services et applications : email Ex. de sessions SMTP et POP sur TCP Serveur Session de courrier SMTP Session Connexion SMTP TCP Connexion TCP Emetteur Serveur de courrier Serveur récepteur de mail Mailbox Session POP Connexion TCP Destinataire 4 Services et applications : email SMTP: le protocole (1) Principes de SMTP (Simple Mail Transfer Protocol) • RFC 821 - 1982 • S’appuie sur TCP (port serveur 25) • SMTP peut faire de l’acheminement des messages de proche en proche vers la boite à lettre du destinataire • SMTP fait du « routage applicatif » par analyse de l’adresse (sendmail) • Commandes/Réponses échangées en mode caractère (à la telnet). 5 Services et applications : email SMTP: le protocole (2) Stratégie de routage de SMTP Historiquement : Des machines offrant le mail n’étaient pas directement reliées à Internet, et n’étaient pas sous TCP/IP SMTP routait les emails de relais SMTP en relais SMTP jusqu’à atteindre Internet et TCP/IP Ensuite les emails étaient routés par TCP/IP directement jusqu’à la mailbox Aujourd’hui : Presque toutes les machines sont sous TCP/IP Le serveur SMTP émetteur d’un mail contacte directement par TCP/IP le serveur SMTP récepteur du mail 6 2 Services et applications : email SMTP: le protocole (3) Stratégie de routage de SMTP Utilisation du routage applicatif de proche en proche : - Pour les machines pas sous TCP/IP … il en reste ! On rejoint alors un relais mail raccordé à TCP/IP - A l’intérieur d’une institution on peut avoir des relais mail pour des raisons de sécurité, de structuration du SI, et pour le traitement des « alias » Relais mail Client mail TCP/IP Relais mail Relais mail Relais mail Institution Emétrice mailbox mailbox Institution Réceptrice 7 Services et applications : email SMTP: le protocole (4) Traitement des alias (et mailing listes) avec SMTP : Les alias mail vont engendrer des pré- et post-traitements des emails (expansion et remplacement) qui vont entrainer des reroutages applicatifs vers de nouveaux destinataires « BdD » alias Émission du courrier par les utilisateurs (tâche de fond) Lecture du courrier en tâche de fond Expansion des alias et acheminement Mailbox courrier entrant Tampon courrier sortant Server SMTP de réception de courrier 8 Services et applications : email SMTP : exemple d’échange Commandes/Réponses de SMTP en mode caractère dupont... Connecting to serveur.societe.com 220 serveur.societe.com >>> HELLO client.societe.com 250-serveur.societe.com Hello client.societe.com, pleased to meet you >>> MAIL From:<[email protected]> 250 <[email protected]>... Sender ok >>> RCPT To:<[email protected]> 250 <[email protected]>... Recipient ok >>> DATA 354 Enter mail, end with "." on a line by itself Bonjour Durand, Comment allez-vous ? signé : Dupont >>> . 250 Message accepted for delivery dupont... Sent Closing connection to serveur.societe.com. >>> QUIT 221 serveur.societe.com closing connection • Emission de [email protected] vers [email protected] • Emis par serveur SMTP « serveur.societe.com » 9 3 Services et Applications Internet POP ou IMAP : lecture des e-mails POP Post Office Protocol • RFC 1939 - 1996 (version 3) • S’appuie sur TCP/IP (port serveur 110) • Accès distant aux boites aux lettres • Commandes/Réponses échangées par Telnet IMAP Internet Message Access Protocol • RFC 2060 - 1996 (version 4) • S’appuie sur TCP/IP (port serveur 143) • Plus sophistiqué que POP3 : – Permet de structurer sa mailbox (dossiers, sous-dossiers) – Permet de taguer un mail (lu/non-lu/important…) – Permet de lire un msg sans les pièces jointes –… Services et Applications Internet Format de msgs email textuels RFC 822 – 1982 (après 733 – 1977) : format d’emails textuels • Lignes d'en-tête, avec qques attributs obligatoires header • Blank line – To : – From : – Subject : body • Corps du message – Data : le “message” en caractères ASCII uniquement Rmq : ne pas confondre les noms des attributs de format des emails avec les commandes de SMTP (souvent proches) 11 Services et Applications Internet Format étendu de msgs email (1) RFC 2045 & 2056 – 1996 format d’emails MIME : Multipurpose Internet Mail Extension • Lignes supplémentaires dans l'en-tête du message pour déclarer un contenu de type MIME MIME version Méthode utilisée pour coder les données Type et sous-type des données multimédia Déclaration de paramètres Données codées From: [email protected] To: [email protected] Subject: Picture of yummy crepe. MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Type: image/jpeg base64 encoded data ..... ......................... ...... base64 encoded data 12 4 Services et Applications Internet Format étendu de msgs email (2) Types et sous-types MIME des données multimédia Texte • Ex de sous-types : plain, html Vidéo • Ex de sous-types : mpeg, quicktime Image • Ex de sous-types : jpeg, gif Application • D'autres données doivent être traitées par le reader avant d'être "visibles" • Ex de sous-types : msword, octet-stream Audio • Ex de sous-types : basic (8-bit mu-law encoded), 32kadpcm (32 kbps coding) 13 Services et Applications Internet Format étendu de msgs email (3) Un peu de vécu des pb de compatibilité des clients mails au format MIME … : • Envoi de mail sous Unix avec emacs • Lecture sous Windows avec Outlook Express Mail avec pièce jointe : tout est ok Mail sans pièce jointe : le corps du mail est vide, et le message se retrouve dans un fichier texte (.txt) en pièce jointe ! 14 5