Flit (počítačové sítě) - Flit (computer networking)

v počítačové sítě, a poletovat (jednotka řízení toku nebo číslice řízení toku) je úroveň odkazu atomový kus, který tvoří a síťový paket nebo proud.[1] První flit, nazývaný flit záhlaví, obsahuje informace o trase tohoto paketu (jmenovitě cílová adresa) a nastavuje chování směrování pro všechny následující flity spojené s paketem. Po záhlaví záhlaví následuje nula nebo více záhybů těla, které obsahují skutečné užitečné zatížení dat. Poslední flit, nazývaný ocasní flit, provede nějaké účetní knihy, aby uzavřel spojení mezi nimi uzly.

A virtuální připojení udržuje stav potřebný ke koordinaci zpracování pohybů paketu. Tento stav identifikuje minimálně výstupní port aktuálního uzlu pro další směrování trasy a stav virtuálního připojení (nečinný, čekající na zdroje nebo aktivní). Virtuální připojení může také zahrnovat ukazatele na výpadky paketu, které jsou ukládány do vyrovnávací paměti na aktuálním uzlu, a počet vyrovnávacích vyrovnávacích pamětí dostupných na dalším uzlu.[2]:237

Propojovací síť: Základy

Rostoucí potřeba výkonu výpočetních systémů přivedla toto odvětví na trh vícejádrový a mnohojádrový aréna. V tomto nastavení je spuštění jádra (programu) rozděleno mezi více procesorů a výpočet probíhá paralelně, čímž je zajištěn výkon s ohledem na dobu provedení. To však znamená, že procesory nyní musí být schopné vzájemně komunikovat a bezproblémově si vyměňovat data a řídicí signály. Jedním přímým přístupem je sběrnicové propojení, skupina vodičů spojujících všechny procesory. Tento přístup však není škálovatelný, protože se zvyšuje počet procesorů v systému.[3] Proto je jádro škálovatelné vysoce výkonné propojovací sítě paralelní počítačová architektura.

Základní terminologie sítě a pozadí

Definice propojovací sítě

Formální definice propojovací sítě

"Propojovací síť je reprezentován silně propojeným řízeným multigrafem, I = G (N, C). Sada vrcholů multigrafu N zahrnuje sadu uzlů prvku zpracování P a sada uzlů routeru RT. Sada oblouků C představuje sadu jednosměrných kanálů (případně virtuálních), které spojují buď procesní prvky se směrovači, nebo vzájemné směrovače ".[4]

Primárním očekáváním propojovací sítě je mít co nejnižší latenci, to znamená, že doba potřebná k přenosu zprávy z jednoho uzlu do druhého by měla být minimální a zároveň umožnit, aby se současně uskutečnilo velké množství takových transakcí.[5] Stejně jako u jiných kompromisů v oblasti konstrukčních návrhů musí propojovací síť splnit tyto vlastnosti při zachování co nejnižších nákladů na implementaci. Po projednání toho, co se od sítě očekává, se podívejme na několik návrhových bodů, které lze vylepšit, abychom získali potřebný výkon.

Základní stavební bloky propojovací sítě jsou její topologie, směrovací algoritmus, strategie přepínání a mechanismus řízení toku.

Topologie : Jedná se o obecnou infrastrukturu propojovací sítě; vzor, ​​ve kterém je připojeno více procesorů. Tento vzor může být buď pravidelný, nebo nepravidelný, ačkoli mnoho vícejádrových architektur dnes používá vysoce pravidelné propojovací sítě.

Směrování Algoritmus : Toto určuje, jakou cestou se zpráva musí vydat, aby zajistila doručení do cílového uzlu. Volba cesty je založena na více metrikách, jako je latence, zabezpečení a počet zapojených uzlů atd. Existuje mnoho různých směrovacích algoritmů, které poskytují různé záruky a nabízejí různé kompromisy výkonu.

Přepínání Strategie : Algoritmus směrování určuje pouze cestu, kterou se zpráva musí vydat, aby dosáhla svého cílového uzlu. Za skutečný přechod zprávy v rámci sítě odpovídá strategie přepínání. V zásadě existují dva typy strategií přepínání, a obvod přepnut síť je síť, kde je cesta vyhrazena a blokována od ostatních zpráv, dokud není zpráva doručena do cílového uzlu. Slavným příkladem sítě s přepojováním okruhů jsou telefonní služby, které vytvářejí okruh pomocí mnoha přepínačů pro volání. Alternativním přístupem je paket přepnut síť, kde jsou zprávy rozděleny na menší kompaktní entity zvané balíčky. Každý paket obsahuje kromě pořadového čísla i část dat. To znamená, že každý paket lze nyní přenést jednotlivě a sestavit v místě určení na základě pořadového čísla.

Řízení toku: Všimněte si, že jsme již dříve stanovili skutečnost, že propojovací sítí může kdykoli proudit více zpráv. Je odpovědností mechanismu řízení toku implementovaného na úrovni routeru, aby rozhodl, která zpráva se dostane do toku a která zpráva bude zadržena.

Charakteristiky a metriky sítě

Každá síť má šířka w, a přenos hodnotit F, které rozhodují o šířka pásma sítě jako b = w * f. Množství dat přenesených v jednom cyklu se nazývá fyzická jednotka nebo phit. Jak je patrné, šířka sítě se také rovná velikosti phit. Proto lze šířku pásma sítě definovat také z hlediska phit / s. Každou zprávu, která má být přenesena, lze rozdělit na menší bloky volaných entit pevné délky balíčky. Pakety mohou být následně rozděleny na jednotky řízení toku zpráv nebo flits.

