zp∞t do archivu Φlßnk∙ |
rejst°φk |
p°edchozφ dφl |
nßsledujφcφ dφl
Ji°φ Peterka: Co je Φφm ... v poΦφtaΦov²ch sφtφch (25):
ReferenΦnφ model ISO/OSI - sedm vrstev
Jak jsme si uvedli v p°edchßzejφcφm dφlu naÜeho
serißlu, dosp∞li tv∙rci referenΦnφho modelu ISO/OSI p°i
sv²ch ·vahßch k zßv∞ru, ₧e optimßlnφ poΦet vrstev sφ¥ovΘho
softwaru bude sedm. JakΘ vrstvy to jsou a jakΘ ·koly majφ
°eÜit? Vezm∞me to postupn∞ zdola nahoru, od nejni₧Üφ vrstvy
k nejvyÜÜφ:
1. Fyzickß vrstva (Physical Layer)
┌kol tΘto vrstvy je zdßnliv∞ velmi jednoduch²
- zajistit p°enos jednotliv²ch bit∙ mezi p°φjemcem
a odesilatelem prost°ednictvφm fyzickΘ p°enosovΘ cesty,
kterou tato vrstva bezprost°edn∞ ovlßdß. K tomu je ovÜem
t°eba vy°eÜit mnoho otßzek p°evß₧n∞ technickΘho charakteru
- nap°. jakou ·rovnφ nap∞tφ bude reprezentovßna logickß
jedniΦka a jakou logickß nula, jak dlouho "trvß" jeden bit,
kolik kontakt∙ a jak² tvar majφ mφt konektory kabel∙, jakΘ
signßly jsou t∞mito kabely p°enßÜeny, jak² je jejich v²znam,
Φasov² pr∙b∞h apod. Problematika fyzickΘ vrstvy proto spadß
spφÜe do p∙sobnosti elektroin₧en²r∙ a technik∙.
2. Linkovß vrstva (Data Link Layer)
Fyzickß vrstva poskytuje jako svΘ slu₧by prost°edky pro
p°enos jednotliv²ch bit∙. Bezprost°edn∞ vyÜÜφ linkovß vrstva
(n∞kdy naz²vanß tΘ₧: spojovß vrstva Φi vrstva datovΘho
spoje) pak mß za ·kol zajistit pomocφ t∞chto slu₧eb
bezchybn² p°enos cel²ch blok∙ dat (velikosti °ßdov∞ stovek
byt∙), oznaΦovan²ch jako rßmce (frames). Jeliko₧ fyzickß
vrstva nijak neinterpretuje jednotlivΘ p°enßÜenΘ bity, je na
linkovΘ vrstv∞, aby sprßvn∞ rozpoznala zaΦßtek a konec
rßmce, i jeho jednotlivΘ Φßsti.
Na p°enosovΘ cest∞ m∙₧e dochßzet k nejr∙zn∞jÜφm
poruchßm a ruÜenφ, v jejich₧ d∙sledku jsou p°ijaty jinΘ
hodnoty bit∙, ne₧ jakΘ byly p∙vodn∞ vyslßny. Jeliko₧ fyzickß
vrstva se nezab²vß v²znamem jednotliv²ch bit∙, rozpoznß
tento druh chyb a₧ linkovß vrstva. Ta kontroluje celΘ rßmce,
zda byly p°eneseny sprßvn∞ (podle r∙zn²ch kontrolnφch
souΦt∙, viz 3. dφl naÜeho serißlu). Odesilateli potvrzuje
p°ijetφ bezchybn∞ p°enesen²ch rßmc∙, zatφmco v p°φpad∞
poÜkozen²ch rßmc∙ si vy₧ßdß jejich op∞tovnΘ vyslßnφ.
3. Sφ¥ovß vrstva (Network Layer)
Linkovß vrstva zajiÜ¥uje p°enos cel²ch rßmc∙, ovÜem
pouze mezi dv∞ma uzly, mezi kter²mi vede p°φmΘ spojenφ. Co
ale d∞lat, kdy₧ spojenφ mezi p°φjemcem a odesilatelem nenφ
p°φmΘ, ale vede p°es jeden Φi vφce mezilehl²ch uzl∙? Pak
musφ nastoupit sφ¥ovß vrstva, kterß zajistφ pot°ebnΘ
sm∞rovßnφ (routing) p°enßÜen²ch rßmc∙, oznaΦovan²ch nynφ ji₧
jako pakety (packets). Sφ¥ovß vrstva tedy zajiÜ¥uje volbu
vhodnΘ trasy resp. cesty (route) p°es mezilehlΘ uzly, a takΘ
postupnΘ p°edßvßnφ jednotliv²ch paket∙ po tΘto trase od
p∙vodnφho odesilatele a₧ ke koneΦnΘmu p°φjemci.
Sφ¥ovß vrstva si tedy musφ "uv∞domovat" konkrΘtnφ
topologii sφt∞ (tj. zp∙sob vzßjemnΘho p°φmΘho propojenφ
jednotliv²ch uzl∙).
4. Transportnφ vrstva (Transport Layer)
Sφ¥ovß vrstva poskytuje bezprost°edn∞ vyÜÜφ vrstv∞
slu₧by, zajiÜ¥ujφcφ p°enos paket∙ mezi libovoln²mi dv∞ma
uzly sφt∞. Transportnφ vrstvu proto zcela odsti≥uje od
skuteΦnΘ topologie sφt∞ a vytvß°φ jφ tak iluzi, ₧e ka₧d²
uzel sφt∞ mß p°φmΘ spojenφ s kter²mkoli jin²m uzlem sφt∞.
Transportnφ vrstv∞ dφky tomu staΦφ zab²vat se ji₧ jen
komunikacφ koncov²ch ·Φastnφk∙ (tzv. end-to-end komunikacφ)
- tedy komunikacφ mezi p∙vodnφm odesilatelem a koneΦn²m
p°φjemcem.
P°i odesφlßnφ dat zajiÜ¥uje transportnφ vrstva
sestavovßnφ jednotliv²ch paket∙, do kter²ch rozd∞luje
p°enßÜenß data, a p°i p°φjmu je zase z paket∙ vyjφmß
a sklßdß do p∙vodnφho tvaru. Dokß₧e tak zajistit p°enos
libovoln∞ velk²ch zprßv, p°esto₧e jednotlivΘ pakety majφ
omezenou velikost.
5. RelaΦnφ vrstva (Session Layer)
┌kolem tΘto vrstvy je navazovßnφ, udr₧ovßnφ a ruÜenφ
relacφ (sessions) mezi koncov²mi ·Φastnφky. V rßmci
navazovßnφ relace si tato vrstva vy₧ßdß na transportnφ
vrstv∞ vytvo°enφ spojenφ, prost°ednictvφm kterΘho pak
probφhß komunikace mezi ob∞ma ·Φastnφky relace. Pokud je
t°eba tuto komunikaci n∞jak °φdit (nap°. urΦovat, kdo mß kdy
vysφlat, nemohou-li to d∞lat oba ·Φastnφci souΦasn∞),
zajiÜ¥uje to prßv∞ tato vrstva, kterß mß takΘ na starosti
vÜe, co je pot°eba k ukonΦenφ relace a zruÜenφ existujφcφho
spojenφ.
6. PrezentaΦnφ vrstva (Presentation Layer)
Data, kterß se prost°ednictvφm sφt∞ p°enßÜφ, mohou mφt
mj. povahu text∙, Φφsel Φi obecn∞jÜφch datov²ch struktur.
JednotlivΘ uzlovΘ poΦφtaΦe vÜak mohou pou₧φvat odliÜnou
vnit°nφ reprezentaci t∞chto dat - nap°. st°ediskovΘ poΦφtaΦe
firmy IBM pou₧φvajφ znakov² k≤d EBCDIC, zatφmco v∞tÜina
ostatnφch pracuje s k≤dem ASCII. Podobn∞ jeden poΦφtaΦ m∙₧e
zobrazovat celß Φφsla v dopl≥kovΘm k≤du, zatφmco jin²
poΦφtaΦ v p°φmΘm k≤du apod. - pot°ebnΘ konverze p°enßÜen²ch
dat mß na starosti prßv∞ tato prezentaΦnφ vrstva.
V rßmci tΘto vrstvy b²vß takΘ realizovßna p°φpadnß
komprese p°enßÜen²ch dat, eventußln∞ i jejich Üifrovßnφ.
7. AplikaΦnφ vrstva (Application Layer)
Koncovφ u₧ivatelΘ vyu₧φvajφ poΦφtaΦovΘ sφt∞
prost°ednictvφm nejr∙zn∞jÜφch sφ¥ov²ch aplikacφ - systΘm∙
elektronickΘ poÜty, p°enosu soubor∙, vzdßlenΘho p°ihlaÜovßnφ
(remote login) apod. ZaΦle≥ovat vÜechny tyto r∙znorodΘ
aplikace p°φmo do aplikaΦnφ vrstvy by pro jejich velkou
r∙znorodost nebylo rozumnΘ. Proto se do aplikaΦnφ vrstvy
zahrnujφ jen Φßsti t∞chto aplikacφ, kterΘ realizujφ spoleΦnΘ
resp. obecn∞ pou₧itelnΘ mechanismy. Uva₧ujme jako p°φklad
prßv∞ elektronickou poÜtu - ta jejφ Φßst, kterß zajiÜ¥uje
vlastnφ p°edßvßnφ zprßv v sφti, je souΦßstφ aplikaΦnφ
vrstvy. Na vÜech uzlov²ch poΦφtaΦφch, kterΘ pou₧φvajφ tent²₧
systΘm elektronickΘ poÜty, je tato Φßst stejnß. U₧ivatelskΘ
rozhranφ systΘmu elektronickΘ poÜty, tedy ta jeho Φßst, se
kterou u₧ivatel bezprost°edn∞ pracuje a jejφm₧
prost°ednictvφm Φte doÜlΘ zprßvy, odpovφdß na n∞, p°ipravuje
novΘ zprßvy a zadßvß je k odeslßnφ, ji₧ nenφ pova₧ovßna za
souΦßst aplikaΦnφ vrstvy, nebo¥ se m∙₧e v ka₧dΘm konkrΘtnφm
uzlu dosti v²razn∞ liÜit - nap°. ve zp∙sobu svΘho ovlßdßnφ
(°ßdkov²mi p°φkazy Φi pomocφ r∙zn²ch menu, s okΘnky Φi bez
nich apod.). Jin²m nßzorn²m p°φkladem m∙₧e b²t emulace
terminßl∙, pot°ebnß nap°. pro vzdßlenΘ p°ihlaÜovßnφ (remote
login). Ve sv∞t∞ dnes existuje nep°ebernΘ mno₧stvφ r∙zn²ch
terminßl∙, a realizovat pot°ebnΘ p°izp∙sobenφ mezi
libovoln²mi dv∞ma typy terminßl∙ je v podstat∞ nemo₧nΘ.
Proto se zavßdφ jedin² "referenΦnφ" terminßl - tzv.
virtußlnφ terminßl - a pro ka₧d² konkrΘtnφ typ terminßlu se
pak vytvo°φ jen jedinΘ p°izp∙sobenφ mezi tφmto virtußlnφm
terminßlem a terminßlem skuteΦn²m. Prost°edky pro prßci
s virtußlnφm terminßlem p°itom jsou souΦßstφ aplikaΦnφ
vrstvy (nebo¥ jsou vÜude stejnΘ), zatφmco prost°edky pro
jeho p°izp∙sobenφ konkrΘtnφmu terminßlu ji₧ souΦßstφ
aplikaΦnφ vrstvy nejsou.
zp∞t do archivu Φlßnk∙ | rejst°φk |
p°edchozφ dφl |
nßsledujφcφ dφl
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