Hlavní navigace

IBP aneb síťové disky úplně jinak

Pavel Satrapa

Existuje celá řada protokolů a nástrojů pro sdílení disků po síti či přenášení souborů z místa na místo. Návrh IBP (Internet Backplane Protocol) se však radikálně liší od všeho, co jsem kdy v této oblasti viděl. Jeho autoři z laboratoře LoCI University of Utah se pokusili přenést filosofii IP (Internet Protocol) do oblasti ukládání dat.

IBP pochází z laboratoře LoCI (Logistical Computing and Internetworking) University of Utah. Jeho autoři vyšli ze skutečnosti, že základní filosofie Internetu se ukázala být mimořádně úspěšnou. Jaká je její charakteristika? Spojí se linky různých vlastníků. Nad nimi se postaví jednoduchá jednotná vrstva (IP), která skryje technické detaily jednotlivých linek (velikost paketů, lokální adresování či použitý model detekce chyb). Dostupnou přenosovou kapacitu sdílejí všichni účastníci sítě podle aktuální potřeby.

Cílem IBP je použít tyto myšlenky k sestrojení distribuovaného systému pro ukládání dat. Na první pohled to zní poměrně šíleně. Ovšem výsledek je docela zajímavý. Navržený zásobník pro síťové ukládání vypadá takto:

801

Labužníci jistě ocení, že má sedm vrstev. Spodní dvě jsou dány – zahrnují fyzická zařízení (disky, pásky a podobně) a operační systém koncového počítače, který k nim zprostředkovává přístup. Horní dvě vrstvy jsou zatím stále předmětem bádání a vývoje. Konkrétními výsledky a jasnou představou se tedy může pochlubit především prostřední trojice vrstev.

IBP


Základem celé rodiny je IBP, který poskytuje základní nespolehlivou ukládací vrstvu (analogii k IP). Klíčovou roli v IBP vrstvě hrají sklady (depots), které nabízejí ukládací prostor. Kdokoli může přidat do IBP sítě svůj sklad, definovat jeho ukládací politiku a umožnit ostatním ukládat zde data.

Když IBP klient ve službách aplikace potřebuje uložit data, požádá IBP sklad o alokaci odpovídajícího místa. Pro alokovaný prostor se v IBP používá název bajtové pole (byte array). Pokud sklad žádosti vyhoví, přidělí potřebný diskový prostor a jako odpověď pošle klientovi trojici tzv. schopností (capabilities) – pro čtení, zápis a správu.

Schopnost funguje jako klíč do zámku – kdokoli se prokáže odpovídající schopností, může provést tu kterou operaci. Klient proto může získanou schopnost předat dalšímu programu, který tak získá přístup k danému prostoru. Schopnosti jsou pochopitelně přenášeny šifrovaně, aby se zamezilo jejich zneužití.

Z hlediska bezpečnosti je zajímavé, že klient dostává přístup jen k prostoru, který si ve skladu alokoval. Nemá nejmenší tušení, co je uloženo mimo něj, komu to patří, kdy to bylo uloženo a podobně. Zbytek skladu je pro něj naprostým tajemstvím.

Doba uložení je omezená, politika serveru je dána součinem velikosti dat a doby uložení. Malý objem lze tedy uložit na delší dobu než velký. Cílem je bránit se proti zapomenutým datům, která chybná aplikace zapomene vymazat a budou ve skladu strašit navěky (nikdo další už k nim nemá klíč). Po uplynutí doby životnosti sklad může alokovaný prostor uvolnit, aniž by o tom informoval klienta nebo si dokonce žádal o jeho svolení. Ostatně původní klient už dávno nemusí existovat, protože své schopnosti předal jinam a sám skončil.

IBP implementuje dva modely ukládání: tvrdý a měkký. Podle tvrdého budou data uchována skutečně až do doby vypršení své životnosti. Dříve je sklad smí odstranit, jen pokud o ně již nikdo nemá zájem. Schopnost správy alokovaného prostoru totiž umožňuje měnit počet jeho čtenářů/zapiso­vatelů. Klesne-li na nulu, data už nemají žádného konzumenta a lze je bez následků odstranit.

Měkký model ukládání naproti tomu umožňuje skladu odstranit data kdykoli (např. když mu dojde místo). Je proto vhodný například pro realizaci vyrovnávacích pamětí, u nichž se bere jako přínos, když data v paměti najdeme. Ale předem se počítá s variantou, že tam nebudou.

