VyÜlo v t²denφku: CHIPweek
╚φslo:33/96
Datum:13. srpna 1996
Strana:13
Rubrika/kategorie: Principy poΦφtaΦov²ch sφtφ
Modul: Sφ¥ov² model TCP/IP
Dφl:5

zp∞t do archivu Φlßnk∙ | rejst°φk | p°edchozφ Φlßnek | nßsledujφcφ Φlßnek

Ji°φ Peterka

Protokoly TCP/IP (II.)

V minulΘm dφlu jsme se seznßmili s nejd∙le₧it∞jÜφmi protokoly TCP/IP, kterΘ spadajφ do ni₧Üφch vrstev (sφ¥ovΘ a transportnφ), a naznaΦili jsme si jejich celkovou filosofii. Dnes se ji₧ dostaneme k prvnφmu orientaΦnφmu pohledu na nejd∙le₧it∞jÜφ protokoly TCP/IP, pat°φcφ do aplikaΦnφ vrstvy.

Nabφdka aplikaΦnφch protokol∙ v rßmci TCP/IP je opravdu bohatß, a neustßle se rozÜi°uje. Vedle dnes ji₧ äklasick²ch" aplikacφ, jako je vzdßlenΘ p°ihlaÜovßnφ, p°enos soubor∙ Φi elektronickß poÜta, se toti₧ zaΦφnajφ prosazovat i slu₧by zcela novΘ, a pro jejich fungovßnφ jsou samoz°ejm∞ nezbytnΘ i zcela novΘ protokoly. ZaΦn∞me ale od poΦßtku, aplikaΦnφmi protokoly kterΘ byly souΦßstφ TCP/IP od ·plnΘho zaΦßtku (a n∞kdy majφ dokonce jeÜt∞ starÜφ ko°eny ne₧ samotnß rodina protokol∙ TCP/IP).

VzdßlenΘ p°ihlaÜovßnφ - Telnet

Pot°eba vzdßlenΘho p°ihlaÜovßnφ (anglicky: remote login) je v rßmci TCP/IP °eÜena protokolem Telnet. Ten se v souladu s celkovou filosofiφ TCP/IP sna₧φ spφÜe o jednoduchost, univerzßlnost a minimßlnφ vazbu na okolnφ systΘmovΘ prost°edφ, tak aby umo₧nil vzßjemnou spoluprßci (formou vzdßlenΘho p°ihlaÜovßnφ) i dosti odliÜn²m platformßm. Prost°ednictvφm Telnetu se nap°φklad m∙₧ete p°ihlßsit k UnixovskΘmu poΦφtaΦi, p°iΦem₧ vßÜ poΦφtaΦ, vystupujφcφ v roli vzdßlenΘho terminßlu, m∙₧e b²t velmi jednoduch²m PC s MS DOSem, v²konn∞jÜφm PC s MS Windows, nebo znovu Unixovsk²m poΦφtaΦem Φi n∞Φφm jeÜt∞ ·pln∞ jin²m. Stejn∞ tak dob°e se ale m∙₧ete p°ihlßsit (prost°ednictvφm Telnetu) t°eba k sßlovΘmu poΦφtaΦi, k poΦφtaΦi VAX apod. D∙le₧itΘ je to, aby systΘmovΘ prost°edφ vzdßlenΘho poΦφtaΦe podporovalo terminßlovΘ relace a vzdßlenΘ p°ihlaÜovßnφ prost°ednictvφm Telnetu (aby zde byl implementovßn tzv. Telnet dΘmon) - co₧ t°eba Unix b∞₧n∞ Φinφ, ale nap°φklad MS Windows (vΦetn∞ Windows NT) nikoli.

Podstatn²m rysem protokolu Telnet je jeho rozÜi°itelnost - na schopnosti obou komunikujφcφch stran se zcela zßm∞rn∞ sna₧φ klßst co mo₧nß nejmenÜφ nßroky, tak aby Üanci m∞l i velmi ähloup²" (tj. jednoduch²) klient. Pokud ale proti sob∞ stojφ dva uzly s dokonalejÜφmi schopnostmi, mohou se vzßjemn∞ dohodnout na jejich pou₧φvßnφ. P°φkladem m∙₧e b²t vztah k p°enosu jednotliv²ch znak∙ v rßmci sedmi Φi osmi bit∙ - Telnet standardn∞ poΦφtß s tφm, ₧e jednotlivΘ znaky jsou p°enßÜeny jako sedmibitovΘ (co₧ mj. Φinφ znaΦnΘ problΘmy ΦeskΘ diakritice). Pokud ale ob∞ komunikujφcφ strany dokß₧φ pracovat s osmibitov²mi znaky, mohou se dohodnout na zm∞n∞, a p°edßvat si osmibitovΘ znaky.

P°enos soubor∙ - FTP a TFTP

