Projektowanie oprogramowania systemów KOMUNIKACJA SIECIOWA I SYSTEMY RPC
|
|
- Joanna Milewska
- 9 lat temu
- Przeglądów:
Transkrypt
1 Projektowanie oprogramowania systemów KOMUNIKACJA SIECIOWA I SYSTEMY RPC
2 plan programowanie sieciowe BSD/POSIX Socket API systemy RPC interfejsy obiektowe CORBA DCOM RMI WebServices WSDL/SOAP XML-RPC REST
3 programowanie sieciowe Termin programowanie sieciowe (network programming) odnosi się do tworzenia aplikacji, które komunikują się ze sobą za pośrednictwem sieci komputerowej Komunikacja sieciowa to specyficzna forma komunikacji międzyprocesowej (IPC), w której komunikujące się procesy znajdują się na osobnych maszynach Nie używamy więc obiektów IPC, których zasięg ograniczony jest do pojedynczej maszyny (pamięci współdzielonej, semaforów, mutexów ) Komunikacja odbywa się za pośrednictwem gniazd sieciowych (network sockets) i protokołów komunikacyjnych Najbardziej powszechnym API komunikacji sieciowej jest BSD (POSIX) Sockets API (AKA Berkeley sockets) stąd, programowanie sieciowe nazywamy również programowaniem gniazd
4 BSD Socket API nazewnictwo i historia Tradycyjnie, API gniazd wywodzi się z dystrybucji Unixa BSD, stąd nazwa BSD Socket (lub Berkeley sockets, bo BSD to Berkeley Software Distribution Unix opracowany na UCal w Berkeley) Na bazie API BSD powstał standard gniazd POSIX (POSIX sockets) API gniazd BSD było oryginalną implementacją protokołów TCP/IP, które są podstawą działania Internetu (tzw. Internet Protocol Suite) W praktyce wszystkie współczesne systemy operacyjne posiadają API gniazd przynajmniej częściowo spójne z BSD włącznie z Windows (tzw. Winsock API)
5 BSD Socket API - alternatywy Konkurencyjna w stosunku do BSD implementacja Unixa System V używała innego API komunikacji sieciowej: STREAMS (Transport Layer Interface) TLI ściśle opiera się na modelu OSI/ISO ścisła separacja warstw STREAMS było wykorzystywane m.in. w Novell NetWare, Windows NT Wiele implementacji Unixa używa równolegle TLI oraz BSD sockets Wraz z Windows for Workgroups Microsoft promował protokół i API NetBEUI (NetBIOS Extended User Interface) sieć peer-to-peer oryginalnie działająca niezależnie od TCP/IP, w tej chwili praktycznie zawsze bazująca na TCP/IP
6 gniazda sieciowe słowniczek pojęć gniazdo punkt końcowy (endpoint) komunikacji IPC w oparciu o sieć komputerową adres gniazda kombinacja adresu IP komputera i numeru portu (numer usługi) typ gniazda gniazda datagramowe (protokół: UDP), typ SOCK_DGRAM gniazda strumieniowe (protokół: TCP), typ SOCK_STREAM gniazda surowe, SOCK_RAW użytkownik jest odpowiedzialny za implementację własnego protokołu
7 tryb nieblokujący I/O nowoutworzone gniazda są blokujące, co oznacza że operacje odczytu/zapisu blokują działanie programu tak długo, aż operacja się powiedzie gniazdo można przestawić w tryb nieblokujący (nonblocking mode), wówczas operacje odczytu/zapisu nie blokują działania programu ale zwracają kod błędu EWOULDBLOCK w momencie, kiedy operacja nie może być wykonana natychmiast (brak danych w buforze odczytu gniazda, przepełniony bufor zapisu gniazda) tryb nieblokujący umożliwia obsługę wielu gniazd równocześnie w pojedynczym wątku poprzez multipleksację I/O (i nie tylko gniazd również plików i wszystkiego co wygląda jak plik, włacznie z UI) w trybie blokującym zwykle każde gniazdo wymaga osobnego wątku, co prowadzi do nieefektywnego wykorzystania zasobów tryb nieblokujący jest zalecany dla wszystkich, poza najbardziej prymitywnymi aplikacjami sieciowymi
8 multipleksacja I/O rejestrujemy deskryptory plików w specjalnej strukturze fd_set, specyfikując w jakich zdarzeniach związanych z gniazdem/plikiem jesteśmy zainteresowani (możliwość odczytu, możliwość zapisu, sytuacja wyjątkowa) podajemy strukturę jako parametr funkcji systemowej select(), poll() lub podobnej ww. funkcja blokuje działanie programu do momentu aż w którymkolwiek z gniazd wystąpi którekolwiek zdarzenie, a następnie zwraca informacje o rodzaju zdarzenia które wystąpiło obsługujemy zdarzenie np. odczyt/zapis danych z gniazda, które w tej sytuacji nie mają prawa zablokować programu powracamy do pętli select()/poll() oczekujemy na kolejne zdarzenie deskryptor może również odnosić się do źródła zdarzeń UI wówczas możliwa jest obsługa komunikatów UI w tej samej pętli tak działa m.in. X-Windows
9 gniazda serwerowe i klienckie W przypadku gniazd typów połączeniowych (SOCK_STREAM) zwykle wyróżnia się 2 modele ich użycia gniazda serwerowe powiązane z określonym portem i adresem, nasłuchują w oczekiwaniu na połączenia przychodzące od klientów gniazda klienckie inicjują połączenia z nasłuchującymi gniazdami serwerowymi, nie muszą mieć przypisanego a priori adresu sieciowego Nie jest możliwe nawiązanie sesji pomiędzy dwoma gniazdami klienckimi W przypadku gniazd typów bezpołączeniowych nie ma potrzeby tworzenia gniazd nasłuchujących i oczekiwania na połączenie możliwa jest natychmiastowa komunikacja każdy-z-każdym Podział na gniazda serwerowe i klienckie wynika ze sposobu ich użycia (wywoływanych funkcji) tworzymy je identycznie
10 BSD API socket() int socket(int domain, int type, int protocol); socket() tworzy nowe gniazdo określonego rodzaju, alokuje dla niego zasoby i zwraca deskryptor pliku parametry domena określa rodzinę protokołów danego gniazda: AF_INET protokoły oparte na IPv4 AF_INET6 protokoły IPv6 AF_UNIX gniazda lokalne (domeny Unixa tylko w systemach Unix) typ rodzaj gniazda (SOCK_DGRAM, SOCK_STREAM, SOCK_RAW, ) protokół specyficzny protokół warstwy transportowej, lub 0 np. IPPROTO_TCP TCP (domyślny dla SOCK_STREAM) IPPROTO_UDP UDP (domyślny dla SOCK_DGRAM) IPPROTO_SCTP IPPROTO_DCCP
11 bind() int bind(int sockfd, const struct sockaddr *addr, socklen_t addrlen); bind() wiąże utworzone gniazdo z adresem sieciowym lokalnego komputera nowoutworzone gniazdo nie jest związane z żadnym adresem, za pomocą bind() możemy mu przypisać adres, dzięki czemu będziemy mogli oczekiwać na przychodzące połączenia na określonym adresie/porcie parametry sockfd - deskryptor gniazda addr struktura określająca adres do którego przypisujemy gniazdo (adres IP + numer portu). Jeśli nie podamy adresu IP, gniazdo zostanie powiązane ze wszystkimi adresami IP komputera. Jeśli nie podamy numeru portu, zostanie on wybrany losowo przez OS addrlen rozmiar w bajtach struktury addr (kompatybilność IPv4/IPv6 itp.)
12 listen() int listen(int sockfd, int backlog); listen() rozpoczyna nasłuchiwanie przychodzących połączeń na danym gnieździe serwerowym o określonym adresie tylko dla gniazd typu strumieniowego (połączeniowych) parametry sockfd deskryptor gniazda backlog rozmiar kolejki nadchodzących połączeń; przychodzące połączenia są umieszczane w kolejce, z której są usuwane poprzez ich zaakceptowanie funkcją accept(); połączenia nadmiarowe będą automatycznie odrzucane
13 accept() int accept(int sockfd, struct sockaddr *cliaddr, socklen_t *addrlen); accept() akceptuje przychodzące połączenie na nasłuchującym gnieździe serwerowym dla zaakceptowanego połączenia przychodzącego tworzone jest nowe gniazdo, które jest połączone w sesję ze zdalnym gniazdem zwraca deskryptor nowego gniazda klienckiego parametry sockfd deskryptor nasłuchującego gniazda serwerowego cliaddr struktura, w której zostanie zapisany adres zdalnego połączonego gniazda addrlen rozmiar struktury cliaddr
14 connect() int connect(int sockfd, const struct sockaddr *serv_addr, socklen_t addrlen); connect() inicjuje połączenie gniazda klienckiego ze zdalnym, nasłuchującym gniazdem serwerowym w przypadku gniazd bezpołączeniowych jedynie określa domyślny cel (endpoint) dla komunikacji parametry sockfd deskryptor klienckiego gniazda, które łączymy ze zdalnym systemem serv_addr adres zdalnego, nasłuchującego gniazda serwerowego addrlen rozmiar struktury serv_addr
15 łączenie gniazd serwerowych i klienckich typu połączeniowego
16 odczyt/zapis gniazd w zależności od typu gniazda istnieją 2 zestawy funkcji służących do odczytu/zapisu danych z/do gniazd połączeniowe (SOCK_STREAM) odczyt: ssize_t recv(int sockfd, void *buf, size_t len, int flags); zapis: ssize_t send(int sockfd, const void *buf, size_t len, int flags); bezpołączeniowe (SOCK_DGRAM) odczyt: ssize_t recvfrom(int sockfd, void *buf, size_t len, int flags, struct sockaddr *src_addr, socklen_t *addrlen); zapis: ssize_t sendto(int sockfd, const void *buf, size_t len, int flags, const struct sockaddr *dest_addr, socklen_t addrlen);
17 odczyt/zapis gniazd API połączeniowe jest tożsame z wywołaniem standardowych funkcji read()/write() używanych z plikami kiedy parametr flags jest równy 0 (można ich używać zamiennie) Parametr flags umożliwia określenie dodatkowych, zaawansowanych opcji odczytu/zapisu (najczęściej nieużywanych) API połączeniowe może być używane również z gniazdami typu bezpołączeniowego, których domyślny adres określono za pomocą connect() API bezpołączeniowe recvfrom()/sendto() umożliwia podanie docelowego adresu datagramu lub uzyskanie informacji o adresie źródłowym datagramu odebranego
18 użycie API bezpołączeniowego
19 zamykanie gniazd gniazda zamykamy i zwalniamy zasoby za pomocą standardowej funkcji close() (na Windows closesocket()) w przypadku połączonych sesją gniazd połączeniowych powoduje to również zerwanie połączenia jest to tzw. abrupt (non-graceful) shutdown i jest nieeleganckie (zwykle oznacza błąd) zaleca się przeprowadzenie procedury graceful shutdown poprzez użycie funkcji shutdown() (co jednak wydłuża czas zamknięcia i komplikuje maszynę stanów)
20 graceful shutdown shutdown(sd_rdwr) recv() zwraca 0 close() recv() zwraca 0 połączenie zamknięte shutdown(sd_rdwr) close()
21 odnajdywanie adresów sieciowych maszyny w sieci identyfikowane są za pomocą adresów IP liczb 32- bitowych (IPv4) lub 128-bitowych (IPv6) adresy IP są trudne do zapamiętania i mogą się zmieniać w czasie, dlatego stworzono system nazw i serwerów nazw (domain name system, DNS) będący rozproszoną bazą danych wiążącą nazwy z adresami API BSD umożliwia wyszukiwanie adresów i nazw maszyn w sieci poprzez odpytywanie serwerów DNS i innych baz danych funkcjonalność ta nosi nazwę resolver podstawowy resolver w API BSD jest blokujący nie istnieje standardowy, przenośny mechanizm tworzenia nieblokujących zapytań systemu DNS
22 resolver struct hostent *gethostbyname(const char *name); gethostbyname() zwraca listę znanych adresów dla hosta o podanej nazwie struktura hostent zawiera w sobie pola określające typ adresu (np. AF_INET, AF_INET6), adres hosta, jego długość oraz nazwę kwalifikowaną powiązaną z tym adresem; wskaźnik do następnego elementu listy z jedną nazwą może być powiązane kilka adresów różnych typów oraz kilka nazw (aliasów) aby poznać wszystkie adresy/nazwy danego hosta należy trawersować listę struktur hostent aż kolejny element będzie pusty
23 gethostbyaddr() struct hostent *gethostbyaddr(const void *addr, int len, int type); gethostbyaddr() odnajduje inne znane adresy oraz nazwy hosta o podanym adresie i zwraca ich listę identycznie jak gethostbyname() parametry addr adres hosta, którego wyszukujemy len rozmiar adresu type type (np. AF_INET) adresu
24 resolver POSIX funkcje gethostbyname() i gethostbyaddr() są bardzo rozpowszechnione, ale generalnie są przestarzałe i nie powinny być używane w standardowym API POSIX zostały zastąpione nowszymi funkcjami getaddrinfo() i getnameinfo(), które są bardziej elastyczne, (m.in. umożliwiają wyszukiwanie usług o określonych nazwach) i niezależne od domeny/protokołu w nowych aplikacjach zaleca się korzystanie z nowego API (które jest bardziej rozbudowane ale równocześnie mniej wygodne do prostych zastosowań)
25 getaddrinfo() int getaddrinfo(const char *hostname, const char *service, const struct addrinfo *hints, struct addrinfo **res); getaddrinfo() umożliwia wyszukanie hosta o określonej nazwie lub sformatowanym w tekst adresie oraz usługi o określonej nazwie lub numerze portu hint pozwala dodatkowo określić kryteria wyszukiwania protokół, etc. wynik zwracany jest w postaci listy dynamicznie alokowanych struktur addrinfo, które muszą być zwolnione za pomocą freeaddrinfo()
26 plan programowanie sieciowe BSD/POSIX Socket API systemy RPC interfejsy obiektowe CORBA DCOM RMI WebServices WSDL/SOAP XML-RPC REST
27 mechanizmy RPC RPC Remote Procedure Call zdalne wywołanie procedury oryginalnie termin RPC to nazwa protokołu stworzonego przez firmę Sun do budowy aplikacji rozproszonych (standard RFC1057), m.in. implementacji systemu plików NFS współcześnie terminem tym określa się wszelkie rozwiązania, służące do uruchamiania usług w środowiskach rozproszonych, bez konieczności zaprogramowania niskopoziomowych szczegółów komunikacji w idealnym przypadku wywołanie funkcji/procedury poprzez RPC wygląda z punktu widzenia programisty identycznie jak wywołanie jej na lokalnie, zaś cała komunikacja niezbędna w tym celu odbywa się niejawnie
28 typowy scenariusz RPC program-klient RPC wywołuje lokalną funkcję wydmuszkę (stub) z poziomu języka programowania stub zamienia przekazane mu parametry wywołania w wiadomość zgodną ze stosowanym protokołem RPC (serializacja parametrów) wiadomość jest wysyłana do serwera RPC oferującego daną usługę po odebraniu wiadomość jest deserializowana poprzez server stub server stub wywołuje lokalną funkcję z odczytanymi parametrami z poziomu języka programowania, odczytuje odpowiedź odpowiedź jest serializowana w wiadomość
29 tworzenie wydmuszek interfejs wywołań RPC jest opisywany za pomocą standardowego języka IDL interface description language na podstawie opisu IDL generator kodu systemu RPC tworzy wiązanie (binding) pomiędzy wydmuszkami a biblioteką RPC w danym języku programowania, dostarczając niezbędnego kodu serializacji/deserializacji parametrów kod wydmuszki jest kompilowany i łączony do kodu klienta i serwera implementacja wydmuszek po stronie klienta i serwera może być w innym języku programowania, dopóki zachowany jest wspólny protokół RPC (heterogeniczna)
30 przykład IDL użycie wydmuszki w C++ implementacja serwera w Javie
31 interfejsy obiektowe współczesne implementacje systemów RPC nie modelują pojedynczych funkcji tylko interfejsy w modelu obiektowym podejście zorientowane obiektowo umożliwia tworzenie zdalnych obiektów przechowujących określony stan oraz ułatwia ukrywanie szczegółów implementacyjnych systemu RPC obiektowo-zorientowane systemy RPC to m.in. CORBA Common Object Request Broker Architecture (standard zdefiniowany przez Object Management Group) DCOM Distributed Component Object Model (Microsoft adaptacja modelu komponentowego COM do środowisk rozproszonych) RMI Remote Method Invocation (Java podsystem wbudowany w każdej implementacji języka)
32 CORBA jako przykład OO-RPC
33 usługi internetowe usługi internetowe (Web Services) to podejście opierające się na zastosowaniu standardowych protokołów i formatów danych internetowych (HTTP, XML, JSON) do realizacji wywołań RPC zaletą jest łatwość wdrożenia i debugowania znane, powszechnie stosowane formaty i narzędzia nie ma konieczności wdrażania pełnej, skomplikowanej infrastruktury serwerowej jak w przypadku CORBA aplikacje serwerowe WebServices działają na standardowym serwerze WWW mniejsza szansa że wywołania HTTP zostaną zablokowane przez firewalle, możliwość użycia standardowych serwerów proxy podobnie jak w przypadku tradycyjnego RPC istnieją narzędzia, umożliwiające generowanie wydmuszek z języka IDL lub specjalnego języka WSDL (Web Service Definition Language dialekt XML)
34 podejścia web services sformalizowane opis interfejsu WSDL protokół komunikacyjny SOAP wsparcie narzędzi, generatorów Java,.NET przerost formy nad treścią inwokacja naszego sayhello() i przesłanie kilkunastu znaków wymaga kilku tysięcy znaków w formacie XML luźne, ad hoc wszystko co wygląda i działa jak web service to jest web service XML-RPC proste fragmenty XML przesyłane za pomocą HTTP JSON-RPC analogicznie jak wyżej, ale dane w formacie JSON RESTful interoperatybilność najczęściej jedynie pomiędzy wydmuszkami generowanymi przez tą samą bibliotekę wsparcie języków skryptowych Python, PHP, JavaScript
Programowanie Komponentowe WebAPI
Programowanie Komponentowe WebAPI dr inż. Ireneusz Szcześniak jesień 2016 roku WebAPI - interfejs webowy WebAPI to interfejs aplikacji (usługi, komponentu, serwisu) dostępnej najczęściej przez Internet,
Iteracyjny serwer TCP i aplikacja UDP
Iteracyjny serwer TCP i aplikacja UDP Iteracyjny serwer TCP Funkcje wywoływane przez serwer TCP socket() - bind() - listen() - accept() - read() / write() - close() socket() Creates an endpoint for communication
Programowanie przy użyciu gniazdek
Programowanie przy użyciu gniazdek Gniazdo (ang. socket) pojęcie abstrakcyjne reprezentujące dwukierunkowy punkt końcowy połączenia. Dwukierunkowość oznacza możliwość wysyłania i przyjmowania danych. Wykorzystywane
Programowanie współbieżne i rozproszone
Programowanie współbieżne i rozproszone WYKŁAD 6 dr inż. Komunikowanie się procesów Z użyciem pamięci współdzielonej. wykorzystywane przede wszystkim w programowaniu wielowątkowym. Za pomocą przesyłania
TCP - receive buffer (queue), send buffer (queue)
BSD sockets c.d. TCP - receive buffer (queue), send buffer (queue) Z każdym gniazdem sieciowym są skojarzone: Bufor do odbierania danych (ang. receive buffer) Przychodzące dane są umieszczane w buforze
Komunikacja międzyprocesowa. Krzysztof Banaś Systemy rozproszone 1
Komunikacja międzyprocesowa Krzysztof Banaś Systemy rozproszone 1 Komunikacja międzyprocesowa Dla funkcjonowania systemów rozproszonych konieczna jest sprawna komunikacja pomiędzy odległymi procesami Podstawowym
Programowanie sieciowe
Programowanie sieciowe dr Tomasz Tyrakowski Dyż ury: wtorki 12:00 13:00 czwartki 14:00 15:00 pokój B4-5 e-mail: ttomek@amu.edu.pl materiały: http://www.amu.edu.pl/~ttomek 1 Wymagania podstawowa znajomość
76.Struktura oprogramowania rozproszonego.
76.Struktura oprogramowania rozproszonego. NajwaŜniejsze aspekty obiektowego programowania rozproszonego to: Współdziałanie (interoperability) modułów programowych na róŝnych maszynach. Wielokrotne wykorzystanie
Mechanizmy pracy równoległej. Jarosław Kuchta
Mechanizmy pracy równoległej Jarosław Kuchta Zagadnienia Algorytmy wzajemnego wykluczania algorytm Dekkera Mechanizmy niskopoziomowe przerwania mechanizmy ochrony pamięci instrukcje specjalne Mechanizmy
Literatura uzupełniająca: W. Richard Stevens, Programowanie zastosowań sieciowych w systemie Unix WNT 1998
Gniazda BSD Literatura uzupełniająca: W. Richard Stevens, Programowanie zastosowań sieciowych w systemie Unix WNT 1998 socket() Użycie gniazd w transmisji połączeniowej bind() listen() socket() accept()
Gniazda BSD implementacja w C#
BSD implementacja w C# Implementacja w C#: Przestrzeń nazw: System.Net.Sockets Klasa: public class Socket : IDisposable Implementacja w C#: Konstruktor: public Socket( AddressFamily addressfamily, SocketType
Sieci komputerowe. Wykład 7: Transport: protokół TCP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski
Sieci komputerowe Wykład 7: Transport: protokół TCP Marcin Bieńkowski Instytut Informatyki Uniwersytet Wrocławski Sieci komputerowe (II UWr) Wykład 7 1 / 23 W poprzednim odcinku Niezawodny transport Algorytmy
Programowanie współbieżne i rozproszone
Programowanie współbieżne i rozproszone WYKŁAD 11 dr inż. CORBA CORBA (Common Object Request Broker Architecture) standard programowania rozproszonego zaproponowany przez OMG (Object Management Group)
RPC Remote Procedural Call. Materiały do prezentacji można znaleźć na stronie: http://www.houp.info/rpc
RPC Remote Procedural Call Materiały do prezentacji można znaleźć na stronie: http://www.houp.info/rpc 1 Wprowadzenie Podstawowe założenia RPC: Program uruchamiany na maszynie A może wywołać procedurę
3. Identyfikacja. SKŁADNIA #include <sys/socket.h> int getpeername(int socket, struct sockaddr *addr, int *addrlen);
3.1. Określanie adresu połączonego hosta 3. #include int getpeername(int socket, struct sockaddr *addr, int *addrlen); Funkcja getpeername dostarcza adresu drugiej strony połączenia. Parametry:
Komunikacja i wymiana danych
Budowa i oprogramowanie komputerowych systemów sterowania Wykład 10 Komunikacja i wymiana danych Metody wymiany danych Lokalne Pliki txt, csv, xls, xml Biblioteki LIB / DLL DDE, FastDDE OLE, COM, ActiveX
Programowanie obiektowe
Programowanie obiektowe Wykład 13 Marcin Młotkowski 27 maja 2015 Plan wykładu Trwałość obiektów 1 Trwałość obiektów 2 Marcin Młotkowski Programowanie obiektowe 2 / 29 Trwałość (persistence) Definicja Cecha
Transport. część 2: protokół TCP. Sieci komputerowe. Wykład 6. Marcin Bieńkowski
Transport część 2: protokół TCP Sieci komputerowe Wykład 6 Marcin Bieńkowski Protokoły w Internecie warstwa aplikacji HTTP SMTP DNS NTP warstwa transportowa TCP UDP warstwa sieciowa IP warstwa łącza danych
Programowanie Sieciowe 1
Programowanie Sieciowe 1 dr inż. Tomasz Jaworski tjaworski@iis.p.lodz.pl http://tjaworski.iis.p.lodz.pl/ Klient UDP Kolejność wykonywania funkcji gniazdowych klienta UDP Protokół UDP jest bezpołączeniowy:
Transport. część 2: protokół TCP. Sieci komputerowe. Wykład 6. Marcin Bieńkowski
Transport część 2: protokół TCP Sieci komputerowe Wykład 6 Marcin Bieńkowski Protokoły w Internecie warstwa aplikacji HTTP warstwa transportowa SMTP TCP warstwa sieciowa warstwa łącza danych warstwa fizyczna
MODEL WARSTWOWY PROTOKOŁY TCP/IP
MODEL WARSTWOWY PROTOKOŁY TCP/IP TCP/IP (ang. Transmission Control Protocol/Internet Protocol) protokół kontroli transmisji. Pakiet najbardziej rozpowszechnionych protokołów komunikacyjnych współczesnych
Klient-Serwer Komunikacja przy pomocy gniazd
II Klient-Serwer Komunikacja przy pomocy gniazd Gniazda pozwalają na efektywną wymianę danych pomiędzy procesami w systemie rozproszonym. Proces klienta Proces serwera gniazdko gniazdko protokół transportu
Podstawowe typy serwerów
Podstawowe typy serwerów 1. Algorytm serwera. 2. Cztery podstawowe typy serwerów. iteracyjne, współbieżne, połączeniowe, bezpołączeniowe. 3. Problem zakleszczenia serwera. 1 Algorytm serwera 1. Utworzenie
Gniazda - Wstęp. Oprogramowanie systemów równoległych i rozproszonych. Sposób komunikacji. Domena adresowa. olas@icis.pcz.pl
Gniazda - Wstęp Oprogramowanie systemów równoległych i rozproszonych Dr inż. Tomasz Olas olas@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Domena adresowa 1/??
Programowanie aplikacji równoległych i rozproszonych. Wykład 4
Wykład 4 p. 1/44 Programowanie aplikacji równoległych i rozproszonych Wykład 4 Dr inż. Tomasz Olas olas@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Gniazda - Wstęp
Komunikacja sieciowa - interfejs gniazd
SOE Systemy Operacyjne Wykład 14 Komunikacja sieciowa - interfejs gniazd dr inŝ. Andrzej Wielgus Instytut Mikroelektroniki i Optoelektroniki WEiTI PW Model komunikacji sieciowej Model OSI (ang. Open System
Gniazda BSD. Procesy w środowisku sieciowym. Gniazda podstawowe funkcje dla serwera. Gniazda podstawowe funkcje dla klienta
Procesy w środowisku sieciowym! Obsługa! Protokół! Numery portów i ogólnie znane adresy! Połączenie (asocjacja) i gniazdo (półasocjacja)! Model klient-serwer " Serwer - bierne otwarcie kanału " Klient
Gniazda surowe. Bartłomiej Świercz. Łódź,9maja2006. Katedra Mikroelektroniki i Technik Informatycznych. Bartłomiej Świercz Gniazda surowe
Gniazda surowe Bartłomiej Świercz Katedra Mikroelektroniki i Technik Informatycznych Łódź,9maja2006 Wstęp Gniazda surowe posiadają pewne właściwości, których brakuje gniazdom TCP i UDP: Gniazda surowe
Gniazda BSD. komunikacja bezpołączeniowa
Gniazda BSD komunikacja bezpołączeniowa Użycie gniazd w transmisji bezpołączeniowej socket() socket() bind() bind() STOP! recv() żądanie send() send() odpowiedź recv() STOP! recvfrom() #include
Programowanie rozproszone w języku Java
Wstęp Gniazda RMI Podsumowanie Programowanie rozproszone w języku Java Wojciech Rząsa wrzasa@prz-rzeszow.pl Katedra Informatyki i Automatyki, Politechnika Rzeszowska 25 maja 2015 Wojciech Rząsa, KIiA PRz
Oprogramowanie komunikacyjne dla Internetu rzeczy Laboratorium nr 4 komunikacja unicastowa IPv6
Oprogramowanie komunikacyjne dla Internetu rzeczy Laboratorium nr 4 komunikacja unicastowa IPv6 Celem ćwiczenia jest zdobycie umiejętności programowania komunikacji unicastowej za pomocą protokołu IPv6
Monitorowanie Sieci nonblocking content packet filtering
Monitorowanie Sieci nonblocking content packet filtering praca inŝynierska prowadzący: prof. dr hab. inŝ. Zbigniew Kotulski Michał Zarychta 1 Plan prezentacji ZałoŜenia projektu Sniffer Technologie WinPcap
Instytut Teleinformatyki
Instytut Teleinformatyki Wydział Inżynierii Elektrycznej i Komputerowej Politechnika Krakowska programowanie usług sieciowych Dziedzina Unix laboratorium: 06 Kraków, 2014 06. Programowanie Usług Sieciowych
Tryb bezpołączeniowy (datagramowy)
Tutaj trochę szerzej opisałam mechanizm gniazdek. 3 tematy wymienione poniŝej przeplatają się ze sobą więc wrzuciłam je do jednego worka i przedstawiłam w takim porządku, który wydawał mi się najbardziej
Sieci komputerowe. Wykład 5: Warstwa transportowa: TCP i UDP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski
Sieci komputerowe Wykład 5: Warstwa transportowa: TCP i UDP Marcin Bieńkowski Instytut Informatyki Uniwersytet Wrocławski Sieci komputerowe (II UWr) Wykład 5 1 / 22 Warstwa transportowa Cechy charakterystyczne:
Wywoływanie metod zdalnych
Wywoływanie metod zdalnych model systemu Wywoływanie metod zdalnych aplikacja kliencka interfejs obiekt serwer Podejście obiektowe do budowy systemów rozproszonych proxy szkielet sieć Istota podejścia
socket(int domain, int type, int protocol)
Co identyfikuje adres IP a co port? IP identyfikuje hosta w sieci port identyfikuje typ procesu (np. 21 FTP, 25 SMTP, 49 LOGIN) gniazdo identyfikuje unikalny nr połączenia Czym różni się deskryptor gniazda
Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone
Typy przetwarzania Przetwarzanie zcentralizowane Systemy typu mainfame Przetwarzanie rozproszone Architektura klient serwer Architektura jednowarstwowa Architektura dwuwarstwowa Architektura trójwarstwowa
Opis protokołu RPC. Grzegorz Maj nr indeksu:
Opis protokołu RPC Grzegorz Maj nr indeksu: 236095 1 Streszczenie Niniejszy dokument opisuje specyfikację protokołu RQP (Remote Queues Protocol). W jego skład wchodzą: opis celów protokołu; opis założeń
Systemy rozproszone. na użytkownikach systemu rozproszonego wrażenie pojedynczego i zintegrowanego systemu.
Systemy rozproszone Wg Wikipedii: System rozproszony to zbiór niezależnych urządzeń (komputerów) połączonych w jedną, spójną logicznie całość. Połączenie najczęściej realizowane jest przez sieć komputerową..
Sieci komputerowe. Zajęcia 3 c.d. Warstwa transportu, protokoły UDP, ICMP
Sieci komputerowe Zajęcia 3 c.d. Warstwa transportu, protokoły UDP, ICMP Zadania warstwy transportu Zapewnienie niezawodności Dostarczanie danych do odpowiedniej aplikacji w warstwie aplikacji (multipleksacja)
Wybrane działy Informatyki Stosowanej
Wybrane działy Informatyki Stosowanej Java Enterprise Edition WebServices Serwer aplikacji GlassFish Dr hab. inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki Aplikacje
Stos protokołów TCP/IP (ang. Transmission Control Protocol/Internet Protocol)
Stos protokołów TCP/IP (ang. Transmission Control Protocol/Internet Protocol) W latach 1973-78 Agencja DARPA i Stanford University opracowały dwa wzajemnie uzupełniające się protokoły: połączeniowy TCP
Systemy rozproszone System rozproszony
Systemy rozproszone Wg Wikipedii: System rozproszony to zbiór niezależnych urządzeń (komputerów) połączonych w jedną, spójną logicznie całość. Połączenie najczęściej realizowane jest przez sieć komputerową.
Architektura typu klient serwer: przesyłanie pliku tekstowo oraz logowania do serwera za pomocą szyfrowanego hasła
Architektura typu klient serwer: przesyłanie pliku tekstowo oraz logowania do serwera za pomocą szyfrowanego hasła Wydział Inżynierii Mechanicznej i Informatyki Instytut Informatyki Teoretycznej i Stosowanej
współbieżność - zdolność do przetwarzania wielu zadań jednocześnie
Systemy rozproszone Wg Wikipedii: System rozproszony to zbiór niezależnych urządzeń (komputerów) połączonych w jedną, spójną logicznie całość. Połączenie najczęściej realizowane jest przez sieć komputerową.
1 Wprowadzenie do J2EE
Wprowadzenie do J2EE 1 Plan prezentacji 2 Wprowadzenie do Java 2 Enterprise Edition Aplikacje J2EE Serwer aplikacji J2EE Główne cele V Szkoły PLOUG - nowe podejścia do konstrukcji aplikacji J2EE Java 2
Programowanie Sieciowe 1
Programowanie Sieciowe 1 dr inż. Tomasz Jaworski tjaworski@iis.p.lodz.pl http://tjaworski.iis.p.lodz.pl/ Cel przedmiotu Zapoznanie z mechanizmem przesyłania danych przy pomocy sieci komputerowych nawiązywaniem
TRX API opis funkcji interfejsu
TRX Krzysztof Kryński Cyfrowe rejestratory rozmów seria KSRC TRX API opis funkcji interfejsu Kwiecień 2013 Copyright TRX TRX ul. Garibaldiego 4 04-078 Warszawa Tel. 22 871 33 33 Fax 22 871 57 30 www.trx.com.pl
Wybrane działy Informatyki Stosowanej
Wybrane działy Informatyki Stosowanej Dr inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki 2017 APLIKACJE SIECIOWE Definicja Architektura aplikacji sieciowych Programowanie
Gniazda UDP. Bartłomiej Świercz. Łódź, 3 kwietnia Katedra Mikroelektroniki i Technik Informatycznych. Bartłomiej Świercz Gniazda UDP
Gniazda UDP Bartłomiej Świercz Katedra Mikroelektroniki i Technik Informatycznych Łódź, 3 kwietnia 2006 Wstęp ZewzględunaróżnicewprotokołachTCPiUDPsposób korzystania z gniazd UDP różni sie znacznie od
Wybrane działy Informatyki Stosowanej
Wybrane działy Informatyki Stosowanej Java Enterprise Edition. WebServices. Język XML. Serwer aplikacji GlassFish. Dr inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki
Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html
Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Dr inż. Zofia Kruczkiewicz wykład 4 Programowanie aplikacji internetowych, wykład 4 1 1. Zadania aplikacji rozproszonych obiektów
SOAP i alternatywy. 1. WSDL. 2. Protokoły tekstowe XML-RPC. JSON-RPC. SOAPjr. 3. Protokoły binarne Google Protocol Bufers. Apache Thrift.
SOAP i alternatywy 1. WSDL. 2. Protokoły tekstowe XML-RPC. JSON-RPC. SOAPjr. 3. Protokoły binarne Google Protocol Bufers. Apache Thrift. 1 WSDL WSDL (Web Services Description Language) jest standardem
PROTOKOŁY WARSTWY TRANSPORTOWEJ
PROTOKOŁY WARSTWY TRANSPORTOWEJ Na bazie protokołu internetowego (IP) zbudowane są dwa protokoły warstwy transportowej: UDP (User Datagram Protocol) - protokół bezpołączeniowy, zawodny; TCP (Transmission
ZESZYTY ETI ZESPOŁU SZKÓŁ W TARNOBRZEGU Nr 1 Seria: Teleinformatyka 2013
ZESZYTY ETI ZESPOŁU SZKÓŁ W TARNOBRZEGU Nr 1 Seria: Teleinformatyka 2013 Paweł Kowalik Zespół Szkół im. ks. S. Staszica w Tarnobrzegu KOMUNIKACJA SIECIOWA MIĘDZY URZĄDZENIAMI Z WYKORZYSTANIEM PROTKOŁU
Wywoływanie metod zdalnych
Wywoływanie metod zdalnych Podejście obiektowe do budowy systemów rozproszonych Wywoływanie metod zdalnych model systemu obiekt aplikacja kliencka interfejs serwer proxy szkielet sieć Istota podejścia
Wprowadzenie do technologii Web Services: SOAP, WSDL i UDDI
Wprowadzenie do technologii Web Services: SOAP, WSDL i UDDI Maciej Zakrzewicz PLOUG mzakrz@cs.put.poznan.pl Plan prezentacji Wprowadzenie do architektury zorientowanej na usługi Charakterystyka technologii
Programowanie równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz
Programowanie równoległe i rozproszone Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz 23 października 2009 Spis treści Przedmowa...................................................
Projektowanie bezpieczeństwa sieci i serwerów
Projektowanie bezpieczeństwa sieci i serwerów Konfiguracja zabezpieczeń stacji roboczej 1. Strefy bezpieczeństwa przeglądarki Internet Explorer. W programie Internet Explorer można skonfigurować ustawienia
Warstwa transportowa. Warstwa transportowa. Enkapsulacja. Zapewnienie niezawodnego przesyłania danych /wg ISO/ Transmisja bezpołączeniowa
Warstwa transportowa Warstwa 4 modelu OSI Warstwa 3 modelu TCP/IP warstwa aplikacji warstwa prezentacji warstwa sesji warstwa transportowa warstwa sieci warstwa łącza danych warstwa fizyczna warstwa aplikacji
Architektury Usług Internetowych. Laboratorium 2. Usługi sieciowe
Architektury Usług Internetowych Laboratorium 2. Usługi sieciowe Wstęp Celem laboratorium jest zapoznanie się z modelem usług sieciowych na przykładzie prostego serwera Apache Axis2. Apache Axis2 Apache
Gniazda. S. Samolej: Gniazda 1
Gniazda dr inż. Sławomir Samolej Katedra Informatyki i Automatyki Politechnika Rzeszowska Program przedmiotu oparto w części na materiałach opublikowanych na: http://wazniak.mimuw.edu.pl/ oraz na materiałach
XML-RPC: Zdalne wykonywanie procedur
XML-RPC: Zdalne wykonywanie procedur Bartłomiej Świercz Katedra Mikroelektroniki i Technik Informatycznych Łódź, 28 października 2005 roku Wstęp Internet dostarcza wiele możliwości programistą piszącym
Protokoły sieciowe - TCP/IP
Protokoły sieciowe Protokoły sieciowe - TCP/IP TCP/IP TCP/IP (Transmission Control Protocol / Internet Protocol) działa na sprzęcie rożnych producentów może współpracować z rożnymi protokołami warstwy
ZiMSK dr inż. Łukasz Sturgulewski, luk@kis.p.lodz.pl, http://luk.kis.p.lodz.pl/ DHCP
ZiMSK dr inż. Łukasz Sturgulewski, luk@kis.p.lodz.pl, http://luk.kis.p.lodz.pl/ dr inż. Artur Sierszeń, asiersz@kis.p.lodz.pl dr inż. Andrzej Frączyk, a.fraczyk@kis.p.lodz.pl DHCP 1 Wykład Dynamiczna konfiguracja
Wykład 4: Protokoły TCP/UDP i usługi sieciowe. A. Kisiel,Protokoły TCP/UDP i usługi sieciowe
N, Wykład 4: Protokoły TCP/UDP i usługi sieciowe 1 Adres aplikacji: numer portu Protokoły w. łącza danych (np. Ethernet) oraz w. sieciowej (IP) pozwalają tylko na zaadresowanie komputera (interfejsu sieciowego),
Architektury usług internetowych. Tomasz Boiński Mariusz Matuszek
Architektury usług internetowych 2016 Tomasz Boiński Mariusz Matuszek Organizacja przedmiotu 1. Wykład 2 kolokwia po 25 punktów (23 listopada i 27 stycznia) 2. 6 zadań laboratoryjnych, zadania 1-5 po 8
Komunikacja z użyciem gniazd aplikacje klient-serwer
Programowanie obiektowe Komunikacja z użyciem gniazd aplikacje klient-serwer Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski @ pwr.wroc.pl Architektura
Kurs OPC S7. Spis treści. Dzień 1. I OPC motywacja, zakres zastosowań, podstawowe pojęcia dostępne specyfikacje (wersja 1501)
Spis treści Dzień 1 I OPC motywacja, zakres zastosowań, podstawowe pojęcia dostępne specyfikacje (wersja 1501) I-3 O czym będziemy mówić? I-4 Typowe sytuacje I-5 Klasyczne podejście do komunikacji z urządzeniami
Tworzenie aplikacji rozproszonej w Sun RPC
Tworzenie aplikacji rozproszonej w Sun RPC Budowa aplikacji realizowana jest w następujących krokach: Tworzenie interfejsu serwera w języku opisu interfejsu RPCGEN Tworzenie: namiastki serwera namiastki
WYKŁAD: Przetwarzanie rozproszone typu klient-serwer.
WYKŁAD: Przetwarzanie rozproszone typu klient-serwer. Przetwarzanie rozproszone: - różnorodne zasoby w różnych lokalizacjach - wiele procesów obliczeniowych dedykowanych do tych zasobów (typowe programy
JĘZYK PYTHON - NARZĘDZIE DLA KAŻDEGO NAUKOWCA. Marcin Lewandowski [ mlew@ippt.gov.pl ]
JĘZYK PYTHON - NARZĘDZIE DLA KAŻDEGO NAUKOWCA Marcin Lewandowski [ mlew@ippt.gov.pl ] PROGRAMOWANIE SIECIOWE 2 TCP/IP = UDP + TCP TCP/IP składa się z dwóch podstawowych protokołów: TCP i UDP. TCP jest
Deduplikacja danych. Zarządzanie jakością danych podstawowych
Deduplikacja danych Zarządzanie jakością danych podstawowych normalizacja i standaryzacja adresów standaryzacja i walidacja identyfikatorów podstawowa standaryzacja nazw firm deduplikacja danych Deduplication
Laboratorium - Przechwytywanie i badanie datagramów DNS w programie Wireshark
Laboratorium - Przechwytywanie i badanie datagramów DNS w programie Wireshark Topologia Cele Część 1: Zapisanie informacji dotyczących konfiguracji IP komputerów Część 2: Użycie programu Wireshark do przechwycenia
Spis treści. Dzień 1. I Wprowadzenie (wersja 0906) II Dostęp do danych bieżących specyfikacja OPC Data Access (wersja 0906) Kurs OPC S7
I Wprowadzenie (wersja 0906) Kurs OPC S7 Spis treści Dzień 1 I-3 O czym będziemy mówić? I-4 Typowe sytuacje I-5 Klasyczne podejście do komunikacji z urządzeniami automatyki I-6 Cechy podejścia dedykowanego
5. Model komunikujących się procesów, komunikaty
Jędrzej Ułasiewicz str. 1 5. Model komunikujących się procesów, komunikaty Obecnie stosuje się następujące modele przetwarzania: Model procesów i komunikatów Model procesów komunikujących się poprzez pamięć
Aplikacja Sieciowa. Najpierw tworzymy nowy projekt, tym razem pracować będziemy w konsoli, a zatem: File->New- >Project
Aplikacja Sieciowa Jedną z fundamentalnych właściwości wielu aplikacji jest możliwość operowania pomiędzy jednostkami (np. PC), które włączone są do sieci. W Windows operacja ta jest możliwa przy wykorzystaniu
SMB protokół udostępniania plików i drukarek
SMB protokół udostępniania plików i drukarek Początki protokołu SMB sięgają połowy lat 80., kiedy to w firmie IBM opracowano jego wczesną wersję (IBM PC Network SMB Protocol). W kolejnych latach protokół
Instrukcja do laboratorium Systemów Operacyjnych. (semestr drugi)
Instrukcja do laboratorium Systemów Operacyjnych (semestr drugi) Ćwiczenie dziesiąte Temat: Gniazda BSD protokoły internetowe Opracowanie: mgr in ż. Arkadiusz Chrobot Wprowadzenie 1. Usługi sieciowe w
Architektura typu klient serwer: uproszczony klient POP3
Architektura typu klient serwer: uproszczony klient POP3 Wydział Inżynierii Mechanicznej i Informatyki Instytut Informatyki Teoretycznej i Stosowanej dr inż. Łukasz Szustak Składniki systemu poczty e-mail
Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV
Piotr Jarosik, Kamil Jaworski, Dominik Olędzki, Anna Stępień Dokumentacja wstępna TIN Rozproszone repozytorium oparte o WebDAV 1. Wstęp Celem projektu jest zaimplementowanie rozproszonego repozytorium
Web Services. Bartłomiej Świercz. Łódź, 2 grudnia 2005 roku. Katedra Mikroelektroniki i Technik Informatycznych. Bartłomiej Świercz Web Services
Web Services Bartłomiej Świercz Katedra Mikroelektroniki i Technik Informatycznych Łódź, 2 grudnia 2005 roku Wstęp Oprogramowanie napisane w różnych językach i uruchomione na różnych platformach może wykorzystać
Instrukcja instalacji Control Expert 3.0
Instrukcja instalacji Control Expert 3.0 Program Control Expert 3.0 jest to program służący do zarządzania urządzeniami kontroli dostępu. Dedykowany jest dla kontrolerów GRx02 i GRx06 oraz rozwiązaniom
RPC. Zdalne wywoływanie procedur (ang. Remote Procedure Calls )
III RPC Zdalne wywoływanie procedur (ang. Remote Procedure Calls ) 1. Koncepcja Aplikacja wywołanie procedury parametry wyniki wykonanie procedury wynik komputer klienta komputer serwera Zaletą takiego
Implementacja aplikacji sieciowych z wykorzystaniem środowiska Qt
Implementacja aplikacji sieciowych z wykorzystaniem środowiska Qt 1. Wprowadzenie Wymagania wstępne: wykonanie ćwiczeń Adresacja IP oraz Implementacja aplikacji sieciowych z wykorzystaniem interfejsu gniazd
Przesyłania danych przez protokół TCP/IP
Przesyłania danych przez protokół TCP/IP PAKIETY Protokół TCP/IP transmituje dane przez sieć, dzieląc je na mniejsze porcje, zwane pakietami. Pakiety są często określane różnymi terminami, w zależności
Web Services. Wojciech Mazur. 17 marca 2009. Politechnika Wrocławska Wydział Informatyki i Zarządzania
Standardy w Rodzaje Przykłady Politechnika Wrocławska Wydział Informatyki i Zarządzania 17 marca 2009 Standardy w Rodzaje Przykłady Plan prezentacji 1 Wstęp 2 Standardy w 3 4 Rodzaje 5 Przykłady 6 Standardy
Serwer SSH. Wprowadzenie do serwera SSH Instalacja i konfiguracja Zarządzanie kluczami
Serwer SSH Serwer SSH Wprowadzenie do serwera SSH Instalacja i konfiguracja Zarządzanie kluczami Serwer SSH - Wprowadzenie do serwera SSH Praca na odległość potrzeby w zakresie bezpieczeństwa Identyfikacja
1. Model klient-serwer
1. 1.1. Model komunikacji w sieci łącze komunikacyjne klient serwer Tradycyjny podziała zadań: Klient strona żądająca dostępu do danej usługi lub zasobu Serwer strona, która świadczy usługę lub udostępnia
Tytuł: Instrukcja obsługi Modułu Komunikacji internetowej MKi-sm TK / 3001 / 016 / 002. Wersja wykonania : wersja oprogramowania v.1.
Zakład Elektronicznych Urządzeń Pomiarowych POZYTON sp. z o. o. 42-200 Częstochowa ul. Staszica 8 p o z y t o n tel. : (034) 361-38-32, 366-44-95, 364-88-82, 364-87-50, 364-87-82, 364-87-62 tel./fax: (034)
Sieci Komputerowe. Wykład 1: TCP/IP i adresowanie w sieci Internet
Sieci Komputerowe Wykład 1: TCP/IP i adresowanie w sieci Internet prof. nzw dr hab. inż. Adam Kisiel kisiel@if.pw.edu.pl Pokój 114 lub 117d 1 Kilka ważnych dat 1966: Projekt ARPANET finansowany przez DOD
Wykład 3 / Wykład 4. Na podstawie CCNA Exploration Moduł 3 streszczenie Dr inż. Robert Banasiak
Wykład 3 / Wykład 4 Na podstawie CCNA Exploration Moduł 3 streszczenie Dr inż. Robert Banasiak 1 Wprowadzenie do Modułu 3 CCNA-E Funkcje trzech wyższych warstw modelu OSI W jaki sposób ludzie wykorzystują
Zadanie 2: transakcyjny protokół SKJ (2015)
Zadanie 2: transakcyjny protokół SKJ (2015) 1 Wstęp Zadanie polega na zaprojektowaniu niezawodnego protokołu transakcyjnego bazującego na protokole UDP. Protokół ten ma być realizowany przez klasy implementujące
Projektowanie architektury systemu rozproszonego. Jarosław Kuchta Projektowanie Aplikacji Internetowych
Projektowanie architektury systemu rozproszonego Jarosław Kuchta Zagadnienia Typy architektury systemu Rozproszone przetwarzanie obiektowe Problemy globalizacji Problemy ochrony Projektowanie architektury
Informatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java
Informatyka I Standard JDBC Programowanie aplikacji bazodanowych w języku Java dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2017 Standard JDBC Java DataBase Connectivity uniwersalny
Zaawansowane narzędzia programowania rozproszonego
Zaawansowane narzędzia programowania rozproszonego Karol Gołąb karol.golab@tls-technologies.com 28 listopada 2001 1 Streszczenie Omówienie i porównanie popularnych standardów mechanizmów komunikacyjnych:
Programowanie w języku Java. Wykład 13: Java Platform, Enterprise Edition (Java EE)
Programowanie w języku Java Wykład 13: Java Platform, Enterprise Edition (Java EE) Standard J2EE Programowanie w języku Java 2 J2EE - komunikacja Programowanie w języku Java 3 J2EE warstwa biznesowa Programowanie
Od uczestników szkolenia wymagana jest umiejętność programowania w języku C oraz podstawowa znajomość obsługi systemu Linux.
Kod szkolenia: Tytuł szkolenia: PS/LINUX Programowanie systemowe w Linux Dni: 5 Opis: Adresaci szkolenia Szkolenie adresowane jest do programistów tworzących aplikacje w systemie Linux, którzy chcą poznać
Wywoływanie procedur zdalnych
Mechanizm wywołania Wywoływanie procedur zdalnych main(int argc, char* argv[]){ int id, status; id = atoi(argv[1]); status = zabij_proc(id); exit(status) int zabij_proces (int pid){ int stat; stat = kill(pid,