Elektronická pošta
Schéma e-pošty odesilatel UA
disk SMTP
fronta dopisů
disk
MTA
SMTP MTA
adresát UA
disk POP IMAP
SMTP poštovní schránka
disk
MTA
UA (User Agent) rozhraní pro uživatele MTA (Message Transfer Agent) zajišťuje dopravu dopisů
Simple Mail Transfer Protocol (SMTP) ●
RFC 821, formát dopisu a adresy v RFC 822
●
dopis –
obálka: přepravní informace, interní pro MTA, uživatel se o ní nedozví
–
hlavičky: používá UA, kdo poslal, kudy prošlo, věc,… z nich vychází řada funkcí UA, jako uspořádání dopisů, odpověď odesilateli apod.
–
tělo: vlastní dopis pro uživatele
From
[email protected] Mon May 19 08:53:40 2003 Received: from bubo.vslib.cz (147.230.16.1) by tyto.vslib.cz (Mercury 1.44) with ESMTP; 19 May 03 08:53:09 +0200 Received: from relay.xyz.cz (relay.xyz.cz [123.24.128.45]) by bubo.vslib.cz (Postfix) with ESMTP; Mon, 19 May 2003 08:53:09 +0200 Received: from xyz.cz (office.xyz.cz [123.24.132.67]) by relay.xyz.cz (Postfix) with ESMTP; Mon, 19 May 2003 08:53:11 +0200 Date: Mon, 19 May 2003 08:53:09 +0200 From: "Vitezslav T. Se'm"
To: Petr Adamec Cc: [email protected] Subject: Spam pres buba?
Zde je text tela dopisu.
prázdný řádek odděluje hlavičky od těla
SMTP komunikace
A: 220 bubo.vslib.cz SMTP service ready B: HELLO relay.xyz.cz
relay.xyz.cz (B) předává dopis na bubo.vslib.cz (A) B naváže TCP spojení s A, po němž proběhne následující výměna SMTP zpráv:
A: 250 bubo.vslib.cz says hello to relay.xyz.cz B: MAIL FROM: A: 250 sender ok B: RCPT TO: A: 250 recipient OK B: DATA A: 354 Enter mail, end with "." on a line by itself B: celý dopis – hlavičky a tělo B: . A: 250 message sent B: QUIT A: 221 relay.xyz.cz closing connection
e-mail a DNS ●
používá DNS ke zjištění kam posílat poštu pro danou doménu
●
MX záznamy (Mail eXchange) MX priorita počítač
●
dopis pro [email protected] –
vyhledá v DNS MX záznamy pro vslib.cz: MX
0
bubo.vslib.cz
MX
50
rs.cesnet.cz
–
pokusí se předat (po SMTP) na bubo.vslib.cz
–
neuspěje-li, zkouší servery s horší prioritou
Vzdálený přístup ke schránce ●
schránka je umístěna na počítači s cílovým MTA – musí být stále dostupná
●
UA může být na jiném počítači (typické pro komutovaný přístup)
●
Post Office Protocol (POP)
●
–
umí stáhnout dopisy na lokální počítač a vymazat je ze schránky
–
jednoduchý, široce implementovaný
Interactive Mail Access Protocol (IMAP) –
vzdálená práce se schránkami, větší možnosti, složitější
–
ideální je kombinovat jej se SSL (bezpečnost)
Multipurpose Internet Mail Extensions (MIME) ●
dle RFC 822 smí tělo dopisu tvořit jen ASCII (7b)
●
problémy: akcentované znaky, přílohy
●
MIME zakóduje složitý dopis do podoby vyhovující RFC 822 – lze přepravovat stávajícími MTA
●
implementuje klient (UA) – kóduje/dekóduje
●
rozšiřující hlavičky –
Mime-Version (je použit MIME)
–
Content-Type (jakého typu je obsah)
–
Content-Transfer-Encoding (jak je kódován)
MIME typy ●
typ/podtyp –
typ určuje charakter
–
podtyp formát
●
text – textová informace (text/plain, text/html)
●
image – obrázek (image/gif, image/jpeg)
●
audio – zvuk (audio/basic)
●
video – videosekvence (video/mpeg)
●
application – data určená ke zpracování speciální aplikací (application/octet-stream obecná binární data, application/postscript)
MIME typy ●
message – obsahem je jiný dopis (message/rfc822, message/partial, message/external-body)
●
multipart –obsah má několik částí –
multipart/mixed – prezentovat po sobě
–
multipart/parallel – prezentovat paralelně (obraz a hudba)
–
multipart/digest – každou částí je elektronický dopis (např. pro souhrn komunikace v konferenci)
–
multipart/alternative – tentýž obsah v alternativních formátech, prezentovat ten nejlepší
World-Wide Web
Složky WWW ●
uspořádání klient–server
●
HyperText Transfer Protocol (HTTP) –
●
protokol pro komunikaci mezi klientem a serverem
HyperText Markup Language (HTML) –
jazyk pro definici obsahu stránky
–
v současnosti verze 4, další vývoj zastaven
–
XHTML – převod HTML do XML
Komunikace klient–server uživatel 1. volba stránky
6. zobrazení výsledku 2. HTTP dotaz klient
4. intepretace HTML
GET /index.html HTTP/1.0
server 3. HTTP odpověď HTTP/1.0 200 OK …
5. obstarání doplňkových součástí (obrázky,…)
HTTP ●
bezstavový protokol –
zodpovězením dotazu transakce pro server končí
–
neudržuje stavové informace o klientech
–
další dotaz nedává do žádné souvislosti s předchozími
–
stav si uchovává klient
–
výhody: robustní, snadnější implementace
–
nevýhody: plýtvá, některé služby potřebují stavové informace (pokračování v začaté akci) – klient musí předat serveru
HTTP zprávy ●
formátem připomínají elektronický dopis
●
dotaz: metoda lokátor verze_HTTP
GET / HTTP/1.0
hlavičky (doplňující informace)
Host: www.vslib.cz
prázdný řádek ●
odpověď: verze_HTTP kód popis
HTTP/1.0 200 OK
hlavičky
Content-Type: text/html
prázdný řádek
Content-Length: 1489
tělo tělo odpovědi
Uniform Resource Locator (URL) ●
univerzální adresa
●
struktura:
●
typicky:
schéma:specifická_část http://www.kdesi.cz/doc/help.html
přístupový protokol
●
e-mail:
server
cesta
mailto:[email protected]