120 likes | 200 Views
Torusni svičevi. W. J. Dally et al . (Avici Systems), “Internet Switch Router,” US 2002/0044560 A1, Apr. 18, 2002.
E N D
Torusnisvičevi • W. J. Dally et al. (Avici Systems), “Internet Switch Router,” US 2002/0044560 A1, Apr. 18, 2002. • P. P. Carvey (Avici Systems), “System and Method for Implementing Source Based and Egress Based Virtual Networks in an Interconnection Network,” US 2002/0049901 A1, Apr. 25, 2002. • W. J. Dally et al. (Avici Systems), “Internet Switch Router,” US 2003/0118048 A1, Jun 26, 2003.
Torusnisvič • Torusni svič, odnosno ruter,se sastoji iz N ruterčića. Svaki od ruterčića je povezan sa 6 susednih ruterčića, te tako ima 7 portova (jedan eksterni i 6 internih). Svaki ruterčić prima pakete sa jednog ulaza rutera i šalje pakete na jedan izlaz rutera. • Interni linkovi su kratki i cena rutera linearno raste sa brojem portova. • Svaki ruterčić ima svoje koordinate brojano u hopovima (ruterčićima od datog ruterčića).
Veze u torusnomsviču • Svaki ruterčić ima svoje koordinate brojano u hopovima (ruterčićima od datog ruterčića). • Ruterčić (x,y,z) je povezan sa ruterčićima ((x-1)mod Dx,y,z), (x,(y-1)mod Dy,z), (x,y,(z-1)mod Dz), ((x+1)mod Dx,y,z), (x,(y+1)mod Dy,z), (x,y,(z+1)mod Dz). • Ruterčići se nalaze na linijskim karticama rutera. • Može se mapirati numeracija portova i koordinata ruterčića na ovim portovima, npr:
Intrarutiranje u torusnomsviču • Paket je podeljen na flitove jednake dužine. Svaki flit jednog paketa je rutiran po istoj putanji. • Putanja paketa se najčešće (npr. u Avici ruteru) određuje kada paket stigne u ruter. Tada se svakom flitu doda u zaglavlje niz izlaza koje na svom putu treba da odabere. • Postoji više vrsta rutiranja • Minimalno rutiranje = rutiranje po najkraćoj putanji • Rutiranje sa balansiranjem = biranje jedne od više (npr. najkraćih) putanja na slučajan način • Adaptivno rutiranje = paketima se ne bira putanja odmah, već se paket kreće po najkraćoj putanji na kojoj su baferi slobodni.
B A Minimalno rutiranje u torusu • Između dva ruterčića ima tipično više najkraćih putanja, dve ako se razlikuju u dve koordinate, 6 ako se razlikuju u 3 koordinate, a možda i više ukoliko važi |xA-xB|=Dx/2 ili |yA-yB|=Dy/2 ili |zA-zB|=Dz/2. B A
z -x 0 0 1 1 -y 2 y 2 3 3 4 4 x 5 -z 5 6 6 Minimalno rutiranje u torusu • Da bi putanja bila jednoznačno određena, može se odlučiti npr. da paket uvek ide po istom rasporedu pravaca, npr. x-y-z. • Pretpostavimo da se port 0 ruterčića koristi za ulaz i izlaz paketa, port 1 se koristi za +x pravac, 2 za –x, 3 za +y, 4 za –y, 5 za +z, i 6 za –z. • Tada se rutiranje u jednom pravcu, npr. x, vrši prema sledećem algoritmu: • |xB-xA|≤Dx/2 i xB≥xA birati port 1 dok se ne desi xT=xB • |xB-xA|≤Dx/2 i xB<xA birati port 2 dok se ne desi xT=xB • |xB-xA|>Dx/2 i xB≥xA birati port 2 dok se ne desi xT=xB • |xB-xA|>Dx/2 i xB<xA birati port 1 dok se ne desi xT=xB
Procesiranje u ruterčiću • Svaki ruterčić je zasnovan na sviču sa ulaznim baferima. • Flitovi se raspoređuju u virtuelne redove za čekanje (VOQ) prema izlazu na koji su upućeni. Svaki VOQ čuva do dva flita. • Rutiranje je zasnovano na “wormhole” principu: • Kada se oslobodi mesto u nekom VOQ narednog ruterčića, taj ruterčić šalje informaciju da ima mesta u datom VOQ. • Za izlaze se takmiče samo oni flitovi za koje su oslobođena mesta u sledećem ruteru. • Raspoređivanje flitova se može vršiti na razne načine. Npr: svaki izlaz ima brojač cjza izbor ulaza, svaki ulaz ima brojač di za izbor VOQ. Izlaz j bira raspoloživi ulaz po RR koji ima flit i kredit za taj izlaz počev od cj. Izabrani ulazi bira jedan VOQ u kome ima flit i kredit počev od di. Neka je to VOQ k. cj←(i+1) mod 7, di← (k+1) mod N. Izlazi biraju ulaze sekvencijalno, jedan posle drugog.
Blokiranje u torusnim svičevima • Različiti ulazno-izlazni parovi mogu deliti link, pa ga mogu i zagušiti iako nije izlaz nije zagušen. Dakle može doći do blokiranja. • Npr., na slici tokovi od A do B i od C do D dele link EF. • Ako su protoci tokova A-B i C-D jednaki r, capacitet linka EF mora biti dva puta veći, tj. 2r. U suprotnom ukoliko interni linkovi imaju isti kapacitet kao spoljni linkovi doći će do blokiranja, sa verovatnoćom od 50%. F E
Najgori slučaj blokiranja • Pretpostavimo da je matrica saobraćaja: • gde je Pi permutaciona matrica. Tada je zagušenje na linku: • Gde je zi(l) zagušenje na linku l kada je matrica saobraćaja rPi, dakle:
Dy/2 Dz/2 Dx/2 Dx/2 Dz/2 Najgori slučaj blokiranja • Pretpostavimo da je Dx=Dy=Dz=D, a rutiranje prati smerove z-y-x. • U najgorem slučaju preko linka ide min(Dy·Dz/2, Dy·Dx/2)= =D2/2=N2/3/2 • N=1000 => z(l)=50r.
Torusnisvičevi • Torusni svič je multistepeni. • Svaki ulazno-izlazni modul ima svoj svič preko koga je povezan sa 6 susednih ulazno-izlaznih modula. • Prednost ove arhitekture je da se lako proširuje. • Mana ovakvog sviča je da je blokirajući, i unosi dugo kašnjenje paketa. • Ne zna se ništa o tome koliko fer servis pruža ova arhitektura.