Struktury sieciowe Struktury sieciowe Podstawy Topologia Typy sieci Komunikacja Protokoły komunikacyjne Podstawy Topologia Typy sieci Komunikacja Protokoły komunikacyjne 15.1 15.2 System rozproszony Motywacja Dzielenie zasobów Dzielenie plików i drukowanie zdalne. Przetwarzanie informacji w rozproszonych bazach danych. Zdalne korzystanie ze specjalistycznego sprzętu. Przyspieszenie obliczeń load sharing Niezawodność zdalne wykrywanie i usuwanie awarii. Komunikacja przesyłanie wiadomości. 15.3 15.4 Sieciowe systemy operacyjne Rozproszone systemy operacyjne Użytkownicy są świadomi wielości maszyn. Dostęp do maszyn za pośrednictwem: Zdalnego logowania na wybranej maszynie. Przesyłania danych z maszyn zdalnych do lokalnych z wykorzystaniem FTP. Użytkownicy nie są świadomi wielości maszyn. Dostęp do zasobów zdalnych podobnie jak do lokalnych. Migracja danych (Data Migration) przesyłanie danych poprzez transfer całego pliku lub jedynie tych części, które są niezbędne do bezpośredniej pracy. Migracja obliczeń (Computation Migration) przesyłanie funkcji realizujących obliczenia, zamiast danych, na których operują. 15.5 15.6 1
Rozproszone systemy operacyjne (cd.) Topologie sieciowe Migracja procesów wykonanie procesu w całości lub w częściachnaróżnych maszynach odległych. Równomierne rozłożenie obciążenia (Load balancing) rozdzielanie procesów pomiędzy węzły w sieci. Przyspieszanie obliczeń (Computation speedup) procesy potomne mogą wykonywać się współbieżnie na maszynach w różnych miejscach. Preferencja sprzętu (Hardware preference) wykonanie procesu może wymagać specjalistycznego procesora. Preferencja oprogramowanai (Software preference) potrzebne oprogramowanie bywa dostępne jedynie w szczególnym miejscu. Dostęp do danych (Data access) zdalne wykonanie procesu bez (zamiast przesyłania danych do lokalnego przetwarzania). 15.7 15.8 Typy sieci Typy sieci - przykład Lokalne: Local-Area Network (LAN) na małym obszarze. Wspólna szyna, pierścień, gwiazda. Prędkość 10 lub 100 megabits/sek. Nadawanie szybkie i tanie. Węzły (Nodes): Stacje robocze lub PC Niewiele (zwykle jeden, dwa) komputerów głównych. Typowa sieć LAN: 15.9 15.10 Typy sieci WAN Procesory komunikacyjne w sieci WAN Sieć rozległa: Wide-Area Network (WAN) łączy miejsca odległe. Połączenia punkt-do-punktu (point-to-point) liniami telefonicznymi (zwykle łącz dzierżawione od firmy telekomunikacyjnej). Szybkość 100 kbit/s. Przesyłanie wymaga zwykle wymiany wielu komunikatów. Węzły: W większości komputery główne 15.11 15.12 2
Komunikacja Nazwy i odwzorowanie nazw Projektant sieci komunikacyjnej musi uwzględnić następujące zagadnienia: Nazwnictwo i rozpoznawanie nazw: W jaki sposób dwa procesy zdalne rozpoznają się i nawiążą łączność? Strategie marszrut (routing strategies). Jak wiadomości są przesyłane przez sieć? Strategie połączeń (connection strategies). W jaki sposób dwa procesy przesyłają sekwencje wiadomości? Połączenie (contention). Sieć jest zasobem dzielonym; jak rozwiązuje się konflikty żądania dostępu do niej? Systemy w sieci mają nazwy Do wiadomości dołączany jest identyfikator procesu. Procesy na zdalnych systyemach są identyfikowane przez parę: <host-name, identifier> Usługa nazw domenowych: Domain name service (DNS) definiuje strukturę nazw na komputerze oraz w sieci (Internet). 15.13 15.14 Strategie marszrut Strategie marszrut cd. Trasa stała (Fixed routing). Ścieżka od A do B określonaapriori;może ulec zmianie jedynie w przypadku awarii sprzętu. Zwykle wybierana najkrótsza sścieżka, koszty komunikacji minimalizowane. Stała trasa nie adaptuje się do zmian obciążenia. Zapewnia, że komunikaty będą dostarczane w kolejności, w jakiej były wysłane. Droga wirtualna. Trasa od A do B jest ustalana na czas jednej sesji. Różne sesje korzystają zróżnych tras między A i B. Częściowa adaptacja do zmienności obciążenia. Zapewnia, że komunikaty będą dostarczane w kolejności, w jakiej były wysłane. Trasowanie dynamiczne (Dynamic routing). Trasa od A do B wybierana na czas transmisji komunikatu. Zwykle wybierane łącze najmniej obciążone w danej chwili. Adaptacja do zmian obciążenia; unikanie tras najbardziej obciążonych. Komunikaty mogą przychodzić w innym porządku niż były wysłane do komunikatu dołączany jest jednak numer kolejny. 15.15 15.16 Strategie połączeń Rywalizacja w sieci Komutacja połączeń (Circuit switching). Stałe łącze fizyczne ustanawiane na czas połączenia (jak w telefonii). Komutacja komunikatów (Message switching). Łącze zestawiane na czas transmisji pojedynczej wiadomości. Komutacja pakietów (Packet switching). Wiadomości oróżnej długości są dzielone na pakiety o stałej długości; każdy pakiet może być przesyłany inną trasą w sieci. Przy odbiorze pakiety są zestawiane w oryginalną wiadomość. Może się pojawić, gdy żądanie transmisji w sieci jednocześnie z wielu miejsc. Techniki unikania: CSMA/CD. Carrier sense with multiple access (CSMA); collision detection (CD) Komputer sprawdza, czy w łączy trwa transmisja innej wiadomości. Gdy mimo to rozpocznie transmisję pojawi się kolizja, którą wykryje i zatrzyma transmisję. SCMA/CD używane w sieci Ethernet. 15.17 15.18 3
Rywalizacja w sieci cd. Protokoły komunikacyjne Przekazywanie znacznika (Token passing). Unikalna wiadomość (znacznik) krąży w systemie (zwykle w sieci pierścieniowej). Kopmuter może rozpocząć nadawanie dopiero po otrzymaniu znacznika. Po zakończeniu nadawania komputer oddaje znaczni do sieci. Warstwy w sieci komunikacyjnej; Warstwa fizyczna (Physical layer) obsługuje kwestie fizycznej transmisji strumienia bitów. Warstwa łącza danych (Data-link layer) obsługuje transmisję ramek (frames), tzn. pakietów o stałej długości, a także wykrywanie i usuwanie błędów transmisji warstwy fizycznej. Warstwa sieciowa (Network layer) zapewnia połączenie i transmisję pakietów, w tym adresowanie pakietów wychodzących, dekodowanie adresu z pakietów odbieranych, prowadzenie zapisów dot. tras. 15.19 15.20 Protokoły komunikacyjne (cd.) Model ISO Warstwa transportowa (Transport layer) odpowiada za dostęp do sieci niskiego poziomu, przesyłanie wiadomości pomiędzy klientami, w tym: dzielenie wiadomości na pakiety, czuwanie nad porządkiem pakietów, sterowanie przepływem, generowanie adresów fizycznych. Warstwa sesji (Session layer) implementacja sesji lub protokołów komunikacji między procesami. Warstwa prezentacji (Presentation layer) rozwiązuje problemy wynikające z różnic stosowanych formatów w różnych miejscach sieci, w tym konwersje kodów. Warstwa aplikacji (Application layer) obsługuje bezpośrednio użytkownika, w tym protokoły zdalnego logowania, pocztę elektroniczną, bazy rozproszone. 15.21 15.22 Przesyłanie między warstwami Struktura komunikatu 15.23 15.24 4
Warstwy protokołów TCP/IP Ramka w sieci Ethernet 15.25 15.26 5