Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

1 Systemy rozproszone / Komunikacja (I) Systemy rozproszone Komunikacja (I) I.Protokoły warstwowe II.Wywołanie zdalnych procedur III.Wywołanie zdalnych.

Podobne prezentacje


Prezentacja na temat: "1 Systemy rozproszone / Komunikacja (I) Systemy rozproszone Komunikacja (I) I.Protokoły warstwowe II.Wywołanie zdalnych procedur III.Wywołanie zdalnych."— Zapis prezentacji:

1 1 Systemy rozproszone / Komunikacja (I) Systemy rozproszone Komunikacja (I) I.Protokoły warstwowe II.Wywołanie zdalnych procedur III.Wywołanie zdalnych obiektów IV.Komunikacja zorientowana na komunikaty V.Komunikacja potokowa

2 2 Systemy rozproszone / Komunikacja (I) Niezbędne uzgodnienia Ile Volt powinno być wykorzystywanych do wysłania 0-bit sygnału, a ile dla 1-bitowego? Jak odbiorca wie, która wiadomość jest ostatnia? Jak można wykryć, że wiadomość została uszkodzona lub zagubiona? Jak długie są liczby, ciągi znaków i inne struktury danych? W jaki sposób są one reprezentowane? ISO OSI = Model OSI = Model referencyjny Open Systems Interconnection Protokoły: połączeniowe, bezpołączeniowe. zestaw protokołów = stos protokołów = zbiór protokołów używanych w danym systemie

3 3 Systemy rozproszone / Komunikacja (I) Protokoły warstwowe (1) Warstwy, interfejsy, i protokoły w modelu OSI. 2-1

4 4 Systemy rozproszone / Komunikacja (I) Protokoły warstwowe (2) Typowy komunikat przesyłany przez sieć. 2-2

5 5 Systemy rozproszone / Komunikacja (I) Warstwa łącza danych Wymiana komunikatów pomiędzy nadawcą a odbiorcą w warstwie łącza danych. 2-3

6 6 Systemy rozproszone / Komunikacja (I) Wymiana komunikatów Typowe komunikaty: Proszę prześlij ponownie wiadomość n. Już była ponownie wysłana, Nie, nie była No nie, była wysyłana, OK, może i tak, ale jednak prześlij ją ponownie.

7 7 Systemy rozproszone / Komunikacja (I) TCP w architekturze klient-serwer a)Zwykły tryb TCP b)TranzakcyjnyTCP (T/TCP) 2-4

8 8 Systemy rozproszone / Komunikacja (I) Protokoły na poziomie sieci Warstwa sieciowa pakiety IP wirtualne kanały ATM (jednokierunkowy protokół zorientowany na połączenie), zbiór kanałów wirtualnych pogrupowanych w ścieżki wirtualne - predefiniowane trasy między parami hostów. Warstwa transportowa TCP, UDP TP0 – TP4, the official ISO transport protocols, RTP – protokół transportowy czasu rzeczywistego

9 9 Systemy rozproszone / Komunikacja (I) Protokoły warstwy pośredniej (I) Warstwa pośrednia – aplikacja, która logicznie mieszka w warstwie aplikacji, ale zawiera wiele protokołów ogólnego przeznaczenia, które zabezpieczają swoje warstwy, niezależnie od innych, bardziej specyficznych rodzajów oprogramowania. Przykłady protokołów: różne sposoby uwierzytelniania (dowodzenie podawanej tożsamości), protokołów autoryzacji (przyznawanie dostępu), szereg rozproszonych protokołów zatwierdzania(do zabezpieczenia niepodzielności), protokoły rozproszonych transakcji

10 10 Systemy rozproszone / Komunikacja (I) Protokoły warstwy pośredniej (II) Referencyjny model ISO OSI dostosowany do komunikacji sieciowej 2-5

11 11 Systemy rozproszone / Komunikacja (I) Wysokopoziomowe usługi komunikacji w warstwie pośredniej wywołanie zdalnej procedury, wywołanie zdalnego obiektu, usługi do obsługi kolejek komunikatów, komunikacja strumieniowa.

12 12 Systemy rozproszone / Komunikacja (I) Wywołanie zwykłej procedury a)Przekazywanie parametrów w lokalnej procedurze: stos przed wywołaniem b)Stos kiedy wywoływana procedura jest aktywna

13 13 Systemy rozproszone / Komunikacja (I) Wywołanie zdalnej procedury Kiedy próbujemy wywołać procedury znajdujące się na innych komputerach, powstają pewne delikatne problemy: różne przestrzenie adresowe, muszą być przekazane parametry i wyniki, obie maszyny mogą ulec awarii. Standardowe typy parametrów wywołania funkcji: przez wartość, przez referencję, przez kopiowanie/odtworzenie.

14 14 Systemy rozproszone / Komunikacja (I) Stuby klienta i serwera Zasada realizacji RPC pomiędzy klientem a serwerem