IBP tedy nabízí základní úroveň abstrakce. Skrývá detaily jednotlivých operačních systémů a umožňuje uživatelům (klientům) sdílet dostupný prostor. Pro aplikační využití jsou však jeho služby poměrně primitivní a pracné. Proto máme k dispozici vyšší vrstvy.

L-Bone a NWS


V té nejbližší se řeší jednak volba vhodného skladu a jednak abstrakce síťového souboru. IBP sklady jsou organizovány do virtuální úložné sítě nazvané L-Bone (Logistical Backbone). Sklad se zaregistruje a správa L-Bone udržuje přehled o dostupných skladech a jejich parametrech. Klient pak může požádat o doporučení vhodných skladů.

Ve svém dotazu stanoví velikost a dobu uložení dat a případně regionální umístění skladu. Dostane seznam potenciálně vhodných skladů. Pak nastoupí Network Weather Service (NWS). Tato služba sleduje výkonnostní parametry jednotlivých skladů a umožní klientovi vybrat si ten nejnadějnější.

Dlužno přiznat, že L-Bone se celkem slušně rozvíjí. Zatímco začátkem roku 2002 bylo do sítě zařazeno zhruba 20 skladů s celkovou kapacitou 1 TB, v prosinci se již jednalo o 140 skladů rozptýlených po celém světě. Celková kapacita úložného prostoru činí přes 10 TB.

exUzel


L-Bone a NWS napomáhají klientovi ve volbě serveru, ovšem nesnímají z něj břemeno provádět primitivní IBP operace. To udělá až exUzel, který ztělesňuje abstrakci síťového souboru. Název je odvozen od i-uzlu, známého z operačního systému Unix. Zatímco i-uzel shromažďuje odkazy na diskové bloky, exUzel obsahuje odkazy na alokované IBP zdroje.

Jestliže je uložený soubor rozdělen do tří bajtových polí alokovaných ve dvou různých skladech, exUzel obsahuje adresy jednotlivých částí a odpovídající schopnosti. Z pohledu aplikace je možné „číst soubor“. exUzel se svými obslužnými rutinami se postará o vše potřebné – získá data z jednotlivých IBP skladů a předá je aplikaci v odpovídající podobě.

Na rozdíl od i-uzlu nemusí být všechna datová pole stejně velká. exUzel také umožňuje jejich překrývání a redundanci. Jeden exUzel tedy může obsahovat informace o několika kopiích téhož souboru, rozdělených na nestejně velké části a uložených v nejrůznějších skladech. Vůči aplikaci se stále tváří jako jeden soubor, detaily jeho síťového uložení jsou interní záležitostí exUzlu.

exUzly jsou, stejně jako schopnosti, přenositelné. Lze je převést do podoby XML dokumentu a pak předat jinému programu. Ten může běžet na jiném počítači, a to i pod jiným operačním systémem. Díky XML je exUzel přenositelný mezi různými platformami.

LoRS


Nad L-Bone a exUzly stojí vrstva logistických nástrojů. Je tvořena knihovnami a řádkovými příkazy, které je využívají. Najdete zde služby pro snadné uložení síťového souboru (a vytvoření odpovídajícího exUzlu), jeho načtení, prodloužení platnosti, vytváření a rušení duplikátů.

Zkratka LoRS znamená Logistical Runtime System. Značné možnosti mu dává především práce s replikami souborů. Díky nim lze například realizovat síťové vyrovnávací paměti, kde klient (díky L-Bone a NWS) stahuje nejbližší kopii. Replikace poskytuje samozřejmě ochranu před výpadky. Ať už jednoduchou (použije se jiná kopie odpovídající části souboru), tak rafinovanější v podobě RAID algoritmů a podobných. Do kompetence LoRS patří také šifrování či online komprese ukládaných dat.

Pokud je předem znám konzument, může LoRS vrstva realizovat i směrování souborů. Autor dat je uloží ve skladu, který má poblíž. LoRS vrstva pak vytvoří repliku ve skladu bližším ke konzumentovi a původní exemplář vymaže. Takto mohou data putovat přes několik skladů, až skončí ve skladu blízkém jejich příjemci. Ten je pak snadno a rychle získá.

Lze také paralelně stahovat různé části dat z několika skladů současně a zvýšit tak přenosovou rychlost (pokud nemají společné úzké místo, samozřejmě).

Aplikace


Zatím se spíše hledají. Z podstaty věci je zřejmé, že služby založené na IBP budou vhodné spíše pro ukládání souborů dočasného charakteru. Podařilo se zapojit IBP do několika projektů distribuovaného charakteru – pro ukládání dat a mezivýsledků či vzájemnou komunikaci procesů.

