Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
1
SYSTEMY ROZPROSZONE System plików
2
SYSTEM PLIKÓW ___________________________________________________________________________________________ DFS (Distributed File System) - rozproszona implementacja klasycznego modelu systemu plików z podziałem czasu, w którym wielu użytkowników współdzieli pliki i zasoby pamięciowe.
3
NAZEWNICTWO I PRZEZROCZYSTOŚĆ ___________________________________________________________________________________________ Nazewnictwo to odwzorowanie między obiektami logicznymi a fizycznymi. Przezroczysty DFS ukrywa położenie pliku w sieci. W przypadku pliku, którego kopie znajdują się w różnych węzłach sieci, odwzorowanie tworzy zbiór lokalizacji kopii pliku; przezroczysty DFS ukrywa zarówno istnienie wielu kopii, jak i ich położenie.
4
NAZEWNICTWO I PRZEZROCZYSTOŚĆ ___________________________________________________________________________________________ Przezroczystość położenia: nazwa pliku nie daje żadnej wskazówki co do fizycznego położenia pliku (np. /server1/dir1/dir2), nazwa pliku oznacza określony, choć ukryty, zbiór bloków dyskowych, może ujawniać zależność między składowymi nazwy a komputerami, nie jest możliwa automatyczna zmiana położenia pliku. Niezależność położenia: nazwy pliku nie trzeba zmieniać wtedy, gdy plik zmienia swoje fizyczne położenie, lepsza abstrakcja pliku (nazwa określa zawartość, nie położenie), oddziela hierarchię nazw od hierarchii urządzeń pamięci.
5
SCHEMATY TWORZENIA NAZW ___________________________________________________________________________________________ Nazwa pliku składa się z nazwy komputera macie-rzystego i nazwy lokalnej (gwarantowana jedno-znaczność w całym systemie). Zdalne katalogi są montowane w lokalnym katalogu tworząc spójne drzewo katalogów; dostęp przezroczysty jedynie do wcześniej zamontowanych katalogów (np. NFS). Pełna integracja składowych systemów plików: jedna globalna struktura nazw obejmuje wszystkie pliki w systemie, jeśli serwer jest niedostępny, to pewien zbiór katalogów też staje się niedostępny.
6
SEMANTYKA WSPÓŁDZIELENIA PLIKU ___________________________________________________________________________________________ Plik przechowywany na centralnym serwerze – prosta synchronizacja przy dostępie do współdzielonego pliku; problem – wydajność; poprawienie wydajności przez tworzenie lokalnych kopii plików lub ich części problem z zachowaniem standardowej uniksowej semantyki współdzielenia pliku.
7
SEMANTYKA WSPÓŁDZIELENIA PLIKU ___________________________________________________________________________________________ Semantyka Unixa system wymusza porządkowanie wszystkich operacji w czasie i zawsze przekazuje najbardziej aktualną zawartość; Semantyka sesji zmiany w otwartym pliku są początkowo widoczne tylko w procesie dokonującym modyfikacji; inne procesy zauważą zmiany dopiero po zamknięciu pliku; Pliki niemodyfikowalne nie można otworzyć pliku do zapisu, jedynie do odczytu; zamiast modyfikowania pliku, trzeba utworzyć go od nowa; (jednak można modyfikować katalogi); Transakcje wszystkie zmiany mają własność: wszystko albo nic (np. system bankowy).
8
ZDALNY DOSTĘP DO PLIKÓW ___________________________________________________________________________________________ Przechowywanie ostatnio używanych bloków dyskowych w podręcznej pamięci buforowej pozwala zmniejszyć ruch w sieci: jeśli potrzebnych danych nie ma w pamięci podręcznej, to sprowadza się ich kopię z serwera; klient korzysta z kopii przechowywanej w pamięci podręcznej; pliki identyfikuje się z kopią główną w serwerze. Problem utrzymania spójności pamięci podręcznych, tzn. zgodności kopii podrzędnych z kopią główną. Gdzie przechowywać pliki: dysk serwera, pamięć główna serwera, dysk klienta, pamięć główna klienta?
9
ZDALNY DOSTĘP DO PLIKÓW ___________________________________________________________________________________________ Zalety dyskowych pamięci podręcznych: niezawodność (dane nie przepadają podczas awarii), dane przechowywane w pamięci podręcznej na dysku pozostają tam podczas rekonstrukcji systemu po awarii i nie trzeba ich ponownie sprowadzać. Zalety pamięci podręcznej w pamięci głównej: umożliwiają korzystanie z bezdyskowych stacji roboczych, krótszy czas dostępu do danych, pamięci podręczne po stronie serwera są w pamięci głównej niezależnie od tego, gdzie przechowuje się pamięci podręczne klienta;
10
ZDALNY DOSTĘP DO PLIKÓW ___________________________________________________________________________________________ Aktualizowanie danych w pamięci podręcznej: Natychmiastowe pisanie (write-through) - przesyła się dane do serwera natychmiast po umieszczeniu ich w pamięci podręcznej - niezawodne, ale słaba wydajność. Opóźnione pisanie (delayed-write) - modyfikacje zapisuje się w pamięci podręcznej i później przesyła do serwera - zawodne: przegląda się pamięć podręczną w regularnych odstępach czasu i wysyła do serwera bloki modyfikowane od ostatniego przeglądania; dane przesyła się do serwera po zamknięciu pliku (write-on-close).
11
ZDALNY DOSTĘP DO PLIKÓW ___________________________________________________________________________________________ Weryfikacja aktualności danych – czy kopia lokalna w pamięci podręcznej jest zgodna z kopią główną? Weryfikację zgodności może zainicjować klient lub serwer.
12
OBSŁUGA ZDALNA A PAMIĘĆ PODRĘCZNA ___________________________________________________________________________________________ Pamięć podręczna obsługuje większość żądań zdalnego dostępu tak szybko jak żądania lokalnego dostępu. Powoduje, że kontakt z serwerem jest rzadszy: mniejsze obciążenie serwera i ruch w sieci, większa możliwość skalowalności. Narzut związany z komunikacją poprzez sieć jest mniejszy, gdy przesyła się dane dużymi porcjami (pamięć podręczna) zamiast jako szereg odpowiedzi na specjalne żądania (obsługa zdalna).
13
OBSŁUGA ZDALNA A PAMIĘĆ PODRĘCZNA ___________________________________________________________________________________________ Pamięć podręczna sprawdza się lepiej, gdy żądania pisania są rzadkie (gdy częste, duży narzut na utrzymanie zgodności). Pamięć podręczna pozwala osiągać korzyści, gdy wykonanie odbywa się na komputerze z lokalnymi dyskami lub dużą pamięcią główną. Zdalny dostęp na komputerach bezdyskowych i z małą pamięcią główną trzeba realizować poprzez zdalną obsługę.
14
STANOWY (stateful) SERWER PLIKÓW ___________________________________________________________________________________________ Mechanizm: Klient otwiera plik Serwer odczytuje informacje z dysku, wstawia do pamięci, przekazuje klientowi jednoznaczny identyfikator Klient używa tego identyfikatora podczas kolejnych dostępów Serwer musi odzyskać pamięć używaną przez klientów, którzy przestają być aktywni Zwiększona wydajność: Mniej dostępów dyskowych Serwer wie czy plik otwarto do sekwencyjnego dostępu i może czytać z wyprzedzeniem następne bloki.
15
BEZSTANOWY (stateless) SERWER PLIKÓW ___________________________________________________________________________________________ Każde żądanie jest samowystarczalne, więc nie trzeba przechowywać informacji o stanie. Każde żądanie identyfikuje plik i pozycję w pliku. Nie trzeba otwierać i zamykać połączenia (zbędne open i close dla pliku) Nie trzeba przeznaczać miejsca na pamiętanie informacji o stanie. Nie ma ograniczeń na liczbę otwartych plików.
16
SERWER STANOWY A BEZSTANOWY ___________________________________________________________________________________________ Rekonstrukcja systemu po awarii: Serwer stanowy gubi całą informację; może ją odtworzyć prowadząc dialog z klientem lub zakończyć rozpoczęte operacje z błędem. Awaria nie ma wpływu na pracę serwera bezstanowego. Narzut jaki płaci się za mniej zawodną usługę: dłuższe komunikaty z żądaniami, wolniejsze przetwarzanie żądań, dodatkowe ograniczenia na projekt DFS (np trudno zrealizować blokowanie plików).
17
TWORZENIE KOPII PLIKU (file replication) ___________________________________________________________________________________________ Zwiększa dostępność i może skrócić czas dostępu. Umożliwia uniknięcie sytuacji, gdy pojedynczy serwer staje się wąskim gardłem. Istnienie wielu kopii powinno być niewidoczne na wyższych poziomach; na niższych poziomach kopie muszą się różnić nazwami. Aktualizacja jednej kopii powinna być przeprowadzona również na pozostałych kopiach. Kopiowanie na żądanie - czytanie zdalnej kopii powoduje zapamiętanie jej w pamięci podręcznej, a więc utworzenie lokalnej kopii.
18
WPROWADZENIE DO NFS (Network File System) _______________________________________________________________________________________ Produkt firmy Sun Microsystem: wersja r. wersja 3.0 – 1994 r. Bardzo rozpowszechniony w sieciach lokalnych. Firma Sun upowszechniła definicje podstawowych interfejsów oraz kod źródłowy system jest teraz dostarczany przez wielu wytwórców. Każdy komputer w sieci może działać zarówno jako klient, jak i sewer NFS. System jest adaptowalny do różnych architektur i rozwiązań sprzętowych i do różnych systemów operacyjnych: prawie wszystkie wersje systemu UNIX, Mach, DEC VMS, Novell Netware, MS-DOS i inne.
19
CELE PROJEKTOWE SYSTEMU NFS ___________________________________________________________________________________________ Przezroczystość dostępu Interfejs klienta systemu NFS jest identyczny z interfejsem lokalnego systemu operacyjnego. Istniejące programy mogą bez żadnych zmian w kodzie działać na zdalnych plikach. Przezroczystość położenia Klient montuje zdalne pliki w lokalnej strukturze katalogów, określając tym samym sieciową przestrzeń nazw. Decyzja o położeniu pliku w tej strukturze należy do klienta, może więc być różna w różnych systemach lokalnych.
20
CELE PROJEKTOWE SYSTEMU NFS ___________________________________________________________________________________________ 3. Przezroczystość awarii Sewer NFS jest serwerem bezstanowym, a większość operacji to operacje powtarzalne. Dzięki temu sytuacje awaryjne w odniesieniu do plików zdalnych są postrzegane przez klienta jak awarie plików lokalnych. Awaria klienta nie ma wpływu na działanie żadnego serwera. 4. Przezroczystość wydajności Buforowanie po stronie serwera (proste: standardowy mechanizm podręcznej pamięci buforowej) i po stronie klienta (złożone: buforowane bloki zdalnych plików i atrybuty plików). Moduły klienta i serwera są instalowane w jądrze systemu UNIX.
21
CELE PROJEKTOWE SYSTEMU NFS ___________________________________________________________________________________________ 5. Przezroczystość wędrówki W każdym kliencie działa proces odpowiedzialny za montowanie zdalnych plików w lokalnej przestrzeni nazw. Zwykle montowanie odbywa się podczas inicjalnego ładowania systemu. Można przenosić pliki między serwerami, ale trzeba wtedy oddzielnie uaktualniać tablice montowania u każdego klienta. Nie ma więc pełnej przezroczystości wędrówki. Można także stosować automontowanie, czyli montowanie na żądanie z dynamicznym wyborem serwera, na którym zlokalizowano jedną z kopii pliku z prawami tylko do czytania.
22
CELE PROJEKTOWE SYSTEMU NFS ___________________________________________________________________________________________ Wymagania nie zrealizowane: Przezroczystość zwielokrotniania NFS nie zapewnia zwielokrotniania plików. Przezroczystość współbieżności W systemie UNIX jest możliwe zakładanie blokad na pliki, w NFS-ie serwer jest bezstanowy, więc implementacja zakładania blokad jest trudna. Skalowalność Ograniczona skalowalność. Liczba klientów jednocześnie korzystających z dzielonego pliku jest ograniczona wydajnością serwera dostarczającego plik (wynika z braku zwielokrotniania).
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.