Usługa TIME. 77 8A. Usługa jest dostępna zarówno za pośrednictwem TCP i UDP

Wielkość: px
Rozpocząć pokaz od strony:

Download "Usługa TIME. 77 8A. Usługa jest dostępna zarówno za pośrednictwem TCP i UDP"

Transkrypt

1 1 Plan wykładu 1. Programowanie z wykorzystaniem gniazd usługa TIME, usługa ECHO, 2. Popularne aplikacje TCP/IP poczta elektroniczna protokół SMTP, protokół POP, protokół IMAP.

2 2 Usługa TIME Usługa TIME [RFC 868] służy do synchronizacji czasu pomiędzy komputerami w sieci. Czas jest przesyłany w postaci 32 bitowej liczby całkowitej określającej liczbę sekund od 1 stycznia 1900 roku np. C5 1B 77 8A. Usługa jest dostępna zarówno za pośrednictwem TCP i UDP poprzez port 37. Inne usługi wykorzystywane do synchronizacji czasu to NTP (Network Time Protocol) [RFC 1305] i jego odmiana SNTP (Simple Network Time Protocol) [RFC 1769].

3 Klient usługi TIME (UDP) #include "connectsock.c" #define UNIXEPOCH ul int main(int argc, char **argv){ int s; char msg[] = "ktora godzina?"; time_t now; if ((s = connectsock(argv[1], "time", "udp"))<0) return 0; write(s, msg, strlen(msg)); if (read(s, (char *)&now, sizeof(now))<0) return 0; else{ now = ntohl((u_long)now); now -= UNIXEPOCH; printf("%s\n", ctime(&now)); if (shutdown(s, SHUT_RDWR)<0) return 0; return 1; 3