Zajímavou myšlenkou je IBP mail. Jedná se o modifikaci elektronické pošty, kdy vlastní dopis putuje obvyklou cestou, ale jeho přílohy se uloží do IBP skladu. Součástí dopisu pak místo dat jsou jen schopnosti potřebné pro jejich vyzvednutí. Pokud jste někdy dostali dopis s megabajtovou přílohou, kterou jste opravdu nechtěli číst po pomalé lince z domova, asi byste podobnou aplikaci uvítali.

Pokud vás IBP zaujalo, podrobnosti, dokumenty, software a tak najdete na loci.cs.utk.edu.

Anketa

Líbí se vám IBP?

Našli jste v článku chybu?

27. 1. 2003 22:45

Dan Lukes (neregistrovaný)
No, samozrejme, ze lze existenci podobneho systemu zabranit - alespon teoreticky. Kazdy stat, ktery rozhodne, ze provoz serveru tohoto nebo podobneho systemu je sam o sobe (a bez dalsiho) nezakonny (bylo by pravdepodobne pomerne slozite definovat jake servery to vlastne jsou zakazane) a soucasne zablokuje neznamy datovy provoz do zemi, ktere, ktere nemaji prijatou nejakou kompatibilni pravni upravu bude pravdepodobne "v pohode". Otazka je, jaka je realna sance na prijeti jednotne (nebo alespon k…

27. 1. 2003 21:59

David Viktora (neregistrovaný)
Tak tohle by mohlo být některým mocným dost solidní kládou v oku. Navíc je to postavené na příliš svobodném principu - představte si, někdo si může uložit JAKÁKOLIV data KDEKOLIV na Internetu a ta data navíc NELZE smazat před uplynutím příslušné lhůty a NIKDO nezjistí, kdo je tam dal!!! V dnešní době, kdy je životním heslem omezovat svobodu ve jménu bezpečnosti a sledovat každého na každém kroku (viz některé kontroverzní zákony a vyhlášky nedávno přivedené na svět v zemi svobody a demokracie ;-)…
DigiZone.cz: Recenze Westworld: zavraždit a...

Recenze Westworld: zavraždit a...

Měšec.cz: Air Bank zruší TOP3 garanci a zdražuje kurzy

Air Bank zruší TOP3 garanci a zdražuje kurzy

Měšec.cz: Kdy vám stát dá na stěhování 50 000 Kč?

Kdy vám stát dá na stěhování 50 000 Kč?

Vitalia.cz: Vychytané vály a válečky na vánoční cukroví

Vychytané vály a válečky na vánoční cukroví

Měšec.cz: U levneELEKTRO.cz už reklamaci nevyřídíte

U levneELEKTRO.cz už reklamaci nevyřídíte

120na80.cz: Rovnátka, která nejsou vidět

Rovnátka, která nejsou vidět

120na80.cz: Pánové, pečujte o svoje přirození a prostatu

Pánové, pečujte o svoje přirození a prostatu

120na80.cz: Co všechno ovlivňuje ženskou plodnost?

Co všechno ovlivňuje ženskou plodnost?

Podnikatel.cz: Daňové úlevy s EET nestačí. Budou zdražovat

Daňové úlevy s EET nestačí. Budou zdražovat

Root.cz: Mirai má nový cíl 5 milionů routerů

Mirai má nový cíl 5 milionů routerů

120na80.cz: 5 nejčastějších mýtů o kondomech

5 nejčastějších mýtů o kondomech

Root.cz: Nová třída SD karet A1 s vysokým výkonem

Nová třída SD karet A1 s vysokým výkonem

Vitalia.cz: Jsou čajové sáčky toxické?

Jsou čajové sáčky toxické?

Vitalia.cz: To nejhorší při horečce u dětí: Febrilní křeče

To nejhorší při horečce u dětí: Febrilní křeče

Vitalia.cz: Spor o mortadelu: podle Lidlu falšovaná nebyla

Spor o mortadelu: podle Lidlu falšovaná nebyla

Podnikatel.cz: Vládu obejde, kvůli EET rovnou do sněmovny

Vládu obejde, kvůli EET rovnou do sněmovny

120na80.cz: Popraskané rty? Některé balzámy stav zhoršují

Popraskané rty? Některé balzámy stav zhoršují

Vitalia.cz: Mondelez stahuje rizikovou čokoládu Milka

Mondelez stahuje rizikovou čokoládu Milka

Root.cz: Kamery Sony se dají ovládnout na dálku

Kamery Sony se dají ovládnout na dálku

Podnikatel.cz: Chtějte údaje k dani z nemovitostí do mailu

Chtějte údaje k dani z nemovitostí do mailu