VyÜlo v t²denφku: CHIPweek
╚φslo:14/97
Datum:1. dubna 1997
Strana:24
Rubrika/kategorie: Principy poΦφtaΦov²ch sφtφ
Modul: Internetworking
Dφl:8

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

Ji°φ Peterka

NovΘ strategie sm∞rovßnφ

Váp°edchozφch dφlech tohoto modulu jsme se podrobn∞ji zab²vali "klasick²mi" p°edstavami o tom, jak rozd∞lit urΦitou soustavu vzßjemn∞ propojen²ch sφ¥ov²ch uzl∙ na dφlΦφ sφt∞, a kde a jak je propojit sm∞rovaΦi, switchi Φi mosty. Tato p°edstava p°itom vychßzela záobecn²ch vlastnostφ p°epojovßnφ na linkovΘ a sφ¥ovΘ vrstv∞, i zákonkrΘtnφch vlastnostφ dnes dostupn²ch sm∞rovaΦ∙, switch∙ a opakovaΦ∙. Sápostupem Φasu se ale vlastnosti a schopnosti t∞chto za°φzenφ m∞nφ, a stejn∞ tak se m∞nφ i po₧adavky provozovatel∙ sφtφ a samotn²ch sφ¥ov²ch aplikacφ. Vásouvislosti sátφm pak dochßzφ káurΦit²m zm∞nßm i váp°edstavßch o tom, jak by m∞la vypadat celkovß architektura soustav vzßjemn∞ propojen²ch sφtφ.

P°ipome≥me si nejprve, váΦem spoΦφvß ji₧ zmφn∞nΘ "klasickΘ" °eÜenφ: vátom, ₧e se zvolφ vhodn∞ velkΘ (Φi malΘ) skupiny uzl∙, kterΘ tvo°φ urΦit² logick² celek, a tyto se mezi sebou propojφ na ·rovni linkovΘ vrstvy, pomocφ switche, tak aby jejich propojenφ bylo co mo₧nß nejvφce propustnΘ a nabφzelo maximßlnφ mo₧nou vzßjemnou konektivitu. Tφm vzniknou jednotlivΘ dφlΦφ sφt∞ (jednotnΘ celky zápohledu sφ¥ovΘ vrstvy), kterΘ se mezi sebou propojφ sm∞rovaΦi. V²sledkem je pak "ostr∙vkovit²" charakter celΘ v²slednΘ soustavy, a sm∞rovßnφ (p°epojovßnφ na ·rovni sφ¥ovΘ vrstvy) je vánich soust°ed∞no jen na okraje jednotliv²ch ostr∙vk∙ - sφtφ.

O nev²hodßch takovΘhoto "klasickΘho" uspo°ßdßnφ" jsme si takΘ ji₧ °φkali: kritΘriφ, podle kter²ch by jednotlivΘ uzly m∞ly b²t seskupovßny do dφlΦφch sφtφ, je vφce - nap°φklad prßce se spoleΦn²mi daty, lokalizace provozu uvnit° skupiny, stejnß oprßvn∞nφ a bezpeΦnostnφ statut apod. - a prakticky nikdy jim nelze optimßln∞ vyhov∞t vÜem. Snad nejv∞tÜφm problΘmem pak b²vajφ fyzickΘ dispozice, kterΘ mnohdy odsouvajφ jinß kritΘria do pozadφ a rozhodujφ o vÜem samy.

DistribuovanΘ sm∞rovßnφ

O jednom mo₧nΘm °eÜenφ problΘmu sáfyzick²mi dispozicemi jsme si ji₧ takΘ °φkali - jsou to virtußlnφ sφt∞ LAN (VLAN), kterΘ dovolujφ za°azovat jednotlivΘ poΦφtaΦe do dφlΦφch sφtφ zcela bez ohledu na jejich fyzickΘ umφst∞nφ.

DalÜφ mo₧nΘ °eÜenφ, kterΘ lze vájistΘm smyslu chßpat i jako zobecn∞nφ principu virtußlnφch sφtφ LAN je tzv. distribuovanΘ sm∞rovßnφ. SpoΦφvß vátom, ₧e se potlaΦφ dosud p°etrvßvajφcφ p°edstava o ostrΘ d∞lb∞ prßce mezi switche a sm∞rovaΦe, a o "vytlaΦenφ" sm∞rovßnφ a sm∞rovaΦ∙ na okraje dφlΦφch sφtφ. MyÜlenka distribuovanΘho sm∞rovßnφ je zalo₧ena na tom, ₧e se sm∞rovacφ funkce pokud mo₧no rovnom∞rn∞ "rozprost°ou" po celΘ sφti. Tφm se dosßhne maximßlnφ mo₧nΘ pru₧nosti p°i logickΘm Φlen∞nφ na jednotlivΘ dφlΦφ sφt∞.