Potřeba flits

Je důležité si uvědomit, že bity představují logické jednotky informací, zatímco bity představují fyzickou doménu, to znamená, že bity představují počet bitů, které lze paralelně přenášet v jednom cyklu. Zvažte Cray T3D.[6] Má propojovací síť, která využívá řízení toku zpráv na úrovni flitu, přičemž každý flit je složen z osmi 16bitových phits. To znamená, že jeho velikost flit je 128 bitů a velikost phit je 16 bitů. Zvažte také přepínač IBM SP2.[7] Používá také řízení toku zpráv na úrovni flitu, ale jeho velikost flitu se rovná jeho velikosti phit, která je nastavena na 8 bitů.

Stanovení šířky záběru

Všimněte si, že velikost zprávy je dominantním rozhodujícím faktorem (mimo jiné) při rozhodování o šířkách flitů. Na základě velikosti zprávy existují dvě konfliktní možnosti návrhu:

  • Při zachování malé velikosti každého paketu se v takovém případě zvýší počet paketů, čímž se zvýší celkový počet transakcí a zároveň se zmenší velikost každé jednotlivé transakce.
  • Při zachování velké velikosti každého paketu se v takovém případě sníží počet paketů, čímž se sníží celkový počet transakcí a zároveň se zvětší velikost každé jednotlivé transakce.

Na základě velikosti paketů je třeba rozhodnout o šířce fyzického spojení mezi dvěma směrovači. To znamená, že pokud je velikost paketu velká, musí být také zachována velká šířka linky, avšak větší šířka linky znamená větší plochu a vyšší rozptyl energie. Obecně jsou šířky odkazů omezeny na minimum. Šířka odkazu (která také určuje šířku phit) nyní zohledňuje rozhodování o šířce flit.[8]

V tomto okamžiku je důležité si uvědomit, že ačkoli jsou přenosy mezi směrovači nutně konstruovány z hlediska phits, přepínací techniky se zabývají flits.[8] Více podrobností o různých technikách přepínání viz Přepínání červí díry a Přepínání cut-through. Vzhledem k tomu, že většina přepínacích technik pracuje na flits, mají také zásadní vliv na rozhodování o šířce flit. Mezi další určující faktory patří spolehlivost, výkon a složitost implementace.

Příklad

Příklad toho, jak flits funguje v síti

Zvažte příklad toho, jak se pakety přenášejí ve smyslu flits. V tomto případě máme na obrázku paket vysílající mezi A a B. Proces přenosu paketů probíhá v následujících krocích.

  • Paket bude rozdělen na úseky W, X, Y a Z.
  • Vysílací vyrovnávací paměť v A načte první flit Z a odešle jej do B.
  • Poté, co B obdrží Z, B přesune flit z bufferu.
  • Vysílací vyrovnávací paměť v A pak načte další flit Y a odešle ji do B.
  • Pokračujte v provádění výše uvedených akcí, dokud nebudou všechny záblesky přeneseny do B.
  • B poté spojí všechny flity, aby získal celý paket.

souhrn

Flit (jednotky / číslice řízení toku) je jednotkové množství dat, když se zpráva přenáší na úrovni odkazu. Flit může být přijat nebo odmítnut na základně přijímače na základě protokolu řízení toku a velikosti přijímací vyrovnávací paměti. Mechanismus řízení toku na úrovni linky umožňuje přijímači odesílat nepřetržitý tok signálů, aby mohl kontrolovat, zda má nadále odesílat signály nebo přestat posílat zprávy. Když je paket vysílán přes linku, bude muset být paket před zahájením přenosu rozdělen do několika záběrů.[3]

Viz také

Reference

  1. ^ https://www.springer.com/cda/content/document/cda_downloaddocument/9781461407904-c1.pdf
  2. ^ William James Dally; Brian Towles (2004). „13.2.1“. Zásady a praxe propojovacích sítí. Morgan Kaufmann Publishers, Inc. ISBN  978-0-12-200751-4.
  3. ^ A b Solihin, Yan (2009). Základy paralelní počítačové architektury, vícečipové a vícejádrové systémy. Solihin Publishing & Consulting LLC. str. 363.
  4. ^ Duato, J .; Lysne, O .; Pang, R .; Pinkston, T. M. (2005-05-01). „Teorie dynamické rekonfigurace sítě bez zablokování. Část I“. Transakce IEEE na paralelních a distribuovaných systémech. 16 (5): 412–427. doi:10.1109 / TPDS.2005.58. ISSN  1045-9219.
  5. ^ Elsevier. „Parallel Computer Architecture - 1st Edition“. www.elsevier.com. Citováno 2016-12-03.
  6. ^ Scott, Steven L .; Thorson, Greg (01.01.1994). "Optimalizované směrování v Cray T3D". Sborník z prvního mezinárodního semináře o paralelním směrování a komunikaci počítačů. PCRCW '94. London, UK, UK: Springer-Verlag: 281–294. ISBN  978-3540584292.
  7. ^ „Komunikační software a paralelní prostředí IBM SP2“. domino.research.ibm.com. 2001-02-23. Citováno 2016-11-29.
  8. ^ A b Duato, Jose (06.08.2011). Propojovací sítě. Morgan Kaufmann. ISBN  9780123991805.