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 (35)
Transportnφ vrstva
Hlavnφm ·kolem transportnφ vrstvy referenΦnφho modelu
ISO/OSI je poskytovat efektivnφ p°enosovΘ slu₧by
svΘ bezprost°edn∞ vyÜÜφ (tj. relaΦnφ) vrstv∞. Tyto slu₧by
p°itom mohou mφt spojovan² (connection-oriented) i
nespojovan² (connectionless) charakter. Stejn² charakter
a stejnou podstatu vÜak majφ i slu₧by sφ¥ovΘ vrstvy, kterΘ
transportnφ vrstva sama vyu₧φvß. Do znaΦnΘ mφry analogickΘ
jsou v obou vrstvßch i mechanismy adresovßnφ a °φzenφ toku
dat. Zßkonit∞ se pak nabφzφ otßzka, proΦ je vlastn∞ nutnß
samostatnß transportnφ vrstva, kdy₧ alespo≥ na prvnφ pohled
nenabφzφ nic principißln∞ jinΘho, ne₧ vrstva sφ¥ovß?
![Obrßzek 35.1.](/file/23364/Chip_1997-10_cd.bin/tema/_peterka/gifs/t224c111.gif) |
Obr. 35.1.: P°edstava pr∙chodu dat vrstvami
Odpov∞∩ na tuto otßzku je skryta v obrßzku, kter² jsme
si ukßzali ji₧ ve 32. dφlu, a kter² nynφ pou₧ijeme znovu
jako obrßzek 35.1. Ukazuje toti₧, ₧e komunikace dvou
koncov²ch ·Φastnφk∙ se transportnφ vrstva z·Φast≥uje jen na
obou koncov²ch poΦφtaΦφch, zatφmco v jednotliv²ch meziuzlech
se na p°enosu podφlφ jen t°i nejni₧Üφ vrstvy - fyzickß,
linkovß a sφ¥ovß. V p°φpad∞ rozlehl²ch sφtφ jsou tyto
mezilehlΘ uzly (tΘ₧: uzly IMP, viz 32. dφl) Φasto jen
p°epojovacφmi uzly v rßmci komunikaΦnφ podsφt∞, a vyÜÜφ
vrstvy u nich nemusφ b²t v∙bec realizovßny. Tak je tomu
nap°φklad u v∞tÜiny ve°ejn²ch datov²ch sφtφ, kterΘ jsou
provozovßny nejr∙zn∞jÜφmi spojov²mi organizacemi. A zde je
prßv∞ kßmen ·razu - je-li komunikaΦnφ podsφ¥ majetkem
spojovΘ organizace, musφ u₧ivatelΘ a jejich koncovΘ
(hostitelskΘ) poΦφtaΦe vystaΦit s tφm, co jim komunikaΦnφ
podsφ¥ prost°ednictvφm svΘ sφ¥ovΘ vrstvy nabφzφ. Cht∞jφ-li
n∞co jinΘho - nap°φklad spolehlivou p°enosovou slu₧bu mφsto
nespolehlivΘ, spolehliv∞jÜφ mφsto mΘn∞ spolehlivΘ,
spojovanou mφsto nespojovanΘ apod. - musφ si vÜe pot°ebnΘ
zajistit sami. A to prßv∞ v transportnφ vrstv∞.
K Φemu slou₧φ transportnφ vrstva?
Transportnφ vrstva je tedy v referenΦnφm modelu ISO/OSI
p°edevÜφm proto, aby vyÜÜφm vrstvßm poskytovala kvalitn∞jÜφ
p°enosovΘ slu₧by, ne₧ jakΘ ve skuteΦnosti dokß₧e poskytovat
vrstva sφ¥ovß. SouΦasn∞ s tφm pak m∙₧e u₧ivatele resp. vyÜÜφ
vrstvy odsti≥ovat od konkrΘtnφch specifik pou₧φvanΘ
komunikaΦnφ podsφt∞, od jejφ p°enosovΘ technologie, a
p°edevÜφm pak od vÜech nedokonalostφ podsφt∞. Transportnφ
vrstva je tedy vlastn∞ rozhranφm mezi poskytovateli
p°enosov²ch slu₧eb (komunikaΦnφ podsφtφ) a jejich u₧ivateli
(nejvyÜÜφmi t°emi vrstvami). Je takΘ "poslednφ instancφ",
kterß m∙₧e zm∞nit nespojovan² charakter poskytovanΘ
p°enosovΘ slu₧by na spojovan² a naopak. To je mo₧nΘ ud∞lat
takΘ na ·rovni sφ¥ovΘ vrstvy (jak jsme si naznaΦili ve 33.
dφlu naÜeho serißlu), nikoli vÜak ji₧ na ·rovni vyÜÜφch
vrstev, kterΘ jsou u₧ivateli t∞chto slu₧eb (viz tΘ₧ obrßzek
35.2.)
Sφ¥ovΘ vs. transportnφ spojenφ
![Obrßzek 35.2.](/file/23364/Chip_1997-10_cd.bin/tema/_peterka/gifs/t224c112.gif) |
Obr. 35.2.: SpojovanΘ a nespojovanΘ slu₧by v ISO/OSI modelu
K lepÜφmu pochopenφ ·lohy transportnφ vrstvy nßm pom∙₧e
bli₧Üφ p°iblφ₧enφ rozdφlu mezi transportnφm a sφ¥ov²m
spojenφm. Transportnφ spojenφ (transport connection) je
spojenφ, kterΘ vznikß mezi dv∞ma entitami transportnφ vrstvy
(v p°φpad∞ spojovan²ch slu₧eb). Ve skuteΦnosti je vÜak
realizovßno prost°ednictvφm ni₧Üφch vrstev, tedy
prost°ednictvφm sφ¥ov²ch spojenφ (network connections) jako
spojenφ mezi dv∞ma entitami na ·rovni sφ¥ovΘ vrstvy.
Standardn∞ se ka₧dΘ jednotlivΘ transportnφ spojenφ realizuje
prost°ednictvφm jednoho sφ¥ovΘho spojenφ. Pokud ale
transportnφ spojenφ po₧aduje vyÜÜφ p°enosovou kapacitu, ne₧
jakou dokß₧e zajistit jedno sφ¥ovΘ spojenφ, m∙₧e b²t jedno
transportnφ spojenφ zajiÜ¥ovßno pomocφ vφce spojenφ
sφ¥ov²ch. Transportnφ vrstva se pak starß o rozd∞lenφ
p°enßÜen²ch dat mezi jednotlivß sφ¥ovß spojenφ tak, aby to
pro vyÜÜφ vrstvy bylo transparentnφ (tj. neviditelnΘ).
M∙₧e vÜak nastat i opaΦn² p°φpad. Pokud je zapot°ebφ
vytvo°it vφce transportnφch spojenφ s relativn∞ mal²mi
nßroky na p°enosovou kapacitu, m∙₧e b²t v₧dy n∞kolik z nich
realizovßno prost°ednictvφm jedinΘho sφ¥ovΘho spojenφ.
Takovßto pot°eba nastßvß nap°. p°i pou₧itφ vφce terminßl∙,
z nich₧ ka₧d² vy₧aduje samostatnΘ transportnφ spojenφ se
vzdßlen²ch poΦφtaΦem. Jsou-li ale tyto terminßly pou₧φvßny
spφÜe p°φle₧itostn∞ a jsou-li fyzicky blφzko sebe, m∙₧e b²t
dosti neekonomickΘ z°izovat pro ka₧d² z nich samostatnΘ
sφ¥ovΘ spojenφ. Pot°ebnΘ p°epφnßnφ (multiplexovßnφ) jednoho
sdφlenΘho sφ¥ovΘho spojenφ mezi vφce transportnφch spojenφ
pak zajiÜ¥uje op∞t transportnφ vrstva.
Kvalita slu₧eb sφ¥ovΘ vrstvy
Pro transportnφ vrstvu je velmi podstatnΘ, jakou
kvalitu m∙₧e p°edpoklßdat u slu₧eb, kterΘ jφ poskytuje
sφ¥ovß vrstva. TΘto kvalit∞ pak musφ b²t p°izp∙sobeny
p°enosovΘ protokoly transportnφ vrstvy, majφ-li vyÜÜφ vrstvy
odsti≥ovat od vÜech specifik a nedokonalostφ komunikaΦnφ
podsφt∞ resp. sφ¥ovΘ vrstvy.
Slu₧by sφ¥ovΘ vrstvy se v tΘto souvislosti rozd∞lujφ na
t°i kategorie - viz tabulka 35.3. Do kategorie A pat°φ
sφ¥ovΘ slu₧by, kterΘ ztrßcφ Φi p°enßÜφ s chybou jen zcela
zanedbatelnΘ procento paket∙, a u kter²ch prakticky
nedochßzφ k v²padk∙m ji₧ jednou navßzan²ch spojenφ. TakovΘto
sφ¥ovΘ slu₧by lze pova₧ovat za (tΘm∞°) dokonalΘ,
a transportnφ vrstva pak mß p°i jejich pou₧itφ nejmΘn∞
prßce. Kvality kategorie A dosahujφ sφ¥ovΘ slu₧by n∞kter²ch
lokßlnφch sφtφ, zatφmco v p°φpad∞ rozlehl²ch sφtφ je
kategorie A vzßcn∞jÜφ ne₧ Üafrßn.
Kategorie | Vlastnosti |
A | bez chyb p°i p°enosu paket∙ a bez v²padk∙ spojenφ |
B | bez chyb p°i p°enosu paket∙, s v²padky spojenφ |
C | s chybami p°i p°enosu paket∙, s v²padky spojenφ |
Tabulka 35.3. Kategorie p°enosov²ch slu₧eb na ·rovni sφ¥ovΘ
vrstvy
Do kategorie B spadajφ sφ¥ovΘ slu₧by, kterΘ jsou z
hlediska p°enosu jednotliv²ch paket∙ stejn∞ spolehlivΘ jako
kategorie A, ale u kter²ch dochßzφ Φast∞ji k v²padk∙m
spojenφ. Tedy k situacφm, kdy z r∙zn²ch d∙vod∙ (p°etφ₧enφ,
poruchy hardwaru, chyby v softwaru apod.) dochßzφ k
p°edΦasnΘmu ukonΦenφ (v²padku) d°φve navßzanΘho spojenφ.
Transportnφ vrstva se s tφm dokß₧e ·Φinn∞ vyrovnat
(op∞tovn²m navßzßnφm novΘho sφ¥ovΘho spojenφ) a existenci
v²padk∙ p°ed vyÜÜφmi vrstvami skr²t. Mß s tφm vÜak
samoz°ejm∞ "vφce prßce", ne₧ v p°φpad∞ sφ¥ov²ch slu₧eb
kategorie A. Do kategorie B spadß obvykle v∞tÜina ve°ejn²ch
datov²ch sφtφ na bßzi doporuΦenφ X.25.
Do kategorie C pak pat°φ vÜechny ostatnφ sφ¥ovΘ slu₧by.
Transportnφ vrstva je musφ pova₧ovat za nespolehlivΘ, a
pot°ebnou spolehlivost zajistit sama. Protokoly transportnφ
vrstvy, kterΘ musφ vyu₧φvat slu₧by tΘto kategorie, jsou pak
samoz°ejm∞ neslo₧it∞jÜφ a nejkomplikovan∞jÜφ.
T°φdy transportnφch protokol∙
ReferenΦnφ model ISO/OSI se vyrovnßvß s odliÜnou
kvalitou slu₧eb na ·rovni sφ¥ovΘ vrstvy zavedenφ p∞ti
r∙zn²ch t°φd p°enosov²ch protokol∙ na ·rovni transportnφ
vrstvy (transportnφch protokol∙) - viz tabulka 35.4.
- Do t°φdy 0 (TP0, Transport Protocol class 0) pat°φ
transportnφ protokoly, kterΘ vyu₧φvajφ sφ¥ovΘ slu₧by
kategorie A. Jsou jednoduchou "obßlkou" nad p°φsluÜn²mi
sφ¥ov²mi protokoly, a navφc zajiÜ¥ujφ prakticky jen nezbytnΘ
navazovßnφ a ruÜenφ transportnφch spojenφ.
- T°φda 1 (TP1) p°edpoklßdß pou₧itφ sφ¥ov²ch slu₧eb
kategorie B, a musφ se tedy um∞t vyrovnat s p°φpadn²mi
v²padky spojenφ na ·rovni sφ¥ovΘ vrstvy.
- T°φda 2 (TP2) p°edpoklßdß op∞t pou₧itφ sφ¥ov²ch slu₧eb
kategorie A, tedy takov²ch, kterΘ m∙₧e pova₧ovat za
dostateΦn∞ spolehlivΘ - stejn∞ jako v p°φpad∞ t°φdy 0.
Transportnφ protokoly t°φdy 2 jsou vÜak navφc schopnΘ
zajistit pot°ebnΘ multiplexovßnφ jednoho sφ¥ovΘho spojenφ
mezi vφce spojenφ transportnφch (viz v²Üe).
- T°φda 3 (TP3) je kombinacφ t°φd 1 a 2. P°edpoklßdß
sφ¥ovΘ slu₧by kategorie B, a dokß₧e je multiplexovat mezi
vφce spojenφ transportnφch.
- T°φda 4 (TP4) je urΦena pro pou₧itφ nad sφ¥ov²mi
slu₧bami kategorie C. Transportnφ protokoly tΘto t°φdy musφ
"poΦφtat s nejhorÜφm", a jsou tedy ze vÜech transportnφch
protokol∙ nejslo₧it∞jÜφ a nejkomplikovan∞jÜφ.
T°φda transportnφch protokol∙ | Kategorie sφ¥ov²ch slu₧eb | Funkce |
TP0 | A | jednoduchß obßlka sφ¥ov²ch protokol∙ |
TP1 | B | zotavenφ z v²padk∙ sφ¥ov²ch spojenφ |
TP2 | A | multiplexovßnφ jednoho sφ¥ovΘho spojenφ mezi vφce transportnφch spojenφ |
TP3 | B | multiplexovßnφ a zotavenφ z v²padk∙ |
TP4 | C | detekce a oprava chyb, zotavenφ z v²padk∙ |
Tabulka 35.4.: T°φdy transportnφch protokol∙
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