DistribuovanΘ sm∞rovßnφ takΘ vychßzφ záp°edstavy, ₧e p°epojovßnφ na ·rovni linkovΘ vrstvy ("switchovßnφ") i p°epojovßnφ na ·rovni sφ¥ovΘ vrstvy (sm∞rovßnφ) majφ velmi mnoho spoleΦnΘho - ve svΘ podstat∞ jde o p°edßnφ bloku dat zájednoho segmentu do druhΘho, a rozdφl je pouze vátom, na zßklad∞ jak²ch rozhodnutφ se tak d∞je. Na tomto p°φstupu je pak zalo₧ena jedna závariant implementace distribuovanΘho sm∞rovßnφ: varianta, kterß p°edpoklßdß ₧e p°epojovacφm uzl∙m (v∞tÜinou oznaΦovan²ch jako switche) bude dßna schopnost p°epojovßnφ jak na ·rovni linkovΘ vrstvy, tak i na ·rovni vrstvy sφ¥ovΘ. Vlastn∞ tak vznikne kombinace switche a sm∞rovaΦe "v jednΘ krabici", oznaΦovanß obvykle jako tzv. vφce·rov≥ov² switch (multilayer switch).

Wire-speed routing

MyÜlenka zkombinovat p°epojovßnφ na ·rovni linkovΘ a sφ¥ovΘ vrstvy ovÜem narß₧φ na dva nep°φjemnΘ problΘmy. Prvnφm zánich je pomalost sm∞rovßnφ, a druh²m nßroΦnost sprßvy sm∞rovacφch informacφ. Rozeberme si nejprve ten prvnφ.

P°epojovßnφ na ·rovni linkovΘ vrstvy je po strßnce logickΘho rozhodovßnφ pom∞rn∞ jednoduchΘ, a celΘ p°epojovßnφ tak m∙₧e b²t bez v∞tÜφch problΘm∙ °eÜeno hardwarov²mi prost°edky, a tudφ₧ b²t i hodn∞ rychlΘ. Tak rychlΘ, ₧e zpo₧d∞nφ vznikajφcφ pr∙chodem p°es p°epojovacφ uzel (switch) je srovnatelnΘ sárychlostφ p°enosu (u cut-through switch∙ odpovφdß dΘlce p°enosu hlaviΦky rßmce). Ne nadarmo je pak rychlost fungovßnφ switch∙ oznaΦovßna neformßln∞ jako "wire speed" (doslova: rychlost drßtu).

Naproti tomu p°epojovßnφ na ·rovni fyzickΘ vrstvy vychßzφ zámnohem slo₧it∞jÜφch rozhodnutφ, a dosud je typicky °eÜeno programov²mi prost°edky, tj. vásoftwaru, a tudφ₧ i v²razn∞ pomaleji. Dosßhnout rychlosti , kterß by si zaslou₧ila p°φvlastek "wire speed", se da°φ jen velmi v²konn²m, velk²m a drah²m sm∞rovaΦ∙m, zatφmco u ekonomiΦt∞jÜφch model∙ m∙₧e b²t rozdφl várychlostech dosti v²razn² (nap°φklad a₧ desetinßsobn²).

Co je IP switching?

Cφlem v²robc∙ aktivnφch sφ¥ov²ch prvk∙ samoz°ejm∞ je dosßhnout takovΘho stavu, aby p°epojovßnφ na linkovΘ i sφ¥ovΘ vrstv∞ bylo stejn∞ rychlΘ. To by vápraxi znamenalo, ₧e provoz uvnit° sφtφ, zprost°edkovßvan² switchi, by mohl b²t stejn∞ rychl² a se stejn∞ mal²m pr∙chozφm zpo₧d∞nφm (latency) jako provoz mezi sφt∞mi - Φφm₧ by odpadl nßroΦn² a mnohdy obtφ₧n∞ splniteln² po₧adavek volit jednotlivΘ sφt∞ tak, aby v∞tÜina provozu vánich byla lokalizovßna. To by pak znaΦn∞ uvolnilo ruce autor∙m sφtφ, a umo₧nilo mnohem pru₧n∞ji volit architekturu jejich sφtφ.