Pro p°enos soubor∙ je v rodin∞ protokol∙ TCP/IP urΦen protokol FTP (File Transfer Protocol). Jeho koncepce je pom∞rn∞ starΘho data (dokonce starÜφ ne₧ samotnΘ TCP/IP), a pamatuje jeÜt∞ na n∞kterΘ skuteΦnosti, kterΘ jsou dnes ji₧ dosti äpasΘ" - nap°φklad na rozdφlnΘ velikosti byt∙ na obou stranßch p°enosu. P°esto se ale protokol FTP s ·sp∞chem pou₧φvß dodnes, pro p°enos cel²ch soubor∙ mezi dv∞ma uzlov²mi poΦφtaΦi sφt∞, nap°φklad pro ästahovßnφ" soubor∙ z nejr∙zn∞jÜφch anonymnφch FTP archiv∙ (kterΘ byly podle protokolu FTP dokonce pojmenovßny).

Jednou z d∙le₧it²ch vlastnostφ protokolu FTP je jeho pov∞domφ o u₧ivatelφch, adresß°φch a p°φstupov²ch prßvech: u₧ivatel, kter² chce prost°ednictvφm protokolu FTP odn∞kud n∞kam p°enßÜet n∞jakΘ soubory, se musφ vzdßlenΘ stran∞ nejprve identifikovat (p°ihlßsit se, pod urΦit²m u₧ivatelsk²m jmΘnem), a svou identitu prokßzat (zadßnφm sprßvnΘho hesla). Vzdßlenß strana pak mß podle Φeho posuzovat oprßvn∞nost po₧adavk∙ na p°φstup ke konkrΘtnφm soubor∙m. P°i p°enosu soubor∙ prost°ednictvφm protokolu FTP je tedy mo₧nΘ realizovat nejr∙zn∞jÜφ p°φstupovΘ strategie.

ObdobnΘ vlastnosti naopak postrßdß dalÜφ protokol, kter² je v rodin∞ protokol∙ TCP/IP urΦen takΘ p°enos soubor∙. Jde o protokol TFTP, neboli Trivial File Transfer Protocol. Jak ji₧ jeho nßzev napovφdß, jde o zjednoduÜenou obdobu protokolu FTP, ochuzenou prßv∞ o pojmy u₧ivatele, p°φstupov²ch prßv, a dokonce i o pojem aktußlnφho adresß°e. Chcete-li odn∞kud n∞kam p°enΘst soubor prost°ednictvφm protokolu TFTP, musφte v₧dy explicitn∞ zadat ·plnou p°φstupovou cestu k po₧adovanΘmu souboru (a nelze nap°φklad pou₧φt p°φstupovou cestu relativnφ, vzta₧enou k aktußlnφmu adresß°i). Oprßvn∞nost vaÜeho po₧adavku navφc nenφ podle Φeho posuzovat (jeliko₧ TFTP neznß pojem u₧ivatele), a je proto ponechßno na konkrΘtnφ implementaci, jak se k n∞mu druhß strana zachovß. V∞tÜinou vßm vyhovφ kladn∞ pouze v p°φpad∞, kdy po₧adovan² soubor je b∞₧n∞ p°φstupn² pro vÜechny u₧ivatele. V praxi je protokol TFTP pou₧φvßn zejmΘna bezdiskov²mi stanicemi k tomu, aby si z p°φsluÜnΘho serveru änatßhly" sv∙j operaΦnφ systΘm (ve form∞ tzv. bootovacφho image).

El. poÜta

Zßkladnφ koncepce elektronickΘ poÜty je v rßmci rodiny protokol∙ TCP/IP definovßna jednak protokolem SMTP (Simple Mail Transfer Protocol), a jednak standardem RFC821. Tento standard definuje formßt zprßv, p°enßÜen²ch elektronickou poÜtou, do Φeho₧ spadß mj. i zp∙sob adresovßnφ a formßt adres (proto se v tΘto souvislosti hovo°φ i o adresovßnφ ß la RFC821). Protokol SMTP se pak t²kß konkrΘtnφho zp∙sobu p°enosu jednotliv²ch zprßv mezi poÜtovnφmi servery.

D∙le₧itou vlastnostφ elektronickΘ poÜty, definovanΘ standardem RFC821 a protokolem SMTP (a oznaΦovanΘ obvykle jako tzv. SMTP poÜta) , je orientace na p°enos Φist∞ textov²ch zprßv tvo°en²ch sedmibitov²mi znaky (tzv. Φist²mi ASCII znaky). AΦkoli p°enosovΘ cesty obvykle dokß₧φ p°enßÜet osmibitovΘ znaky a mnohΘ implementace SMTP poÜty s nimi dokß₧φ pracovat, obecn∞ to zaruΦeno nenφ. Pak staΦφ jedinΘ äsedmibitovΘ ·zkΘ hrdlo" v celΘm p°enosovΘm °et∞zci, aby z obsahu p∙vodn∞ osmibitovΘ zprßvy zbylo jen hodn∞ mßlo jejφho p∙vodnφho obsahu.

