1 / 28

Operációs rendszerek

Operációs rendszerek. SUN Network File System (NFS). SUN Network File System (NFS). Elosztott állományrendszer: SUN cég (USA), első változata 1985, szabadon elérhető protokoll és referencia-implementációk, szinte szabvány az elosztott állományrendszere. A SUN NFS jellemző tulajdonságai.

Download Presentation

Operációs rendszerek

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Operációs rendszerek SUN Network File System (NFS)

  2. SUN Network File System (NFS) • Elosztott állományrendszer: • SUN cég (USA), • első változata 1985, • szabadon elérhető protokoll és referencia-implementációk, • szinte szabvány az elosztott állományrendszere.

  3. A SUN NFS jellemző tulajdonságai • A kliens-szerver modell alkalmazása. • A modell a szinkron távoli eljáráshívásra (Remote Procedure Call - RPC) épül: • a kliens folyamatok mindig megvárják a kérésük teljesítését.

  4. SUN NFS felhasználói felület I. • Helyi file-rendszer láthatóvá tétele (exportálás): • egy vagy több file-rendszer teljes vagy részleges (rész fa) exportálása. • Elérési jogok definiálása kliensenként (konfigurációs file). • Távoli file-rendszer bekapcsolása, mount-olása: • elérési jogosultságok definiálása mellett.

  5. SUN NFS felhasználói felület II. • Szoros (hard), illetve laza (soft) mount-olás: • addig próbálkozik a kívánt file elérésével, amíg el nem éri, • adott számú próbálkozás után leáll és hibaüzenet. • Távoli file-ok elérése: • lokális file-okkal azonos módon. • A szerver csak a saját, lokális file-rendszerét exportálhatja, a rekurzió elkerülése miatt.

  6. SUN NFS tervezőinek célkitűzései I. • Minden operációs rendszer alatt lehetséges legyen megvalósítani a protokollt. • A protokoll hardver-független legyen. • Létezzen egyszerű újraindítási lehetőség a kliens, illetve a szerver számára.

  7. SUN NFS tervezőinek célkitűzései II. • A kliens kezelje az operációsrendszer-függő file-elérést. • Összemérhető teljesítmény a helyi file-rendszerrel. • A hálózati összeköttetéstől független, illetve a forgalomnövekedéssel bővíthető kapacitású implementáció.

  8. SUN NFS megvalósítása • Következmény: az állapotmentes megvalósítás. • Előnye: az egyszerű újraindíthatóság. • Hátránya: a szerver csak stabil állapotában válaszolhat a kliens kéréseire: • ez késleltetést okozhat, • pl.: cache használata esetén, a kliens írási kérésének a nyugtázása csak a teljes tartalom kiírása után történhet meg.

  9. A SUN NFS • Egymásra épülő protokollok halmaza. • Az NFS-től független alkalmazások is használják az önálló protokollokat.

  10. A SUN NFS működése helyi gép (kliens folyamat) távoli gép (NFS szerver) kliens folyamat (alkalmazás) UNIX kernel Unix kernel virtuális file rendszer (VFS) virtuális file rendszer (VFS) kérés UNIX file NFS NFS UNIX file rendszer rendszer kliens szerver (UFS) (UFS) válasz lemez lemez

  11. NFS működés közben

  12. A SUN NFS által használt protokollok I. • NFS protokoll: a file-elérés magas szintű protokollja: • a kliens és a szerver közötti kérés-válasz lehetőségeket írja le, • pl.: get/setattrib(file), lookup(file_név), write(file), read(file). • RPC (Remote Procedure Call), távoli eljáráshívás protokoll: • a folyamatok kommunikációjának a módja, hogy egymás szolgáltatásait milyen módon használhatják (üzenetek felépítése, tartalma), • az NFS kliens és szerver közötti üzenetváltás RPC csomagok formájában történik.

  13. A SUN NFS által használt protokollok II. • XDR (EXtended Data Representation) protokoll: • a rendszer-független adatábrázolást rögzítő protokoll. • Mount: távoli file-rendszerek összekapcsolását leíró protokoll: • tipikus szolgáltatásai: • mount: a távoli file-rendszer helyi file-rendszerbe történő befűzése, láthatóvá tétele egy adott könyvtáron keresztül, • unmount: a kapcsolat megszüntetése, • dump: a helyi file-rendszerbe ”fel-mount-olt” távoli file-rendszerek kilistázása.

  14. Egy működő SUN NFS rendszer szoftver komponensei I. • NFS szerver: • a protokollban definiált szolgáltatásokat valósítja meg, • tartalmazza a szolgáltatások kódját, pl.: lookup() függvény. • NFS kliens kód: • kliens oldali funkciók megvalósítása, • pl.: a helyi file-okkal azonos módon való távoli file-használat. • Démon (daemon) folyamatok: • az NFS szerver állandóan elérhető szolgáltatásaihoz biztosítja az elérést, • tipikus démon processzek: • biod: blokkos adatátvitelt kezelő daemon, • mountd: a csatlakozási kéréseket elégíti ki, • nfsd: a file-ok elérését intézi.

  15. Egy működő SUN NFS rendszer szoftver komponensei II. Önálló és opcionális komponensek: • NLM (Network Lock Manager): • egy file kizárólagos használatát biztosítja. • NSM (Network Status Manager): • egy file állapotának lekérdezését végzi (lock/nonlock).

  16. Az XDR protokoll Biztosítja: • az adatok hardver- (és operációs rendszer) független ábrázolását, • a hálózaton történő továbbítást, • a leíró nyelv alap-adattípusainak a bővítését, • hogy az új adattípusok kombináltak is lehetnek.

  17. Az XDR protokoll Definiálja az adatelemek: • méretét, • átviteli sorrendjét, • formátumát.

  18. Az XDR tulajdonságai • Az alap a 8 bit-es byte. • Az adatelemek 4 byte-ra vannak kiegészítve. 0. 1. 2. 3. … n. ’0’ … ’0’ Például: • integer esetén hálózati átvitelnél a legfelső byte-ot küldi át elsőként: MSB LSB 0. 1. 2. 3. , • a negatív értékeket 2-es komplemensként ábrázolja, • a tömbök hálózati átvitelénél, a tömb elé beszúrja annak hosszát.

  19. Előre definiált adattípusok • Integer (4 byte), hyper integer (8 byte). • Megszámlálható, felsorolt típus enum: • de a boolean-t is értelmezi. • Lebegőpontos valós (4 byte). • Összetett adatstruktúrák, aggregátumok: • Tömb (változó és fix hosszúságú), string. • Structure record, akár eltérő típusú elemekkel is. • Union (szűkített struktúra, egy rekord használhatja csak).

  20. Példa az XDR protokoll adatelemekre Típus Adat XDR ábrázolás Egész 0x123456 0x00 0x12 0x34 0x56 szám [tömb 0x00 0x00 0x00 0x03 hossza] Három- elemű 4 0x00 0x00 0x00 0x04 egészekből 2 0x00 0x00 0x00 0x02 álló tömb -1 0xFF 0xFF 0xFF 0xFF

  21. XDR leíró nyelv • A C nyelvhez hasonló szintaxis. • Csak adatelemek definiálása. Pl.: enum file_kind { TEXT = 0, DATA = 1, EXEC = 2, }; struct file { string file_name<32>; file_kind file_type; opaque data; };

  22. Az RPC protokoll I. • Megbízható üzenettovábbítást valósít meg a kommunikáló partnerek között. • Az RPC protokollok rögzítik: • az üzenetek formátumát: • mit tartalmazhatnak az üzenetek, • az üzenetközvetítés módját: • mely üzenetek milyen sorrendben küldhetők, • a partnerazonosítás (címzés) módját.

  23. Az RPC protokoll II. • RPC típusai (a kliens folyamat várakozik-e az általa kért szolgáltatás végrehajtására): • szinkron módú, • aszinkron módú. • A SUN RPC protokoll: • saját fejlesztésű, • szinkron (megbízhatósági feltétel), • az XDR protokollt használja az üzenetformátum definiálására.

  24. Az RPC protokoll működése RPC kérés RPC kliens RPC szerver RPC válasz

  25. Az RPC-kérés felépítése I. XID IRÁNY RPC VERZIÓ PRG AZONOSÍTÓ PRG VERZIÓ SZOLGÁLTATÁS AZONOSÍTÁSI INFORMÁCIÓ ADAT

  26. Az RPC-kérés felépítése II. • XID: • az RPC generálta egyedi üzenet azonosító. • IRÁNY: • kérés vagy válasz. • RPC verzió: • több RPC verzió létezik, • az üzenetformátum verziófüggő lehet.

  27. Az RPC-kérés felépítése III. • PRG azonosító: • több párhuzamosan futó alkalmazás is használhat RPC-t, • a szolgáltatást nyújtó alkalmazás (szerver) azonosítója. • PRG verzió: • az adott szolgáltatás verziója. • Azonosítási információ: • a küldő folyamat azonosítója, • pl.: UNIX OPR esetén ez a PID. • Adat: • Az üzenet adatrésze.

  28. XID IRÁNY STÁTUS AZONOSÍTÁSI INFORMÁCIÓ STÁTUS 2 ADAT Az RPC-válasz felépítése • Státus: • megadja, hogy sikeres volt-e a kért szolgáltatás végrehajtása.

More Related