Dosßhnout tohoto cφle vÜak znamenß zjednoduÜit rozhodovßnφ na ·rovni sφ¥ovΘ vrstvy, tak aby p°φsluÜnß rozhodnutφ mohla b²t provedena snadno a rychle, a t°eba i implementovßna p°φmo v hardwaru. Tφm by se pak mφsto o klasickΘ "sm∞rovßnφ" jednalo spφÜe o "switchovßnφ", by¥ probφhajφcφ na ·rovni t°etφ, tj. sφ¥ovΘ vrstvy. VáodbornΘ literatu°e se takovΘmuto zp∙sobu fungovßnφ zaΦφnß °φkat Layer 3 switching, nebo takΘ IP switching (to proto, ₧e p°eva₧ujφcφm protokolem sφ¥ovΘ vrstvy, kter² by m∞l b²t "switchovßn", je stßle Φast∞ji protokol IP).

Tag switching

Dosßhnout takovΘ efektivnosti a rychlosti fungovßnφ, aby bylo mo₧nΘ hovo°it o IP switchingu, nenφ snadnΘ, a dodnes mezi v²robci nepanuje jednotn² nßzor na to, jak toho dosßhnout. Jeden zámo₧n²ch p°φstup∙ spoΦφvß váopat°enφ p°enßÜen²ch paket∙ zvlßÜtnφmi nßlepkami, podle kter²ch by se pak váp°epojovacφch uzlech p°ijφmala p°φsluÜnß sm∞rovacφ rozhodnutφ. P°i vhodnΘ koncepci t∞chto nßlepek (anglicky: tags) by v∞tÜinu slo₧it²ch rozhodnutφ bylo mo₧nΘ minimalizovat, Φi uΦinit jednorßzov∞ (p°i generovßnφ nßlepek), a pr∙b∞₧nΘ rozhodovßnφ by pak mohlo b²t dostateΦn∞ jednoduchΘ a rychlΘ. Navφc by tento p°φstup nemusel b²t nutn∞ zßvisl² na konkrΘtnφm pou₧φvanΘm sφ¥ovΘm protokolu. Nev²hodou je skuteΦnost, ₧e pro takov²to p°φstup (oznaΦovan² jako tag switching) dnes neexistuje vhodn² standard, a vÜe je zatφm ve stßdiu proprietßrnφch °eÜenφ.

Sm∞rovacφ servery

DalÜφm zajφmav²m p°φstupem je snaha zbavit p°epojovacφ uzly slo₧itΘho rozhodovßnφ tφm, ₧e jim n∞kdo jin² (vhodnß centrßlnφ autorita) doslova naservφruje p°edem p°ipravenß rozhodnutφ, kterß pak zmφn∞nΘ p°epojovacφ uzly pouze co nejrychleji napl≥ujφ. Vápraxi tento p°φstup p°edpoklßdß existenci centrßlnφch uzl∙, vystupujφcφch vároli "sm∞rovacφch server∙" (route servers) a distribuujφcφch pot°ebnΘ sm∞rovacφ informace sv²m klient∙m - switch∙m. P°edstava je zde takovß, ₧e kdy₧ si n∞jak² switch nevφ rady sán∞jak²m paketem, kter² by m∞l zpracovat na ·rovni sφ¥ovΘ vrstvy, zeptß se sm∞rovacφho serveru. Ten mu poradφ, switch se podle toho zachovß, a po urΦitou dobu si radu sm∞rovacφho serveru pamatuje a opakovan∞ ji pou₧φvß.

MyÜlenka sm∞rovacφch server∙ navφc °eÜφ i nep°φjemn² problΘm s aktualizacφ sm∞rovacφch informacφ, o kterΘ se musφ jednotlivΘ sm∞rovaΦe vzßjemn∞ d∞lit, resp. pravideln∞ si je ve vzßjemnΘ souΦinnosti up°es≥ovat (nap°. pomocφ protokol∙ RIP, OSPF apod.). TakΘ kátomu je zapot°ebφ urΦitß inteligence, kterou je v²hodnΘ soust°edit do jednoho uzlu, a nechat ostatnφ a¥ se soust°edφ zase na rychlost. Podobn∞ je tomu i se sprßvou - p°i pou₧itφ sm∞rovacφch server∙ m∙₧e b²t veÜkerß sprßva soust°ed∞na do jednoho mφsta, zatφmco v²konnΘ switche mohou b²t za°φzenφ nevy₧adujφcφ v∙bec ₧ßdnou sprßvu.


zp∞t do archivu Φlßnk∙ | rejst°φk | p°edchozφ Φ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