VyÜlo v t²denφku: | CHIPweek |
╚φslo: | 4/97 |
Datum: | 21. ledna 1997 |
Strana: | 23 |
Rubrika/kategorie: | Principy poΦφtaΦov²ch sφtφ |
Modul: | P°enosovΘ techniky |
Dφl: | 6 |
Váprvnφm p°iblφ₧enφ si m∙₧eme °φci, ₧e switching je variantou p°epojovßnφ paket∙ na ·rovni linkovΘ vrstvy, tedy jednou záforem p°epojovßnφ rßmc∙. To, co tuto variantu charakterizuje, je samoz°ejm∞ konkrΘtnφ mechanismus fungovßnφ - pro sprßvnΘ pochopenφ switchingu je ale vhodn∞jÜφ vyjφt spφÜe zámotivace, kterß ke vzniku tΘto techniky vedla. Jeliko₧ ale p°φsluÜnß motivace spadß spφÜe do oblasti vzßjemnΘho propojovßnφ sφtφ, kterou se budeme podrobn∞ji zab²vat vánßsledujφcφm modulu, vezm∞me to jen struΦn∞: srovnejme si poslßnφ mostu (jako "klasickΘho" za°φzenφ zajiÜ¥ujφcφho p°epojovßnφ rßmc∙ na ·rovni linkovΘ vrstvy), a tzv. switch-e (kter² takΘ zajiÜ¥uje p°epojovßnφ rßmc∙ na ·rovni linkovΘ vrstvy, ale na bßzi switchingu).
Hlavnφm ·kolem mostu je propojovat mezi sebou dφlΦφ Φßsti jednΘ a tΘ₧e lokßlnφ sφt∞, nejΦast∞ji jednotlivΘ kabelovΘ segmenty (souvislΘ ·seky kabel∙). Typicky jde o takovΘ sφt∞, kterΘ jsou budovßny na koaxißlnφm kabelu, majφ tudφ₧ fyzicky sb∞rnicovou topologii, a d∙vody pro jejich rozd∞lenφ na vφce segment∙ jsou spφÜe technickΘ (nap°φklad maximßlnφ mo₧nß dΘlka souvislΘho kabelu). Vápraxi pak b²vß takov²chto dφlΦφ segment∙ várßmci jednΘ sφt∞ n∞kolik mßlo (nap°φklad dva, t°i, ...), a most mß za ·kol propojovat tyto segmenty takov²m zp∙sobem, aby byl mo₧n² p°enos dat mezi nimi (k tomu se vyu₧φvß jeho schopnost p°edßvat data zájednoho segmentu do druhΘho, kterou jsme si minule oznaΦili jako tzv. forwarding). Krom∞ toho se ale most sna₧φ chovat i dostateΦn∞ inteligentn∞ a ned∞lat n∞kterΘ zbyteΦnΘ v∞ci - pokud nap°φklad zjistφ, ₧e urΦit² rßmec je adresovßn p°φjemci ve stejnΘm segmentu, ve kterΘm se nachßzφ i jeho odesilatel, domyslφ si ₧e p°φsluÜn² rßmec nemß smysl Üφ°it i do dalÜφch segment∙, a tak to ned∞lß (tuto schopnost jsme si minule oznaΦili jako tzv. filtrovßnφ). V²sledkem je pak to, ₧e v∞tÜina "provozu" se odehrßvß lokßln∞ vájednotliv²ch segmentech sφt∞, a vzßjemnß komunikace mezi segmenty (a jejich vzßjemnΘ ovliv≥ovßnφ) je minimalizovßna na nejni₧Üφ nutnou mφru.
Vápraxi ovÜem nemusφ nastßvat v²Üe popsan² ideßlnφ stav, kdy ka₧d² jednotliv² uzel mß svou vlastnφ p°φpojku, kterou nemusφ sánik²m sdφlet. Mφsto toho mohou switche propojovat i takovΘ segmenty, kterΘ jsou "zabydleny" vφce poΦφtaΦi (tj. jsou jimi sdφleny), a majφ tedy urΦitou mφru Φist∞ lokßlnφho provozu. OvÜem Φφm vφce "zabydlen²" ka₧d² segment bude, tφm menÜφ budou v²hody p°inßÜenΘ technikou switchingu, a tφm vφce se bude chovßnφ switche blφ₧it chovßnφ klasickΘho mostu.
Nynφ ji₧ si m∙₧eme °φci, ₧e tzv. switching, neboli princip fungovßnφ switch-e, nenφ principißln∞ odliÜn² od zp∙sobu fungovßnφ b∞₧nΘho mostu. Rozdφl zde nenφ vákvalit∞, jako spφÜe vákvantit∞ - typickΘ switche majφ vφce rozhranφ (port∙) pro p°ipojenφ jednotliv²ch segment∙, a vyÜÜφ (rychlejÜφ) b²vajφ i jejich p°epojovacφ schopnosti. Mß-li toti₧ switch slou₧it zejmΘna tomu, aby komunikujφcφ uzly m∞ly kádispozici maximßlnφ mo₧nou p°enosovou kapacitu, bylo by nevhodnΘ tuto jejich komunikaci zpomalovat Φi jinak zdr₧ovat.
Jak jsme si ji₧ takΘ naznaΦili minule, p°epojovßnφ na ·rovni linkovΘ vrstvy (kterΘ provßdφ switch) je relativn∞ jednoduÜÜφ (oproti sm∞rovßnφ), a m∙₧e tudφ₧ b²t i dostateΦn∞ rychlΘ. Zde se p°itom ·sp∞Ün∞ vyu₧φvß mo₧nosti realizovat celΘ toto p°epojovßnφ na ·rovni linkovΘ vrstvy p°φmo technick²mi prost°edky, hardwarem optimalizovan²m pro takov²to ·Φel (zatφmco sm∞rovßnφ se stßle jeÜt∞ °eÜφ programov²mi prost°edky). Dnes se proto mohou b∞₧n∞ vyrßb∞t a prodßvat switche, kterΘ majφ opravdu velmi vysokΘ p°epojovacφ schopnosti a slibujφ v²raznΘ zv²Üenφ celkovΘ propustnosti sφt∞ (p°i vcelku ·nosnΘ cen∞). OvÜem jejich skuteΦn² p°φnos je v₧dy ovlivn∞n dalÜφmi faktory - zejmΘna tφm, kolik uzl∙ je vájednotliv²ch segmentech, a jak² je charakter jejich vzßjemnΘ komunikace. N∞kdy m∙₧e nasazenφ switche opravdu v²znamn∞ zrychlit komunikace vádanΘ sφti, zatφmco vájinΘ sφti m∙₧e b²t celkov² p°φnos t°eba i nulov².
A₧ doposud jsme u vÜech podob mechanismu p°epojovßnφ paket∙ p°edpoklßdali, ₧e fungujφ na principu store & forward - neboli ₧e ka₧d² jednotliv² blok dat je váka₧dΘm p°estupnφm uzlu nejprve cel² naΦten, a teprve pak zpracovßn. Váp°φpad∞ switch∙, kter²m dost zßle₧φ na rychlosti, to ale nemusφ b²t zrovna nejvhodn∞jÜφ. Proto n∞kterΘ switche pou₧φvajφ ke svΘmu fungovßnφ pon∞kud jin² princip, kterΘmu se °φkß cut-through (zatφmco jinΘ z∙stßvajφ u p∙vodnφho principu store&forward).
Princip cut-through spoΦφvß vátom, ₧e p°epojovacφ uzel (switch) neΦekß na naΦtenφ celΘho p°enßÜenΘho bloku dat, a sna₧φ se jej zpracovat co mo₧nß nejrychleji. VákonkrΘtnφm p°φpad∞ (p°edpoklßdejme EthernetovΘ rßmce) si poΦkß jen na naΦtenφ hlaviΦky EthernetovΘho rßmce, ze kterΘ ji₧ dokß₧e poznat co mß sácel²m blokem dat ud∞lat, a okam₧it∞ takΘ svΘ rozhodnutφ naplnφ. To pak vápraxi znamenß, ₧e p°φsluÜn² rßmec zaΦne pr∙b∞₧n∞ odesφlat váp°φsluÜnΘm v²stupnφm sm∞ru jeÜt∞ vádob∞, kdy jej zájinΘho sm∞ru sßm teprve p°ijφmß! Odsud takΘ z°ejm∞ pochßzφ oznaΦenφ celΘho principu - anglickΘ "through" znamenß "skrz", a cel² switch se pro p°enßÜen² rßmec vájistΘm smyslu stßvß "pr∙chozφ skrz" (i kdy₧ sájist²m mal²m zpo₧d∞nφm, odpovφdajφcφm dob∞ nutnΘ pro naΦtenφ hlaviΦky rßmce).
Hlavnφ v²hodou principu cut-through je garance, ₧e rßmec projde p°estupnφm uzlem (switchem) za pevn∞ danou dobu (kterß je navφc hodn∞ malß), zatφmco váp°φpad∞ principu store&forward nic takovΘho zaruΦeno nenφ. Princip cut-through je proto v²hodn∞jÜφ pro p°enos r∙zn²ch multimedißlnφch formßt∙ a obecn∞ pro p°enos dat váreßlnΘm Φase, kde ΦasovΘ zßvislosti jsou velmi d∙le₧itΘ. Mezi nev²hody naopak pat°φ skuteΦnost, ₧e switch fungujφcφmu na principu cut-through musφ p°enßÜet i poÜkozenΘ rßmce (kter² by p°enßÜet nemusel). D∙vodem je to, ₧e poÜkozenφ lze poznat a₧ ze zabezpeΦovacφho ·daje, kter² se typicky nachßzφ a₧ na konci datovΘho rßmce - ale switch fungujφcφ na principu cut-through se musφ rozhodnout a zaΦφt p°enßÜet rßmec jeÜt∞ d°φve, ne₧ sßm tento zabezpeΦovacφ ·daj p°ijme.