340 likes | 462 Views
Hálózati Operációs Rendszerek. NFS, AFS, CODA SMB, CIFS DFS LanStore Előadó: Bilicki Vilmos bilickiv@inf.u-szeged.hu www.inf.u-szeged.hu/~bilickiv. Az előző előadás tartalma(1). Virtuális Magánhálózat Fogalma, Felhasználási területe Átviteli megoldások: Internet Protocol Security
E N D
Hálózati Operációs Rendszerek NFS, AFS, CODA SMB, CIFS DFS LanStore Előadó: Bilicki Vilmos bilickiv@inf.u-szeged.hu www.inf.u-szeged.hu/~bilickiv
Az előző előadás tartalma(1) • Virtuális Magánhálózat • Fogalma, Felhasználási területe • Átviteli megoldások: • Internet Protocol Security • Alagút mód • Átviteli mód • Layer 2 Transport Protocol • L2TP/IPSec • Point to Point Transport Protocol • Point-to-Point Protocol • PAP • CHAP • MS-CHAP, MS-CHAP v2 • EAP
Az előző előadás tartalma (2) • AAA - Felhasználó azonosítás, naplózás • Remote Access Dial-Up Service • Internet Authentication Service • Terminal Access Controller Access System
Tartalom • Network File System (NFS) • Andrew File System (AFS) • CODA File System (CODA) • Server Message Bolck (SMB), Common Internet File System (CIFS) • Distributed File System (DFS) • LanStore
Források(1) • NFS: • http://www.cs.sfu.ca/CC/401/tiko/lecnotes/ch4.3.pdf • http://citeseer.ist.psu.edu/cache/papers/cs/27631/http:zSzzSzwww.pdos.lcs.mit.eduzSz6.824zSzpaperszSzsandberg-nfs.pdf/sandberg85design.pdf • AFS: • http://reports-archive.adm.cs.cmu.edu/anon/itc/CMU-ITC-062.pdf • CODA: • http://citeseer.ist.psu.edu/cache/papers/cs/2670/http:zSzzSzwww.cs.cmu.eduzSzafszSzcs.cmu.eduzSzprojectzSzcodazSzWebzSzdocdirzSzwwos2.pdf/satyanarayanan90coda.pdf • http://citeseer.ist.psu.edu/cache/papers/cs/26981/http:zSzzSzwww-2.cs.cmu.eduzSzafszSzcs.cmu.eduzSzuserzSzsatyazSzWebzSzMCSALINKzSzPAPERSzSzkistler92.pdf/kistler92disconnected.pdf
Források(2) • SMB: • http://samba.anu.edu.au/cifs/docs/what-is-smb.html • CIFS: • http://ubiqx.org/cifs/ • http://www.codefx.com/CIFS_Explained.pdf • DFS: • http://www.microsoft.com/resources/documentation/WindowsServ/2003/all/techref/en-us/Default.asp?url=/resources/documentation/windowsServ/2003/all/techref/en-us/W2K3TR_dfs_intro.asp • http://www.microsoft.com/resources/documentation/WindowsServ/2003/all/techref/en-us/Default.asp?url=/resources/documentation/windowsServ/2003/all/techref/en-us/W2K3TR_frs_intro.asp
Elosztott fájl rendszerek • Rendelkezésünkre áll a hálózat • Hogyan tudunk sok klines számára robosztus, skálázható fájl szolgáltatást nyújtani. • Offline fájl kezelés? • Hatékony sávszélesség használat? • Robosztus tárolás? • Skálázható tárolás? • Transzpares tárolás? • Fájl rendszer támogatás? • Biztonság? • Elosztott adminisztráció? • Központosított adminisztráció? • Sebesség?
Hálózati Fájl Rendszer • SUN Network File System (1985) • Eredeti cél: • Heterogén környezetben fájl megosztás • Hardver és OS független • Összeomlás után is működőképes legyen • Transzparens hozzáférés • Unix fájl rendszer szemantika támogatás • Megfelelő teljesítmény • Tulajdonságai: • A kliensek gyorsírótáraznak (fix méretű blokkok, timeout Tc, Tm) • Hálózati átvitel nagy blokkokban • LAN-hoz illeszkedik legjobban • Alkotó elemei: • NFS protokoll • NFS szerver • NFS kliens
NFS alkotóelemek(1) • NFS protokoll • RPC hívás gyűjtemény • Szinkron (jó mert helyi hívásként működik/rossz mert blokkolódik) • Állapotmentes • Minden egyes RPC hívás tartalmaz minden paramétert, nem függ az előzőektől • Kliens és Szerver összeomlás után is egyszerű a dolga: csak újra kell küldeni az utolsó RPC-t. • Nincs open/close • Átviteli protokoll független (mert az RPC az), UDP-t használ • Leggyakrabban az fhandle nevű struktúra közlekedik (ezt persze csak a szerver érti). • Néhány gyakoribb függvény: • lookup(dirfh, name), • (newfh, attr)create(dirfh, name, attr), • (status)remove(dirfh, name), • (status)symlink(dirfh, name, string)
NFS alkotóelemek(2) • NFS szerver • Mivel állapotmentes ezért a hívások visszatérése előtt elment minden adatot a háttértárolóra (így nehézkes a gyorsítótár) • NFS kliens • Transzparens hozzáférés • Mount paranccsal tetszőleges könyvtárhoz csatolható (ezt egyszer kell megtenni) • Virtual File System(VFS) interfész a kernelben • File handle -> i-node • Azért hogy a különböző fájl rendszerek egyformán használhatóak legyenek. • Az egész fájlrendszerre tartalmaz műveleteket • Virtual Node (vnode) interfész fájl műveleteket ír le
VFS/Vnode műveletek • VFS • unmount(vfs) • (vnode)root(vfs) • statfs(vfs) • sync(vfs) • Vnode • open(vnode,flags) • bread(vnode, blockno) • mkdir(dvnode,name) • …
NFS mount szolgáltatás • /etc/exports (rpc.mountd) • mount() -> file handle a könyvtárra • Auto mount • Hard vs. Soft mount
Andrew File System (AFS) • Carnegie Mellon , IBM (1986-1990) • Célok: • Jól skálázható ~ 7000 kliens • Unix fájl rendszerrel többé kevésbé kompatibilis (pl.: írás egy gépen igen, írás több gépen open/close) • Egész fájlokat kezeljen (nem blokk, rekord szintű, max. 2Gbyte) • Ez megfelel a Campus használatnak (nem Adatbázis) • Nagy fájlokat darabokra tördelik • Ha egy gép megnyit egy fájlt akkor le kell másolnia az egészet és a ott tudja csak módosítani • Csak akkor írja vissza a módosítást ha le van zárva a fájl • Kicsi hálózati forgalom • Gyorsírótárazhatja, újrafelhasználhatja a fájlokat • Nagyon hatékony(96-98% találati arány) • Sok kicsi szerver (egy nagy helyett) • Skálázható • Üzembiztos • RPC alapú
AFS elemek(1) • Logikai Kötetek • Fájl csoportok • Tipikusan egy felhasználó fájlai • A mentés, terhelés elosztás, hely elosztás alapegységei • Csak olvasható nézet (programok, …) • RégiFájlok néven elérhetőek az előző napi fájlok • Fájl szerverek • Itt nem lehet közvetlenül hozzáférni a fájlokhoz • Logikai kötetek halmaza • Létrehozás • Klónozás • Mozgatás • Mentés
AFS elemek (2) • Kliensek (Andrew Cache Manager) Venus • Megkeresik, letöltik a fájlokat • Emulálja a Unix fájl rendszert a transzparens működés érdekében • Egy gyökér /cmu (helyszín transzparens) • Ha a gyorstárban van akkor megnyitáskor ellenőrzi a fájl aktualitását • A Close() után a kliens frissíti a szerveren lévő verziót • Callback: • A szerver adott fájl írásakor értesíti azokat a klienseket akik ezt igénylik • A kliensek ekkor cancelled állapotba teszik a fájlt és amikor legközelebb valaki hozzá akar férni akkor frissítik. • Ha többen is írják ugyanazt a fájlt akkor a legutolsó az érvényes, a közbülső változások elvesznek • AFS cellák • /afs alatti könyvtárak • Különálló adminisztratív egységek • Egy számítógép egy cellához tartozhat • Szabályok, konfiguráció, …
CODA fájl rendszer • Nagy elosztott adattár Carnegie Mellon (1989) • Komoly offline támogatás (egy, két nap is!) • Megbízható szerver, megbízhatatlan kliens • Helyszín független • Az AFS utóda • Hibamentes működésben ugyanaz • Hibák esetén robosztusabb (magas rendelkezésreállás) • Ha a szerver nem elérhető csak akkor tagadja meg a hozzáférést egy adott fájlhoz, könyvtárhoz, ha biztos benne, hogy az elavult • Ez konfliktusokhoz vezethet • A konfliktusok elfogadhatóak, ha ritkák, jól detektálhatóak és kezelhetőek • Az érzékeny fájlokra kikapcsolható a magas rendelkezésreállást támogató mehanizmus
Szerver replikáció • Kötet (Volume) a replikáció alapegysége • Fájlok gyűjteménye melyek egy szerveren vannak tárolva és a megosztott névtér egy alfáját alkotják • A szerverek gyűjteményét melyek egy kötetet tartalmaznak kötet tároló csoportnak nevezzük (Volume Storage Group - VSG) • Azon adatokat melyeket nem akarunk magas rendelkezésreálásúnak tudni olyan kötetekben gyűjthetjük melyek nincsennek replikálva • Csak olvasható replikák (AFS örökség) • Elsőosztályú/Második osztályú replikák • Optimista replikáció (Ritkán van a Unix-ban írás ütközés 0,75%) • Hozáférhető kötet tároló csoportnak (Accessible Volume Storage Group - AVSG) – a kliens nyilvántartja • Timeout • Read-one, write-all • Miután a klines befejezte az íást minden ASVG szervernek elküldi az új változatot (Nem terheli a szervereket/ Lassú terjedés) • Preferált szerver (Preferred server) – CPU, .... Ellenőrzi az adat helyességét más szervernél is, ha nem jó akkor új preferált szervert választ • Callback a preferált szerver felé
Kapcsolamentes működés • Az ASVG üres • Transzparens a felhasználó számára • Az online üzemmód a preferált (mobil esetén nem feltétlenül) • Az átmenet transzparens a felhasználó számára • Csak a helyszínen lévő fájlokat használhatja • Ha nem talál valamit a gyorstárban az csak rövid kiesés online üzemódban. Offline üzemmódban a felhasználó megszakításáig próbálkozik. • LRU (Legutoljára használt) gyorstár algoritmus rövid kimaradásoknál (megfelelő: szöveg szerkesztés, programozás, ...) • A felhasználó definiálhat egy prioritás listát a gyorstárban tartandó fájlokról • A klines képes megjegyezni az egyes programoknál használt fájlokat
NetBIOS • PC network IBM ~ 80 entitás számára • Network Basic Input Output System (NetBIOS) szoftver interfész a hardver felé • Jelenlegi szolgáltatásai: • Név (16 bájtos string), dinamikus • UDP 137 • B node, Wins P node • Csoport • Egyedi • Datagram (UDP, TCP csomagolás) • Viszony (TCP 139) • DOS 3.1 NetBIOS API SMB fájl szolgáltatás üzenetek kezelése • Redirector (tábla keresés) • subst, net use • NetBIOS tcp/ip felett NetBT • Network Control Block
Server Message Block • 198x IBM, 1988 Microsoft • Állapot tartó, komplex (nyomtató, üzenet, ...) • Rekord alapú • Protokoll független • TCP/IP felett 445-ös port, NBT felett 139-es port • Univerzális Elnevezési Konvenció UNC • \\gepev\könyvtár\fajl • SMB URL • smb://gepnev/könyvtárnév/fajlnév • Jelenlegi neve CIFS • Offline műveletek támogatása (Hosszú fájl, könyvtár nevek ....)
Distributed File System • Megosztott mappák csoportosítása névterekbe • Egységes nézet, a felahasználó számára nem észrevehető, hogy egyes mappák más-más gépeken vannak • Elszakadhatunk a C:, D: ... –tól • Robosztus megoldás • Támogatja a terhelés elosztást • Active Directory szükséges a használatához • Alapból NetBIOS neveket használ
Használati esetek • Szerver konszolidáció • Alkalmazások publikálása
Terhelés elosztás • Véletlen • Helyen belül • Helyen kívül • Legolcsóbb helyek között • Véletlen
DFS típusai • Tartományi • Önálló
Egy diplomamunka (LanStore) • Mit biztosít: • Kicsi, közepes hálózatok támogatása (< 256 szerver) • Biztonságos • Robosztus • Egyszerű • Decentralizált • Elosztott I/O • Mit nem biztosít: • Skálázhatóság • Helyi tárhoz mérhető hozáférési idő ICAI2004
Részletek • Hálózati réteg • Adat redundancia réteg • Biztonsági réteg • Adatbázis réteg ICAI2004
Adat Redundancia réteg • Hibajavító kódok: • Reed-Solomon • Galois mező műveletek • Típusai • Vandermonde • Cauchy • Teljesítméye egy PIII 800 MHz 256 MByte RAM PC • Eredmények (100 adat csomópont / 25 hibajavító): • GF(2^8) ~ 1,4 Mbyte/s • GF(2^16) ~ 0,58 Mbyte/s • Low-Density Parity-Check codes: • XOR operations • Types: • Systematic • Gallager • IRA
Biztonsági, Adatbázis réteg • Adatbázis: • Metaadatok: • Kivonat • Útvonal • Név • ACL • Digitális bizonyítványok • Önjavító • Biztonság: • PKI • Szimmetrikus titkosítás
Adatbázis • Három adatbázis: • Fájl darab tároló (fájlrendszer) • Azonosítás: • Certificate • Viszony kulcs • Tartalom: • File ID (hash – 20 Mbyte/s) • Name, … Helyi Replikált
Önjavító • A hiányzó UDP csomagokat ki tudjuk számítani • A hiányzó adatokat a kiesett szerverre ki tudjuk számítani
Hálózati réteg • LAN-ra optimalizált: • UDP csomagok • Multicast képesség
Tartalom • Network File System (NFS) • Andrew File System (AFS) • CODA File System (CODA) • Server Message Bolcks (SMB) • Common Internet File System (CIFS) • Distributed File System (DFS) • LanStore
A következő előadások tartalma • Tárló Tömb Hálózat (Storage Array Network - SAN) • Szerepe • Típusai • ISCSI • Hálózati biztonság • Tűzfalak szolgáltatásai és típusai • Proxy szolgáltatásai és típusai • Behatolás detektálása • A félév anyagának áttekintése