LidΘ ale pot°ebujφ p°enßÜet prost°ednictvφm elektronickΘ poÜty v prost°edφ TCP/IP (tj. prost°ednictvφm tzv. SMTP poÜty) i takovΘ v∞ci, kterΘ nemajφ charakter Φist∞ textov²ch zprßv, tvo°en²ch pouze sedmibitov²mi znaky. Nap°φklad binßrnφ (datovΘ) soubor, programy, ale takΘ formßtovanΘ texty, texty s nßrodnφch abecedßch apod. Jeliko₧ ale p°enosov² mechanismus el. poÜty garantuje korektnφ p°enos pouze pro sedmibitovΘ znaky, musφ b²t vÜe ostatnφ pro pot°eby p°enosu zak≤dovßno prßv∞ do tΘto podoby (tj. do podoby posloupnosti sedmibitov²ch znak∙).

Pokud se vÜechny komunikujφcφ strany sprßvn∞ dohodnou, je v zßsad∞ jedno, jakΘ konkrΘtnφ k≤dovßnφ pou₧ijφ. V praxi se pak nejvφce ujalo tzv. uuencodovßnφ, pochßzejφcφ jeÜt∞ z doby existence protokol∙ UUCP (Unix-to-Unix Copy Protocol). To se sice stalo jist²m nepsan²m standardem, kter² dokß₧e vyhov∞t pot°ebßm p°enosu jednotliv²ch netextov²ch p°φloh k textov²m zprßvßm, ale stßle jeÜt∞ nejde o systematick² p°φstup, kter² by v∞c °eÜil zßsadnφm zp∙sobem, formou vÜeobecn∞ uznßvanΘho a akceptovanΘho standardu. To d∞lß a₧ nov∞jÜφ standard MIME (Multipurpose Internet Mail Extensions), kter² lze chßpat jako rozÜφ°enφ p∙vodnφ koncepce elektronickΘ poÜty. Jak u₧ nßzev tohoto standardu napovφdß, poΦφtß s existencφ nejr∙zn∞jÜφch formßt∙ vΦetn∞ multimedißlnφch, a Φinφ z elektronickΘ poÜty dosti univerzßlnφ p°enosov² kanßl.

Standard MIME v zßsad∞ definuje t°i v∞ci:

Jak uvidφme pozd∞ji, n∞kterΘ mechanismy a konvence standardu MIME se pou₧φvajφ i jinde, ne₧ jen v elektronickΘ poÜt∞ - nap°φklad kdy₧ WWW server posφlß svΘmu klientovi (browseru) n∞jakß data, musφ k nim p°ipojit takΘ informaci o typu t∞chto dat. A prßv∞ k tomu pou₧φvß konvence standardu MIME (tzv. MIME type).

Standard MIME je jednφm z nov∞jÜφch p°φr∙stk∙ ve sv∞t∞ TCP/IP, a je motivovßn p°edevÜφm soudob²m rozvojem Internetu a pot°ebami jeho u₧ivatel∙. Stejn²m d∙vod∙m vd∞Φφ za sv∙j vznik i dalÜφ protokoly, kterΘ jeÜt∞ takΘ souvisφ s elektronickou poÜtou. Jde nap°φklad o celou skupinu protokol∙, kterΘ dovolujφ vzdßlen²m u₧ivatel∙m (nejΦast∞ji s p°ipojenφm komutovan²mi linkami ve°ejnΘ telefonnφ sφt∞) stahovat si jejich elektronickou poÜtu z poÜtovnφch server∙, na kterΘ jim jejich poÜta dochßzφ. V souΦasnΘ dob∞ je k tomuto ·Φelu nejvφce pou₧φvßn protokol POP (Post Office Protocol) verze 3. P∙vodnφ protokol SMTP nenφ k tomuto ·Φelu pou₧iteln² proto, ₧e p°edpoklßdß trvalou existenci spojenφ, a pak takΘ proto, ₧e nedovoluje ov∞°it identitu u₧ivatele, kter² by si jeho prost°ednictvφm stahoval svou poÜtu.


zp∞t do archivu Φlßnk∙ | rejst°φk | p°edchozφ Φlßnek | nßsledujφcφ Φlßnek
Tento Φlßnek m∙₧e b²t voln∞ Üφ°en, pokud se tak d∞je pro studijnφ ·Φely, na nev²d∞leΦnΘm zßklad∞ a se zachovßnφm tohoto dov∞tku. Podrobnosti hledejte zde, resp. na adrese http://archiv.czech.net/copyleft.htm