4 4 Klient usługi TIME (UDP) import java.net.datagrampacket; import java.net.datagramsocket; import java.net.inetaddress; import java.util.date; public class TimeUDPClient { private static final int PORT_TIME = 37; private static final String QUERY = "Ktora godzina?"; private static final int LINELEN = 5; private static final long UNIXEPOCH = L; public static void main(string[] args) { try { byte[] buffer = new byte[linelen]; DatagramSocket sock = new DatagramSocket(); DatagramPacket dp = new DatagramPacket( QUERY.getBytes(), 0, QUERY.length(), InetAddress.getByName(args[0]), PORT_TIME);

5 5 Klient usługi TIME (UDP) sock.send(dp); dp = new DatagramPacket(buffer, LINELEN); sock.receive(dp); long time = 0; int i; for (i=0; i<4; i++){ time *= 256; time += (buffer[i] & 255); time -= UNIXEPOCH; time *= 1000; Date d = new Date(time); System.out.println(d); sock.close(); catch (Exception e) { e.printstacktrace();

6 Usługa NTP / SNTP Usługa NTP (Network Time Protocol) jest współcześnie wykorzystywana do synchronizacji czasu. NTP wykorzystuje protokół UDP oraz port 127. W praktyce, jeśli duża dokładność synchronizacji nie jest wymagana, używa się uproszczonej wersji protokołu: SNTP [RFC 2030]. Przykladowy pakiet wysyłany przez klienta: d9: 11 zegar niezsychronizowany 011 wersja protokołu NTP (3) 001 tryb aktywny symetryczny (1). Tryb klienta: 3 00: wartwa (stratum) komputera klienckiego: nieustalona 0a: odstęp między kolejnymi wiadomościami: 2^10 sekund. fa: dokładność zegara: 2^(-6) sekundy : opóźnienie względem źródła czasu: 0.0 (liczba zmiennoprzecinkowa ze znakiem - kropka pomiędzy bitem 15 i 16) : błąd względem źródła czasu 1.01 s. 6

7 7 Usługa NTP/SNTP : identyfikator zegara referencyjnego brak : czas ostatniej aktualizacji lokalnego zegara : czas w którym żądanie zostało wysłane : czas dotarcia żądania do serwera cc a8 03 c9 aa f: przesyłany czas liczba sekund od , kropka pomiędzy bitem 31 i 32: przykładowa odpowiedź serwera: 1a 01 0a e cc a8 04 2b 12 b4 49 7b cc a8 03 c9 aa f: czas otrzymany od klienta (T1) cc a d fa: czas dotarcia żądania do serwera (T2) cc a d d7: aktualny czas (T3)

8 8 Usługa NTP/SNTP Po odebraniu odpowiedzi od serwera, klient ustala aktualny czas w oparciu o: - czas wysłania żądania T1 (wg lokalnego zegara), - czas odebrania odpowiedzi przez serwer T2 (wg zegara serwera), - czas otrzymany z serwera T3 (wg zegara serwera) - czas otrzymania odpowiedzi T4 (wg lokalnego zegara) Różnicę czasów klient oblicza ze wzoru: T = ((T2 T1) + (T3 T4)) / 2. Opóźnienie wyraża się zależnością: D = (T4 T1) (T3 T2).

9 9 Usługa ECHO Usługa ECHO [RFC 347] odsyła klientowi wszystkie otrzymywane od niego dane. Interakcja trwa dopóki klient nie zakończy transmisji. Usługa ECHO jest wykorzystywana głównie do celów diagnostycznych, podobnie jak komenda ping. W przeciwieństwie do niej korzysta z protokołu TCP lub UDP. Do komunikacji wykorzystuje port 7.

10 Klient usługi ECHO (TCP) int main(int argc, char **argv){ int s, i, n1, n2; char buf[linelen+1]; if ((s = connectsock(argv[1], echo, tcp ))<0) return 0; for(i=2; i<argc; i++){ n1 = write(s, argv[i], strlen(argv[i])); while (n1>0 && (n2=read(s, buf, LINELEN))>0){ buf[n2] = '\0'; n1 -= n2; fputs(buf, stdout); fputs( \n, stdout); if (shutdown(s, SHUT_RDWR)<0) return 0; return 1; 10

11 Klient usługi ECHO (UDP) int main(int argc, char **argv){ int s, i, n; char buf[linelen+1]; if ((s = connectsock(argv[1], echo, udp ))<0) return 0; for(i=2; i<argc; i++){ write(s, argv[i], strlen(argv[i])); if ((n=read(s, buf, LINELEN))>0){ buf[n] = '\0'; fputs(buf, stdout); fputs( \n, stdout); if (shutdown(s, SHUT_RDWR)<0) return 0; return 1; 11

12 12 Klient usługi ECHO (TCP) import java.io.inputstream; import java.io.outputstream; import java.net.socket; public class EchoTCPClient { private static final int PORT_ECHO = 7; private static final int LINELEN = 100; public static void main(string[] args) { byte[] buffer = new byte[linelen]; if (args.length<2){ System.out.println("wywolanie java EchoTCPClient serwer argument1 argument2..."); return;

13 13 Klient usługi ECHO (TCP) try { Socket sock = new Socket(args[0], PORT_ECHO); OutputStream os = sock.getoutputstream(); InputStream in = sock.getinputstream(); int i, k, j; for (i=1; i<args.length; i++){ os.write(args[i].getbytes()); for(j=0; j<args[i].length(); j+=k){ k = in.read(buffer); System.out.print(new String(buffer, 0, k)); System.out.println(); sock.close(); catch (Exception e) { e.printstacktrace();

14 Klient usługi ECHO (UDP) public class EchoUDPClient { private static final int PORT_ECHO = 7; private static final int LINELEN = 100; public static void main(string[] args) { try { byte[] buffer = new byte[linelen]; DatagramSocket sock = new DatagramSocket(); DatagramPacket dp; for (int i=1; i<args.length; i++){ dp = new DatagramPacket(args[i].getBytes(), 0, args[i].length(), InetAddress.getByName(args[0]), PORT_ECHO); sock.send(dp); dp = new DatagramPacket(buffer, LINELEN); sock.receive(dp); System.out.println(new String(dp.getData(), 0, dp.getlength())); sock.close(); catch (Exception e) { e.printstacktrace(); 14

15 15 Poczta elektroniczna 1. Wysyłanie wiadomości protokół SMTP (Simple Mail Transfer Protocol). 2. Odbiór wiadomości propokół POP (Post Office Protocol) lub IMAP (Internet Mail Access Protocol). nadawca serwer SMTP Serwer SMTP oraz POP lub IMAP adresat

16 Protokół SMTP Protokół SMTP [RFC 2821, 821, 2554] jest wykorzystywany do wysyłania wiadomości . Port 25. Przykładowe połączenie: [serwer] 220 theta.uoks.uj.edu.pl ESMTP Sendmail /8.13.1; Mon, 11 Oct :19: (CEST) [klient] EHLO [ ]<CRLF> [serwer] 250-theta.uoks.uj.edu.pl Hello rhamnus.if.uj.edu.pl [ ], pleased to meet you 250-ENHANCEDSTATUSCODES AUTH LOGIN PLAIN HELP [klient] AUTH PLAIN <BASE64(login<0x00>hasło)><CRLF> 16

17 Kodowanie Base64 Alfabet Base64 [RFC 1521] 0 A 8 I 16 Q 24 Y 32 g 40 o 48 w B 9 J 17 R 25 Z 33 h 41 p 49 x C 10 K 18 S 26 a 34 i 42 q 50 y D 11 L 19 T 27 b 35 j 43 r 51 z E 12 M 20 U 28 c 36 k 44 s F 13 N 21 V 29 d 37 l 45 t G 14 O 22 W 30 e 38 m 46 u H 15 P 23 X 31 f 39 n 47 v / (pad) = kodowanie: ala ma kota a (0x61) l (0x6C) a (0x61) (0x20) m (0x6D) a (0x61) (0x20) k (0x6B) o (0x6F) t (0x74) a (0x61) wynik: YWxhIG1hIGtvdGE= 17

18 18 Protokół SMTP [serwer] OK Authenticated [klient] MAIL [serwer] Sender ok [klient] RCPT [serwer] Recipient ok [klient] DATA<CRLF> [serwer] 354 Enter mail, end with "." on a line by itself

19 Protokół SMTP [klient] Date: Mon, 11 Oct :19: <CRLF> User-Agent: cokolwiek<crlf> X-Accept-Language: en-us, en<crlf> MIME-Version: 1.0<CRLF> From: ktokolwiek To: Subject: jakis temat<crlf> Content-Type: text/plain; charset=us-ascii<crlf> Content-Transfer-Encoding: 7bit<CRLF><CRLF> tekst testowego maila<crlf>.<crlf> [serwer] Message accepted for delivery [klient] QUIT<CRLF> [serwer] theta.uoks.uj.edu.pl closing connection [serwer] Zakończenie połączenia. 19

20 Protokół POP Protokół POP [RFC 1939] jest używany do odbierania wiadomości znajdujących sie na serwerze. Port 110. Przykładowe połączenie: [serwer] +OK [klient] USER użytkownik<crlf> [serwer] +OK<CRLF> [klient] PASS hasło<crlf> [serwer] +OK<CRLF> [klient] STAT<CRLF> [serwer] 2 540<CRLF> //ilość wiadomości i ich rozmiar w oktetach 20

21 Protokół POP [klient] LIST<CRLF> [serwer] +OK<CRLF>1 120<CRLF>2 420<CRLF> [klient] LIST 3<CRLF> [serwer] +ERR ewentualnie powód błędu<crlf> [klient] RETR 1<CRLF> [serwer] +OK<CRLF> <wiadomość ><crlf> [klient] DELE 1<CRLF> [serwer] +OK<CRLF> [klient] QUIT<CRLF> [serwer] +OK<CRLF> [serwer] Zakończenie połączenia 21

22 22 Protokół POP Inne komendy: RSET odznacza wszystkie wiadomości przeznaczone do skasowania, NOOP podtrzymuje połączenie, Komendy opcjonalne: TOP msg n zwraca nagłówek oraz n początkowych lini wiadomości msg, UIDL msg zwraca unikalny identyfikator wiadomości, APOP login kod inny sposób autoryzacji. Pierwszy argument stanowi nazwę użytkownika, drugi to kod MD5 z połączenia <processid.clock@hostname> oraz ustalonego wcześniej wyrażenia znanego klientowi i serwerowi.

23 Kod MD5 MD5 (Message Digest Algorithm) [RFC 1321] oblicza 128 bitowy kod dla zbioru danych. Kod ten może być traktowany jak cyfrowy podpis (fingerprint) danych. Na podstawie kodu praktycznie nie można odtworzyć oryginalnych danych ponieważ wygenerowanie informacji posiadającej określony kod MD5 wymaga w praktyce operacji. Opis algorytmu: dane wejściowe: m[0] m[1] m[2]... m[b-2] m[b-1] b bitów 1. Uzupełnianie danych. Dopisujemy na końcu bity tak aby długość danych modulo 512 była równa 448. Uzupełnienie wykonujemy także wtedy, gdy dane wejściowe mają już taką długość. 23

24 Kod MD5 2. Podział na 32 bitowe słowa. Dopisujemy początkowy rozmiar danych (b) zapisany w dwóch 32-bitowych słowach, mniej znaczące słowo najpierw (1TB = 2 43 bitów). Niech M[0] M[1]... M[N-1] oznaczają kolejne 32 bitowe słowa otrzymanych danych. N jest wielokrotnością Inicjalizacja obliczeń. Niech: A = B = 89 ab cd ef C = fe dc ba 98 D = F(X,Y,Z) = X and Y or not(x) and Z G(X,Y,Z) = X and Z or Y and not(z) H(X,Y,Z) = X xor Y xor Z I(X,Y,Z) = Y xor (X v not(z)) T[i] = abs( sin(i) ) // 0 < i < 65; 24

25 Kod MD5 4. Obliczenia. For i = 0 to N/16-1 do For j = 0 to 15 do Set X[j] to M[i*16+j]. end /* pętla po j */ AA = A; BB = B; CC = C; DD = D /* Część 1. */ /* Niech [abcd k s i] oznacza operację a = b + ((a + F(b,c,d) + X[k] + T[i]) <<< s). Wykonaj:*/ [ABCD 0 7 1] [DABC ] [CDAB ] [BCDA ] [ABCD 4 7 5] [DABC ] [CDAB ] [BCDA ] [ABCD 8 7 9] [DABC ] [CDAB ] [BCDA ] [ABCD ] [DABC ] [CDAB ] [BCDA ] /* Część 2. */... /* Część 3. */... /* Część 4. */ A = A + AA; B = B + BB; C = C + CC; D = D + DD end /* pętla po i */ 25

26 26 Kod MD5 4. Wynik. Kodem MD5 jest wyrażenie A B C D zapisane w kolejności od najmniej znaczącego bitu A do najbardziej znaczącego bitu D. W systemie linux istnieje komenda md5 wyliczająca kod dla podanego pliku.

27 Protokół IMAP Protokół IMAP [RFC 2060] jest używany do przeglądania wiadomości przechowywanych na serwerze. Port 143. Przykładowe połączenie: [serwer] * OK IMAP4rev1<CRLF> [klient] 1 capability [serwer] * CAPABILITY IMAP4REV1 AUTH=LOGIN<CRLF> 1 OK CAPABILITY completed<crlf> [klient] 2 authenticate login<crlf> [serwer] + VXNlciBOYW1lAA==<CRLF> [klient] <Base64(użytkownik)><CRLF> [serwer] UGFzc3dvcmQA<CRLF> // Base64(User Name) // Base64(Password) [klient] <Base64(hasło)><CRLF> 27

28 [serwer] * 1 FETCH (UID 1082 FLAGS (\Seen))<CRLF> * 2 FETCH (UID 1210 FLAGS (\Answered \Seen))<CRLF> 4 OK FETCH completed.<crlf> 28 Protokół IMAP [serwer] * OK [ALERT] Account expires in 14 day(s)<crlf> inna autoryzacja: 2 login użytkownik hasło <CRLF> [klient] 3 select INBOX <CRLF> [serwer] * FLAGS (\Draft \Answered \Flagged \Deleted \Seen \Recent) * 2 EXISTS * 0 RECENT * OK [UIDVALIDITY ] Ok 3 OK [READ-WRITE] Ok<CRLF> [klient] 4 UID FETCH 1:* (FLAGS)<CRLF>

29 Protokół IMAP [klient] 5 UID FETCH 1210 (UID RFC822.SIZE BODY[])<CRLF> [serwer] * 283 FETCH (UID 1583 RFC822.SIZE 1180 BODY[] {1180<CRLF> [serwer] <wiadomość ><crlf> * 283 FETCH (FLAGS (\Seen \Recent))<CRLF> 5 OK FETCH completed.<crlf> [klient] 6 LOGOUT<CRLF> [serwer] * BYE<CRLF> 6 OK logout completed.<crlf> [serwer] Zakończenie połączenia. 29

30 30 Protokół IMAP Wiadomości na serwerze IMAP są grupowane w katalogach, podobnie jak pliki na dysku. Większość komend protokołu IMAP umożliwia poruszanie sie i wykonywanie odpowiednich operacji na tej strukturze: CREATE, DELETE, RENAME operacje na katalogach (folderach), STORE, COPY, EXPUNGE operacje na wiadomościach. X... - komendy rozszerzające funkcje protokołu IMAP. Odpowiedzi serwera: OK operacja wykonana pomyślnie, NO wystąpił problem, BAD niewłaściwa komenda.

31 Popularne serwery pocztowe SMTP (Mail Transfer Agent): Sendmail ( Qmail ( Postfix ( POP, IMAP courier-imap ( Zarządzanie domenami wirtualnymi vpopmail ( mysql ( 31

32 32 Polecenie Telnet Protokół Telnet [RFC 854] jest/był wykorzystywany głównie pracy terminalowej poprzez port 23. Za pomocą programu klienta usługi Telnet można się także połączyć z dowolnym innym portem na serwerze, np. telnet theta.uoks.uj.edu.pl 25 Komendy wpisywane ze standardowego wejścia (klawiatury) są wysyłane bezpośrednio do wskazanej usługi (SMTP) na serwerze zdalnym. Odpowiedzi są kierowane na standardowe wyjście (ekran).

33 33 Podsumowanie 1. Programowanie z wykorzystaniem gniazd - kontynuacja gniazda w Javie, transmisja TCP i UDP, protokół NTP / SNTP. 2. Przegląd popularnych aplikacji TCP/IP poczta elektroniczna rozsyłanie wiadomości protokół SMTP, odbieranie wiadomości z serwera protokół POP, czytanie wiadomości składowanych na serwerze protokół IMAP.

34 Dodatek: Kod MD5 /* Część 2. */ /* Niech [abcd k s i] oznacza operację a = b + ((a + G(b,c,d) + X[k] + T[i]) <<< s). */ [ABCD ] [DABC ] [CDAB ] [BCDA ] [ABCD ] [DABC ] [CDAB ] [BCDA ] [ABCD ] [DABC ] [CDAB ] [BCDA ] [ABCD ] [DABC ] [CDAB ] [BCDA ] /* Część 3. */ /* Niech [abcd k s i] oznacza operację a = b + ((a + H(b,c,d) + X[k] + T[i]) <<< s). */ [ABCD ] [DABC ] [CDAB ] [BCDA ] [ABCD ] [DABC ] [CDAB ] [BCDA ] [ABCD ] [DABC ] [CDAB ] [BCDA ] [ABCD ] [DABC ] [CDAB ] [BCDA ] /* Część 4. */ /* Niech [abcd k s i] oznacza operację a = b + ((a + I(b,c,d) + X[k] + T[i]) <<< s). */ [ABCD ] [DABC ] [CDAB ] [BCDA ] [ABCD ] [DABC ] [CDAB ] [BCDA ] [ABCD ] [DABC ] [CDAB ] [BCDA ] [ABCD ] [DABC ] [CDAB ] [BCDA ]

Plan wykładu. 1. Poczta elektroniczna protokół SMTP, protokół POP, protokół IMAP. 2. Zdalna praca - Telnet. 3. Transfer plików usługa FTP.

Plan wykładu. 1. Poczta elektroniczna protokół SMTP, protokół POP, protokół IMAP. 2. Zdalna praca - Telnet. 3. Transfer plików usługa FTP. Plan wykładu 1. Poczta elektroniczna protokół SMTP, protokół POP, protokół IMAP. 2. Zdalna praca - Telnet. 3. Transfer plików usługa FTP. 1 Poczta elektroniczna 1. Wysyłanie wiadomości e-mail protokół

Bardziej szczegółowo

Protokół UDP UDP (User Datagram Protocol) . [

Protokół UDP UDP (User Datagram Protocol) . [ 1 Plan wykładu 1. Model TCP/IP protokoły warstwy transportowej: UDP, TCP, połączenie i rozłączenie w TCP. 2. Programowanie z wykorzystaniem gniazd. usługai DATETIME, TIME, ECHO. 3. Popularne aplikacje

Bardziej szczegółowo

Programowanie z wykorzystaniem gniazd

Programowanie z wykorzystaniem gniazd Plan wykładu 1. Programowanie z wykorzystaniem gniazd usługa TIME, usługa ECHO, 2. Popularne aplikacje TCP/IP poczta elektroniczna cz. 1 protokół SMTP, 1 Programowanie z wykorzystaniem gniazd Utworzenie

Bardziej szczegółowo

Podstawowe typy serwerów

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

Bardziej szczegółowo

Przykłady interfejsu TCP i UDP w Javie

Przykłady interfejsu TCP i UDP w Javie Przykłady interfejsu TCP i UDP w Javie W Javie interfejsy TCP i UDP znajdują się w pakiecie java.net http://docs.oracle.com/javase/6/docs/api/java/net/packagesummary.html 1 Przykład interfejsu UDP Protokół

Bardziej szczegółowo

Serwer współbieżny połączeniowy

Serwer współbieżny połączeniowy Serwery współbieżne 1. Serwery współbieżne serwery połączeniowe, usuwanie zakończonych procesów, serwery bezpołączeniowe, 2. Jednoprocesowe serwery współbieżne. koncepcja i implementacja. 1 Serwer współbieżny

Bardziej szczegółowo

Java wybrane technologie

Java wybrane technologie Java wybrane technologie spotkanie nr 2 JavaMail 1 Wprowadzenie JavaMail 1.4 (opiera się na JavaBean Activation Framework (JAF) 1.1) odbieranie, tworzenie i wysyłanie wiadomości elektronicznych dla twórców

Bardziej szczegółowo

Model OSI/ISO. Komputer B. Warstwy w modelu OSI aplikacji. aplikacji. prezentacji Komputer A. prezentacji. sesji. sesji. komunikacja wirtualna

Model OSI/ISO. Komputer B. Warstwy w modelu OSI aplikacji. aplikacji. prezentacji Komputer A. prezentacji. sesji. sesji. komunikacja wirtualna 1 Plan wykładu 1. Model ISO/OSI warstwy modelu OSI transmisja w modelu OSI 2. Model TCP/IP protokół UDP protokół TCP 3. Połączenie i rozłączenie w TCP 4. Programowanie z wykorzystaniem gniazd. 2 Model

Bardziej szczegółowo

Przykład usługi internetowej

Przykład usługi internetowej Przykład usługi internetowej Poczta elektroniczna EMAIL SMTP,POP3 i MAP4 Zarys tematyki obsługi poczty Struktura wiadomości opisana w dokumentach RFC822 MIME Transport wiadomości w sieci Architektura klient-serwer

Bardziej szczegółowo

Java Enterprise Edition spotkanie nr 1 (c.d.) JavaMail

Java Enterprise Edition spotkanie nr 1 (c.d.) JavaMail Java Enterprise Edition spotkanie nr 1 (c.d.) JavaMail 1 Wprowadzenie JavaMail 1.4 (opiera się na JavaBean Activation Framework (JAF) 1.1) odbieranie, tworzenie i wysyłanie wiadomości elektronicznych w

Bardziej szczegółowo

JAVA I SIECI. MATERIAŁY: http://docs.oracle.com/javase/tutorial/networking/index.html

JAVA I SIECI. MATERIAŁY: http://docs.oracle.com/javase/tutorial/networking/index.html JAVA I SIECI ZAGADNIENIA: URL, Interfejs gniazd, transmisja SSL, protokół JNLP. MATERIAŁY: http://docs.oracle.com/javase/tutorial/networking/index.html http://th-www.if.uj.edu.pl/zfs/ciesla/ JĘZYK JAVA,

Bardziej szczegółowo

Architektura aplikacji sieciowych. Architektura klient-serwer

Architektura aplikacji sieciowych. Architektura klient-serwer Warstwa aplikacji Architektura aplikacji sieciowych Architektura klient-serwer Architektura aplikacji sieciowych Architektura P2P Cechy aplikacji sieciowych Skalowalność Anonimowość Samoorganizacja sieci

Bardziej szczegółowo

Sieci Komputerowe. Protokół POP3. Protokół IMAP4 Internet Mail Access Protocol version 4. dr Zbigniew Lipiński

Sieci Komputerowe. Protokół POP3. Protokół IMAP4 Internet Mail Access Protocol version 4. dr Zbigniew Lipiński Sieci Komputerowe Protokół POP3 Post Office Protocol version 3 Protokół IMAP4 Internet Mail Access Protocol version 4 dr Zbigniew Lipiński Instytut Matematyki i Informatyki ul. Oleska 48 50-204 Opole zlipinski@math.uni.opole.pl

Bardziej szczegółowo

PROTOKOŁY OBSŁUGI POCZTY ELEKTRONICZNEJ

PROTOKOŁY OBSŁUGI POCZTY ELEKTRONICZNEJ PROTOKOŁY OBSŁUGI POCZTY ELEKTRONICZNEJ Poczta elektroniczna służy do przesyłania komunikatów tekstowych, jak również dołączonych do nich informacji nietekstowych (obraz, dźwięk) pomiędzy użytkownikami

Bardziej szczegółowo

Bezpieczeństwo poczty elektronicznej

Bezpieczeństwo poczty elektronicznej Bezpieczeństwo poczty elektronicznej Mariusz Goch Politechnika Warszawska Wydział Elektroniki i Technik Informacyjnych 1 Plan prezentacji Bezpieczeństwo transportu wiadomości Problemy serwera pocztowego

Bardziej szczegółowo

Programy typu klient serwer. Programowanie w środowisku rozproszonym. Wykład 5.

Programy typu klient serwer. Programowanie w środowisku rozproszonym. Wykład 5. Programy typu klient serwer. Programowanie w środowisku rozproszonym. Wykład 5. Schemat Internetu R R R R R R R 2 Model Internetu 3 Protokoły komunikacyjne stosowane w sieci Internet Protokoły warstwy

Bardziej szczegółowo

B.B. Połączenie kończy polecenie exit.

B.B. Połączenie kończy polecenie exit. Na początek wykorzystamy telnet do celu, dla którego został pierwotnie skonstruowany, czyli podłączymy się do innego komputera w sieci. Największym problemem zapewne będzie znalezienie takiego komputera,

Bardziej szczegółowo

Laboratorium 3.4.3: Usługi i protokoły e-mail

Laboratorium 3.4.3: Usługi i protokoły e-mail Topologia sieci Tabela adresacji Urządzenie Interfejs Adres IP Maska podsieci Domyślna brama R1-ISP S0/0/0 10.10.10.6 255.255.255.252 Nie dotyczy Fa0/0 192.168.254.253 255.255.255.0 Nie dotyczy R2-Central

Bardziej szczegółowo

Sieci komputerowe i bazy danych

Sieci komputerowe i bazy danych Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie Sieci komputerowe i bazy danych Sprawozdanie 5 Badanie protokołów pocztowych Szymon Dziewic Inżynieria Mechatroniczna Rok: III Grupa: L1 Zajęcia

Bardziej szczegółowo

1. Model klient-serwer

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

Bardziej szczegółowo

Budowa wiadomości SMTP. autorzy: Aleksandra Wichert Marcin Żurowski

Budowa wiadomości SMTP. autorzy: Aleksandra Wichert Marcin Żurowski Budowa wiadomości SMTP autorzy: Aleksandra Wichert Marcin Żurowski Plan wykładu Co to jest SMTP? Koperta Nagłówek Wiadomość Co to jest SMTP? Prosty protokół przesyłania poczty elektronicznej (Simple Mail

Bardziej szczegółowo

Lab5 - Badanie protokołów pocztowych

Lab5 - Badanie protokołów pocztowych BORSKI MICHAŁ, NR INDEKSU: 269963 Lab5 - Badanie protokołów pocztowych Zadania do wykonania 1. Wyszukać w zasobach sieci dokumenty [RFC 5321], [RFC 1939], [RFC 3501] oraz [RFC 5322]. Zapoznać się z ich

Bardziej szczegółowo

Komunikacja z użyciem gniazd aplikacje klient-serwer

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

Bardziej szczegółowo

1. FTP 2. SMTP 3. POP3

1. FTP 2. SMTP 3. POP3 1. FTP FTP jest to protokół transferu plików (File Transfer Protocol), który umożliwia ich wymianę między serwerem, a klientem w obydwie strony. Jest on najpowszechniej wykorzystywaną metodą w Internecie

Bardziej szczegółowo

SMTP co to takiego? SMTP Simple Mail Transfer Protocol (Protokół Prostego Przesyłania Poczty) RFC 2821

SMTP co to takiego? SMTP Simple Mail Transfer Protocol (Protokół Prostego Przesyłania Poczty) RFC 2821 SMTP co to takiego? SMTP Simple Mail Transfer Protocol (Protokół Prostego Przesyłania Poczty) RFC 2821 Protokół niezawodnego przesyłania wiadomości tekstowych (e-mail) za pomocą prostych komend tekstowych.

Bardziej szczegółowo

Architektura typu klient serwer: uproszczony klient POP3

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

Bardziej szczegółowo

MODEL WARSTWOWY PROTOKOŁY TCP/IP

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

Bardziej szczegółowo

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 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)

Bardziej szczegółowo

Programowanie współbieżne i rozproszone

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

Bardziej szczegółowo

Sieci komputerowe Warstwa aplikacji

Sieci komputerowe Warstwa aplikacji Sieci komputerowe Warstwa aplikacji 2012-05-24 Sieci komputerowe Warstwa aplikacji dr inż. Maciej Piechowiak 1 Wprowadzenie warstwa zapewniająca interfejs pomiędzy aplikacjami używanymi do komunikacji,

Bardziej szczegółowo

URL. Budowa URL (ang. Uniform Resource Locator): http://java.sun.com:80/docs/tutorial/index.html?name=net working#downloading

URL. Budowa URL (ang. Uniform Resource Locator): http://java.sun.com:80/docs/tutorial/index.html?name=net working#downloading Obsługa sieci URL Budowa URL (ang. Uniform Resource Locator): http://java.sun.com:80/docs/tutorial/index.html?name=net working#downloading protokół = http authority = java.sun.com:80 host = java.sun.com

Bardziej szczegółowo

Dr Michał Tanaś(http://www.amu.edu.pl/~mtanas)

Dr Michał Tanaś(http://www.amu.edu.pl/~mtanas) Dr Michał Tanaś(http://www.amu.edu.pl/~mtanas) Protokół komunikacyjny zapewniający niezawodność przesyłania danych w sieci IP Gwarantuje: Przyporządkowanie danych do konkretnego połączenia Dotarcie danych

Bardziej szczegółowo

Stos TCP/IP. Warstwa aplikacji cz.2

Stos TCP/IP. Warstwa aplikacji cz.2 aplikacji transportowa Internetu Stos TCP/IP dostępu do sieci Warstwa aplikacji cz.2 Sieci komputerowe Wykład 6 FTP Protokół transmisji danych w sieciach TCP/IP (ang. File Transfer Protocol) Pobieranie

Bardziej szczegółowo

Laboratorium Programowania Kart Elektronicznych

Laboratorium Programowania Kart Elektronicznych Laboratorium Programowania Kart Elektronicznych Programowanie JavaCard Marek Gosławski Przygotowanie do zajęć dokumentacja JavaCard i GlobalPlatform środowisko programistyczne karta JavaCard Potrzebne

Bardziej szczegółowo

Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html

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

Bardziej szczegółowo

Sieci komputerowe. Wykład dr inż. Łukasz Graczykowski

Sieci komputerowe. Wykład dr inż. Łukasz Graczykowski Sieci komputerowe Wykład 6 10.04.2019 dr inż. Łukasz Graczykowski lukasz.graczykowski@pw.edu.pl Semestr letni 2018/2019 Warstwa aplikacji Usługi sieciowe źródło: Helion Warstwa aplikacji W modelu ISO/OSI

Bardziej szczegółowo

System operacyjny UNIX Internet. mgr Michał Popławski, WFAiIS

System operacyjny UNIX Internet. mgr Michał Popławski, WFAiIS System operacyjny UNIX Internet Protokół TCP/IP Został stworzony w latach 70-tych XX wieku w DARPA w celu bezpiecznego przesyłania danych. Podstawowym jego założeniem jest rozdzielenie komunikacji sieciowej

Bardziej szczegółowo

Klient-Serwer Komunikacja przy pomocy gniazd

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

Bardziej szczegółowo

Podstawowe typy serwerów

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. 4. Serwery współbieżne serwery

Bardziej szczegółowo

Wykład 5: Najważniejsze usługi sieciowe: DNS, SSH, HTTP, e-mail. A. Kisiel,Protokoły DNS, SSH, HTTP, e-mail

Wykład 5: Najważniejsze usługi sieciowe: DNS, SSH, HTTP, e-mail. A. Kisiel,Protokoły DNS, SSH, HTTP, e-mail N, Wykład 5: Najważniejsze usługi sieciowe: DNS, SSH, HTTP, e-mail 1 Domain Name Service Usługa Domain Name Service (DNS) Protokół UDP (port 53), klient-serwer Sformalizowana w postaci protokołu DNS Odpowiada

Bardziej szczegółowo

Teoria sieci komputerowych

Teoria sieci komputerowych Teoria sieci komputerowych Wybrane protokoły sieciowe FTP, SMTP, NetBIOS Rafał Wojciechowski FTP FTP(ang. File Transfer Protocol)- protokół typu klient-serwer umożliwiający przesyłanie plików pomiędzy

Bardziej szczegółowo

systemów intra- i internetowych Platformy softwarowe dla rozwoju Architektura Internetu (2) Plan prezentacji: Architektura Internetu (1)

systemów intra- i internetowych Platformy softwarowe dla rozwoju Architektura Internetu (2) Plan prezentacji: Architektura Internetu (1) Maciej Zakrzewicz Platformy softwarowe dla rozwoju systemów intra- i internetowych Architektura Internetu (1) Internet jest zbiorem komputerów podłączonych do wspólnej, ogólnoświatowej sieci komputerowej

Bardziej szczegółowo

Bazy Danych i Usługi Sieciowe

Bazy Danych i Usługi Sieciowe Bazy Danych i Usługi Sieciowe Sieci komputerowe Paweł Daniluk Wydział Fizyki Jesień 2012 P. Daniluk (Wydział Fizyki) BDiUS w. VI Jesień 2012 1 / 24 Historia 1 Komputery mainframe P. Daniluk (Wydział Fizyki)

Bardziej szczegółowo

TIN Techniki Internetowe lato 2015

TIN Techniki Internetowe lato 2015 TIN Techniki Internetowe lato 2015 Grzegorz Blinowski Instytut Informatyki Politechniki Warszawskiej Plan wykładów 2 Intersieć, ISO/OSI, protokoły sieciowe, IP 3 Protokół IP i prot. transportowe: UDP,

Bardziej szczegółowo

Ćwiczenie 1. Kolejki IBM Message Queue (MQ)

Ćwiczenie 1. Kolejki IBM Message Queue (MQ) Ćwiczenie 1. Kolejki IBM Message Queue (MQ) 1. Przygotowanie Przed rozpoczęciem pracy, należy uruchomić "Kreator przygotowania WebSphere MQ" oraz przejść przez wszystkie kroki kreatora, na końcu zaznaczając

Bardziej szczegółowo

Kurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016

Kurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016 Wykład 1 3 marca 2016 Słowa kluczowe języka Java abstract, break, case, catch, class, const, continue, default, do, else, enum, extends, final, finally, for, goto, if, implements, import, instanceof, interface,

Bardziej szczegółowo

Programowanie w języku Java

Programowanie w języku Java Programowanie w języku Java Wykład 4: Programowanie rozproszone: TCP/IP, URL. Programowanie sieciowe w Javie proste programowanie sieciowe (java.net) na poziomie UDP na poziomie IP na poziomie URL JDBC

Bardziej szczegółowo

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 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ą

Bardziej szczegółowo

Obiektowe programowanie rozproszone Java RMI. Krzysztof Banaś Systemy rozproszone 1

Obiektowe programowanie rozproszone Java RMI. Krzysztof Banaś Systemy rozproszone 1 Obiektowe programowanie rozproszone Java RMI Krzysztof Banaś Systemy rozproszone 1 Java RMI Mechanizm zdalnego wywołania metod Javy (RMI Remote Method Invocation) posiada kilka charakterystycznych cech,

Bardziej szczegółowo

Technologie internetowe

Technologie internetowe Protokół HTTP Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Spis treści Protokół HTTP Adresy zasobów Jak korzystać z telnet? Metody protokołu HTTP Kody odpowiedzi Pola nagłówka HTTP - 2 - Adresy

Bardziej szczegółowo

Mechanizmy pracy równoległej. Jarosław Kuchta

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

Bardziej szczegółowo

Java programowanie w sieci. java.net RMI

Java programowanie w sieci. java.net RMI Java programowanie w sieci java.net RMI Programowanie sieciowe OSI WARSTWA APLIKACJI (7) WARSTWA PREZENTACJI(6) WARSTWA SESJI (5) WARSTWA TRANSPORTU (4) DoD Warstwa aplikacji (HTTP) Transport (gniazdka)

Bardziej szczegółowo

ZESZYTY ETI ZESPOŁU SZKÓŁ W TARNOBRZEGU Nr 1 Seria: Teleinformatyka 2012 POCZTA ELEKTRONICZNA PROTOKÓŁ SMTP PRZYKŁADY KOMUNIKACJI

ZESZYTY ETI ZESPOŁU SZKÓŁ W TARNOBRZEGU Nr 1 Seria: Teleinformatyka 2012 POCZTA ELEKTRONICZNA PROTOKÓŁ SMTP PRZYKŁADY KOMUNIKACJI ZESZYTY ETI ZESPOŁU SZKÓŁ W TARNOBRZEGU Nr 1 Seria: Teleinformatyka 2012 Mateusz Gaweł Zespół Szkół im. ks. S. Staszica w Tarnobrzegu POCZTA ELEKTRONICZNA PROTOKÓŁ SMTP PRZYKŁADY KOMUNIKACJI Streszczenie

Bardziej szczegółowo

TCP/IP. Warstwa aplikacji. mgr inż. Krzysztof Szałajko

TCP/IP. Warstwa aplikacji. mgr inż. Krzysztof Szałajko TCP/IP Warstwa aplikacji mgr inż. Krzysztof Szałajko Modele odniesienia 7 Aplikacji 6 Prezentacji 5 Sesji 4 Transportowa 3 Sieciowa 2 Łącza danych 1 Fizyczna Aplikacji Transportowa Internetowa Dostępu

Bardziej szczegółowo

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 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

Bardziej szczegółowo

Obiekty sieciowe - gniazda Komputery w sieci Internet komunikują się ze sobą poprzez:

Obiekty sieciowe - gniazda Komputery w sieci Internet komunikują się ze sobą poprzez: Obiekty sieciowe - gniazda Komputery w sieci Internet komunikują się ze sobą poprzez: TCP (Transport Control Protocol) User Datagram Protocol (UDP). TCP/IP (IP - Iternet Protocol) jest warstwowym zestawem

Bardziej szczegółowo

Iteracyjny serwer TCP i aplikacja UDP

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

Bardziej szczegółowo

Java a dost p do Internetu.

Java a dost p do Internetu. Java a dost p do Internetu. Robert A. Kªopotek r.klopotek@uksw.edu.pl Wydziaª Matematyczno-Przyrodniczy. Szkoªa Nauk cisªych, UKSW 20.04.2017 Java a dost p do Internetu Java Networking - jest koncepcj

Bardziej szczegółowo

Programowanie w języku Java. Bazy danych SQLite w Javie

Programowanie w języku Java. Bazy danych SQLite w Javie Programowanie w języku Java Bazy danych SQLite w Javie Co to jest SQLite SQLite to bezserwerowa, nie wymagająca konfiguracji relacyjna baza danych. Znajduje szerokie zastosowanie np.. w systemie android

Bardziej szczegółowo

Bezpieczeństwo poczty elektronicznej

Bezpieczeństwo poczty elektronicznej Bezpieczeństwo poczty elektronicznej Mariusz Goch Wydział Elektroniki i Technik Informacyjnych Politechnika Warszawska W aktualnych czasach bezpieczeństwo komunikacji stało się jednym z najistotniejszych

Bardziej szczegółowo

Język JAVA podstawy. wykład 2, część 1. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Język JAVA podstawy. wykład 2, część 1. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy wykład 2, część 1 1 Język JAVA podstawy Plan wykładu: 1. Rodzaje programów w Javie 2. Tworzenie aplikacji 3. Tworzenie apletów 4. Obsługa archiwów 5. Wyjątki 6. Klasa w klasie! 2 Język

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Wykład 2: Wstęp do języka Java 3/4/2013 S.Deniziak: Programowanie obiektowe - Java 1 Cechy języka Java Wszystko jest obiektem Nie ma zmiennych globalnych Nie ma funkcji globalnych

Bardziej szczegółowo

Kurs programowania. Wykład 10. Wojciech Macyna. 05 maja 2016

Kurs programowania. Wykład 10. Wojciech Macyna. 05 maja 2016 Wykład 10 05 maja 2016 Biblioteka wejścia/wyjścia (Input/Output) import java.io.*; Umożliwia przechowywania danych na nośniku zewnętrznym Dane moga być wysyłane do plików, na drukarkę, do bufora pamięci,

Bardziej szczegółowo

Aplikacje RMI Lab4

Aplikacje RMI   Lab4 Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Lab4 Dr inż. Zofia Kruczkiewicz Programowanie aplikacji internetowych 1 1. Koncepcja budowy aplikacji RMI (aplikacja rozproszonych

Bardziej szczegółowo

Tworzenie i wykorzystanie usług

Tworzenie i wykorzystanie usług Strona 1 Co to jest usługa w systemie Android? Usługi HTTP Obsługa wywołania HTTP GET Obsługa wywołania HTTP POST Obsługa wieloczęściowego wywołania HTTP POST Usługi lokalne Usługi zdalne Tworzenie usługi

Bardziej szczegółowo

Wieloplatformowe aplikacje sieciowe. dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak

Wieloplatformowe aplikacje sieciowe. dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak Wieloplatformowe aplikacje sieciowe dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak SOAP Serwer: Axis2 / Java Wbudowany komponent nasłuchujący, (Apache / Tomcat) Client Axis2 klient / XML Jeżyk programowania:

Bardziej szczegółowo

Komponenty sterowane komunikatami

Komponenty sterowane komunikatami Komponenty sterowane komunikatami 1. Usługa JMS asynchroniczność, model przesyłania komunikatów, 2. Przykład wysyłanie wiadomości, odbieranie wiadomości, komponent sterowany komunikatami 3. Komponenty

Bardziej szczegółowo

Adresy URL. Zaawansowane technologie Javy 2019

Adresy URL. Zaawansowane technologie Javy 2019 Adresy URL Zaawansowane technologie Javy 2019 Podstawowe pojęcia dotyczące sieci Sieć to zbiór komputerów i innych urządzeń, które mogą się ze sobą komunikować w czasie rzeczywistym za pomocą transmisji

Bardziej szczegółowo

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 7

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś  Wykład 7 Kryptografia z elementami kryptografii kwantowej Ryszard Tanaś http://zon8.physd.amu.edu.pl/~tanas Wykład 7 Spis treści 11 Algorytm ElGamala 3 11.1 Wybór klucza.................... 3 11.2 Szyfrowanie.....................

Bardziej szczegółowo

SOAP. Autor: Piotr Sobczak

SOAP. Autor: Piotr Sobczak SOAP Autor: Piotr Sobczak AGENDA: Trochę o Web Services Wprowadzenie do SOAP Anatomia komunikatu SOAP Wysyłanie i otrzymywanie komunikatu SOAP oraz API Javy w przykładach SOAP z załącznikami SOAP-RPC Obsługa

Bardziej szczegółowo

Protokoły sieciowe - TCP/IP

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

Bardziej szczegółowo

Aplikacja Sieciowa. Najpierw tworzymy nowy projekt, tym razem pracować będziemy w konsoli, a zatem: File->New- >Project

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

Bardziej szczegółowo

Platformy Programistyczne Zagadnienia sieciowe i wątki

Platformy Programistyczne Zagadnienia sieciowe i wątki Platformy Programistyczne Zagadnienia sieciowe i wątki Agata Migalska 27/28 maja 2014 Komunikacja sieciowa 1 Komunikacja sieciowa 2 Wiele wątków 3 Serializacja Architektura typu klient-serwer Architektura

Bardziej szczegółowo

Proxy (pełnomocnik) Cel: Zastosowanie: Dostarczyć zamiennik pewnego obiektu, pozwalający kontrolować dostęp do niego.

Proxy (pełnomocnik) Cel: Zastosowanie: Dostarczyć zamiennik pewnego obiektu, pozwalający kontrolować dostęp do niego. Proxy (pełnomocnik) Cel: Dostarczyć zamiennik pewnego obiektu, pozwalający kontrolować dostęp do niego. Zastosowanie: Wszędzie tam, gdzie oczekujemy bardziej zaawansowanego odwołania do obiektu, niż zwykły

Bardziej szczegółowo

Technologie cyfrowe. Artur Kalinowski. Zakład Cząstek i Oddziaływań Fundamentalnych Pasteura 5, pokój 4.15 Artur.Kalinowski@fuw.edu.

Technologie cyfrowe. Artur Kalinowski. Zakład Cząstek i Oddziaływań Fundamentalnych Pasteura 5, pokój 4.15 Artur.Kalinowski@fuw.edu. Technologie cyfrowe Artur Kalinowski Zakład Cząstek i Oddziaływań Fundamentalnych Pasteura 5, pokój 4.15 Artur.Kalinowski@fuw.edu.pl Semestr letni 2014/2015 Usługi internetowe usługa internetowa (ang.

Bardziej szczegółowo

Tytuł: Instrukcja obsługi Modułu Komunikacji internetowej MKi-sm TK / 3001 / 016 / 002. Wersja wykonania : wersja oprogramowania v.1.

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)

Bardziej szczegółowo

Wybrane działy Informatyki Stosowanej

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

Bardziej szczegółowo

Gatesms.eu Mobilne Rozwiązania dla biznesu

Gatesms.eu Mobilne Rozwiązania dla biznesu Mobilne Rozwiązania dla biznesu SPECYFIKACJA TECHNICZNA WEB API-USSD GATESMS.EU wersja 0.9 Opracował: Gatesms.eu Spis Historia wersji dokumentu...3 Bezpieczeństwo...3 Wymagania ogólne...3 Mechanizm zabezpieczenia

Bardziej szczegółowo

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. 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

Bardziej szczegółowo

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy Wykład 3, część 3 1 Język JAVA podstawy Plan wykładu: 1. Konstrukcja kodu programów w Javie 2. Identyfikatory, zmienne 3. Typy danych 4. Operatory, instrukcje sterujące instrukcja warunkowe,

Bardziej szczegółowo

Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA.

Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA. Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA. Celem ćwiczenia jest przygotowanie prostej aplikacji wykorzystującej architekturę CORBA. Aplikacja składa się z usługodawcy (serwera)

Bardziej szczegółowo

Aplikacja wielowątkowa prosty komunikator

Aplikacja wielowątkowa prosty komunikator Aplikacja wielowątkowa prosty komunikator Klient 0 (host 1) Wątek 0 Komponent serwera Wątek pochodny 3.1 Klient 1 (host 2) Wątek 1 Komponent serwera Wątek pochodny 3.2 Host 4 Serwer Wątek 3 Klient 2 (host

Bardziej szczegółowo

Języki i metody programowania Java. Wykład 2 (część 2)

Języki i metody programowania Java. Wykład 2 (część 2) Języki i metody programowania Java INF302W Wykład 2 (część 2) Autor Dr inż. Zofia Kruczkiewicz 1 Struktura wykładu 1. Identyfikacja danych reprezentowanych przez klasy podczas opracowania koncepcji prostego

Bardziej szczegółowo

Wysyłanie wiadomości elektronicznych. Aplikacja KlientSmtp

Wysyłanie wiadomości elektronicznych. Aplikacja KlientSmtp Wysyłanie wiadomości elektronicznych. Aplikacja KlientSmtp dr Zbigniew Lipiński Instytut Matematyki i Informatyki UO ul. Oleska 48, 50-204 Opole zlipinski@math.uni.opole.pl Protokół SMTP, Simple Mail Transfer

Bardziej szczegółowo

JAVA I BAZY DANYCH. MATERIAŁY: http://docs.oracle.com/javase/tutorial/jdbc/basics/index.html

JAVA I BAZY DANYCH. MATERIAŁY: http://docs.oracle.com/javase/tutorial/jdbc/basics/index.html JAVA I BAZY DANYCH ZAGADNIENIA: wprowadzenie; JDBC; komunikacja z bazą danych; HSQLDB. MATERIAŁY: http://docs.oracle.com/javase/tutorial/jdbc/basics/index.html http://th-www.if.uj.edu.pl/zfs/ciesla/ JĘZYK

Bardziej szczegółowo

Plan wykładu. 1. Protokół FTP. 2. Protokół HTTP, usługi www, model request-response (żądanie-odpowiedź), przekazywanie argumentów, AJAX.

Plan wykładu. 1. Protokół FTP. 2. Protokół HTTP, usługi www, model request-response (żądanie-odpowiedź), przekazywanie argumentów, AJAX. Plan wykładu 1. Protokół FTP. 2. Protokół HTTP, usługi www, model request-response (żądanie-odpowiedź), przekazywanie argumentów, AJAX. 1 Protokół FTP Protokół FTP (File Transfer Protocol) [RFC 959] umożliwia

Bardziej szczegółowo

Metody Metody, parametry, zwracanie wartości

Metody Metody, parametry, zwracanie wartości Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Metody Metody, parametry, zwracanie wartości Metody - co to jest i po co? Metoda to wydzielona część klasy, mająca

Bardziej szczegółowo

RPC. Zdalne wywoływanie procedur (ang. Remote Procedure Calls )

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

Bardziej szczegółowo

Podstawy i języki programowania

Podstawy i języki programowania Podstawy i języki programowania Laboratorium 8 - wprowadzenie do obsługi plików tekstowych i wyjątków mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 11 grudnia 2017 1 / 34 mgr inż. Krzysztof

Bardziej szczegółowo

Zaawansowany kurs języka Python

Zaawansowany kurs języka Python 13 grudnia 2013 Plan wykładu 1 2 Wersje Cechy Plan wykładu 1 2 Wersje Cechy Schemat sieci HTTP, POP3, SMTP, FTP Application layer Transport layer TCP, UDP Internet Protokół UDP Cechy protokołu Protokół

Bardziej szczegółowo

Protokół HTTP. 1. Protokół HTTP, usługi www, model request-response (żądanie-odpowiedź), przekazywanie argumentów, AJAX.

Protokół HTTP. 1. Protokół HTTP, usługi www, model request-response (żądanie-odpowiedź), przekazywanie argumentów, AJAX. Protokół HTTP 1. Protokół HTTP, usługi www, model request-response (żądanie-odpowiedź), przekazywanie argumentów, AJAX. 1 Usługi WWW WWW (World Wide Web) jest najpopularniejszym sposobem udostępniania

Bardziej szczegółowo

Pierwsze kroki. Algorytmy, niektóre zasady programowania, kompilacja, pierwszy program i jego struktura

Pierwsze kroki. Algorytmy, niektóre zasady programowania, kompilacja, pierwszy program i jego struktura Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Pierwsze kroki Algorytmy, niektóre zasady programowania, kompilacja, pierwszy program i jego struktura Co znaczy

Bardziej szczegółowo

Warstwa aplikacji. część 2. Sieci komputerowe. Wykład 10. Marcin Bieńkowski

Warstwa aplikacji. część 2. Sieci komputerowe. Wykład 10. Marcin Bieńkowski Warstwa aplikacji część 2 Sieci komputerowe Wykład 10 Marcin Bieńkowski Warstwy protokołów warstwa aplikacji HTTP SMTP DNS NTP warstwa transportowa TCP UDP warstwa sieciowa IP warstwa łącza danych Ethernet

Bardziej szczegółowo

Programowanie w Internecie

Programowanie w Internecie mariusz@math.uwb.edu.pl http://math.uwb.edu.pl/~mariusz Uniwersytet w Białymstoku 2018/2019 Co to jest Internet? Warunki zaliczenia Zaliczenie na podstawie opracowanej samodzielnie aplikacji WWW Zastosowane

Bardziej szczegółowo

Języki Programowania II Wykład 3. Java podstawy. Przypomnienie

Języki Programowania II Wykład 3. Java podstawy. Przypomnienie Języki Programowania II Wykład 3 Java podstawy Przypomnienie Analiza, projektowanie, programowanie, testowanie, wdrażanie Iteracyjnie nie kaskadowo Przypadki użycia = opowiastki o używaniu systemu = wymagania

Bardziej szczegółowo

Programowanie rozproszone w języku Java

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

Bardziej szczegółowo

Plan wykładu. 1. Sieć komputerowa 2. Rodzaje sieci 3. Topologie sieci 4. Karta sieciowa 5. Protokoły używane w sieciach LAN 6.

Plan wykładu. 1. Sieć komputerowa 2. Rodzaje sieci 3. Topologie sieci 4. Karta sieciowa 5. Protokoły używane w sieciach LAN 6. Plan wykładu 1. Sieć komputerowa 2. Rodzaje sieci 3. Topologie sieci 4. Karta sieciowa 5. Protokoły używane w sieciach LAN 6. Modem analogowy Sieć komputerowa Siecią komputerową nazywa się grupę komputerów

Bardziej szczegółowo

INFORMATYKA dla kierunku MECHATRONIKA

INFORMATYKA dla kierunku MECHATRONIKA INFORMATYKA dla kierunku MECHATRONIKA Część 11 Usługi sieciowe dr hab. inż. Marek Galewski Politechnika Gdańska Wydział Mechaniczny Katedra Mechaniki i Mechatroniki 1 Usługi sieciowe Typowe usługi sieciowe

Bardziej szczegółowo

Technologie cyfrowe semestr letni 2018/2019

Technologie cyfrowe semestr letni 2018/2019 Technologie cyfrowe semestr letni 2018/2019 Tomasz Kazimierczuk Porty port (ang. port): numer identyfikujący procesy działające na komputerze. Wymiana informacji między komputerami wymaga podania numeru

Bardziej szczegółowo

Akademickie Centrum Informatyki PS. Wydział Informatyki PS

Akademickie Centrum Informatyki PS. Wydział Informatyki PS Akademickie Centrum Informatyki PS Wydział Informatyki PS Akademickie Centrum Informatyki Wydział Informatyki P.S. Warstwy transmisyjne Protokoły sieciowe Krzysztof Bogusławski tel. 449 41 82 kbogu@man.szczecin.pl

Bardziej szczegółowo