15 15 Systemy rozproszone / Komunikacja (I) Etapy wywołania zdalnej procedury 1.Procedura Klienta wywołuje stub Klienta w zwykły sposób 2.Stub Klienta buduje wiadomość, wywołuje lokalny OS 3.OS klienta wysyła wiadomość do zdalnego OS 4.Zdalny OS przekazuje komunikat do stuba Serwera 5.Stub Serwera rozpakowuje parametry, wywołuje Serwer 6.Serwer działa, wynik wraca do stuba 7.Stub Serwera opakowuje go w wiadomość, wywołuje lokalny OS 8.OS Serwera wysyła wiadomość do OS Klienta 9.OS Klienta przekazuje wiadomość do stuba Klienta 10.Stub rozpakowuje wynik, zwraca go do Klienta

16 16 Systemy rozproszone / Komunikacja (I) Przekazywanie parametrów (1) Etapy wykonywania zdalnego obliczenia poprzez RPC marshalling parametrów – opakowanie parametrów w komunikat. 2-8

17 17 Systemy rozproszone / Komunikacja (I) Przekazywanie parametrów (2) a)Oryginalny komunikat na Pentium b)Komunikat po odbiorze na SPARC c)Komunikat po inwersji. Liczby w pudełkach oznaczają adres każdego bajtu Mainframey IBM – kodowanie EBCDIC, PC IBM - ASCII big endian – słowo przechowywane big-end-first (kolejność sieciowa, SPARC) little endian – słowo przechowywane little-end-first (Pentium, VAX, PDP).

18 18 Systemy rozproszone / Komunikacja (I) Specyfikacja parametrów i generacja stubów Przykład uzgodnienia odn. protokołu Procedura Odpowiedni komunikat.

19 19 Systemy rozproszone / Komunikacja (I) Rozszerzone modele RPC Doors lokalna IPC może być bardziej skuteczna od komunikacji sieciowej doors - procedura w przestrzeni adresowej procesu serwera, która może być wywołana przez proces umieszczony razem z serwerem, doors powinny być zarejestrowane by można było je wywołać (door_create), w Solaris, każde doors ma nazwę pliku (fattach), wywołanie doors przez door_call (OS robi upcall), wynik zwracany do klienta poprzez door_return. korzyści :: jednolity mechanizm, wywoływanie procedur, dla skutecznej komunikacji w systemie rozproszonym, wady : konieczność rozróżniania standardowego wywołania procedur, wywoływania innych procesów lokalnych, wywołania zdalnych procesów.

20 20 Systemy rozproszone / Komunikacja (I) Doors Zasada wykorzystywania doors jako mechanismu IPC.

21 21 Systemy rozproszone / Komunikacja (I) Asynchroniczne RPC (1) a)Połączenie między klientem a serwerem w tradycyjnym RPC b)Interakcja z użyciem asynchronicznego RPC 2-12

22 22 Systemy rozproszone / Komunikacja (I) Asynchroniczne RPC (2) Klient i serwer współdziałające poprzez dwa asynchroniczne RPC 2-13 odłożone synchroniczne RPC - asynchroniczne RPC z drugim wywołaniem ze strony serwera, jedno-kierunkowe RPC – klient nie czeka na akceptację żądania, problem z niezawodnością

23 23 Systemy rozproszone / Komunikacja (I) Tworzenie Klienta i Serwera Kroki w pisaniu klienta i serwera w DCE RPC. 2-14

24 24 Systemy rozproszone / Komunikacja (I) Łączenie Klienta z Serwerem Łączenie klient-serwer w DCE. 2-15

25 25 Systemy rozproszone / Komunikacja (I) Obiekty rozproszone Ogólna organizacja zdalnego obiektu z proxy po stronie klienta. 2-16

26 26 Systemy rozproszone / Komunikacja (I) Łączenie Klienta z Obiektem a)(a) Niejawne połączenie z użyciem tylko globalnych referencji b)(b) Jawne połączenie z użyciem globalnych i lokalnych referencji Distr_object* obj_ref;//Deklaruj referencję do obiektu w całym systemie obj_ref = …;// Inicjalizuj referencję do rozproszonego obiektu obj_ref-> do_something();// Połącz niejawnie i wywołaj metodę (a) Distr_object obj_ref;// Deklaruj referencję do obiektu w całym systemie Local_object* obj_ptr;//Deklaruj wskaźnik do lokalnych obiektów obj_ref = …;//Inicjalizuj referencję do rozproszonego obiektu obj_ptr = bind(obj_ref);//Jawnie połącz i uzyskaj wskaźnik do lokalnego proxy obj_ptr -> do_something();//Wywołaj metodę na lokalnym proxy (b)

27 27 Systemy rozproszone / Komunikacja (I) Przekazywanie parametrów Sytuacja przy przekazywaniu obiektów przez referencję lub wartość. 2-18

28 28 Systemy rozproszone / Komunikacja (I) Model rozrposzonego obiektu DCE a)Rozproszone dynamiczne obiekty w DCE. b)Rozrposzone nazwane obiekty


Pobierz ppt "1 Systemy rozproszone / Komunikacja (I) Systemy rozproszone Komunikacja (I) I.Protokoły warstwowe II.Wywołanie zdalnych procedur III.Wywołanie zdalnych."

Podobne prezentacje


Reklamy Google