Mapa wykładu. Poczta elektroniczna

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

Download "Mapa wykładu. Poczta elektroniczna"

Transkrypt

1 Mapa wykładu 2.1 Zasady budowy protokołów w. aplikacji 2.2 WWW i HTTP 2.3 DNS 2.4 Programowanie przy użyciu gniazd TCP 2.5 Programowanie przy użyciu gniazd UDP 2.6 Poczta elektroniczna SMTP, POP3, IMAP 2.7 FTP 2.8 Dystrybucja zawartości Schowki Internetowe Sieci dystrybucji zawartości 2.9 Dzielenie plików P2P 1 Poczta elektroniczna Trzy główne składniki: agenci użytkownika serwery poczty simple mail transfer protocol: SMTP Agent użytkownika (AU) czyli przeglądarka poczty kompozycja, edycja, czytanie poczty elektronicznej n.p., Eudora, Outlook, elm, Netscape Messenger wychodzące i przychodzące wiadomości zachowywane są na serwerze serwer poczty SMTP serwer poczty agent użytk. agent użytk. SMTP SMTP agent użytk. kolejka wiadomości do wysłania skrzynka pocztowa użytkownika serwer poczty agent użytk. agent użytk. agent użytk. 2 1

2 Poczta elektroniczna: serwery poczty Serwery poczty skrzynka zawiera wiadomości przychodzące od użytkowników kolejka wiadomości zawiera wiadomości do wysłania protokół SMTP wysyła pocztę pomiędzy serwerami poczty tak naprawdę, jest to protokół w modelu partnerskim (ang. peer-to-peer) serwer poczty SMTP serwer poczty agent użytk. agent użytk. SMTP SMTP agent użytk. serwer poczty agent użytk. agent użytk. agent użytk. 3 Poczta elektroniczna: SMTP [RFC 2821] używa TCP do niezawodnej komunikacji poczty pomiędzy serwerami, port 25 bezpośrednia komunikacja: serwer nadawcy do serwera odbiorcy trzy etapy komunikacji: inicjalizacja (powitanie) wymiana komunikatów zakończenie interakcja typu "polecenie/odpowiedź" polecenia: tekst ASCII odpowiedź: kod i fraza statusu komunikaty muszą być kodowane 7-bitowym ASCII 4 2

3 Scenariusz: Alicja wysyła pocztę do Boba 1) Alicja używa AU do skomponowania listu i wysyła go do: bob@szkola.edu.pl 2) AU alicji wysyła komunikat do jej serwera poczty; komunikat jest umieszczany w kolejce 3) Serwer SMTP otwiera połączenie TCP z serwerem poczty Boba 4) Serwer SMTP Alicji wysyła komunikat przez połączenie TCP 5) Serwer SMTP Boba umieszcza list w skrzynce Boba 6) Bob używa AU do przeczytania wiadomości 1 AU serwer poczty serwer poczty 5 6 AU 5 Przykładowa interakcja SMTP S: 220 hamburger.edu C: HELO nalesnik.pl S: 250 Hello nalesnik.pl, pleased to meet you C: MAIL FROM: <alice@nalesnik.pl> S: 250 alice@nalesnik.pl... Sender ok C: RCPT TO: <bob@hamburger.edu> S: 250 bob@hamburger.edu... Recipient ok C: DATA S: 354 Enter mail, end with "." on a line by itself C: Czy lubisz ketchup? C: A moze ogoreczka? C:. S: 250 Message accepted for delivery C: QUIT S: 221 hamburger.edu closing connection 6 3

4 Spróbuj sam porozmawiać w SMTP: telnet nazwaserwera 25 obejrzyj odpowiedź 220 serwera wpisz polecenia HELO, MAIL FROM, RCPT TO, DATA, QUIT W ten sposób można wysyłać pocztę bez przeglądarki poczty 7 Podsumowanie o SMTP SMTP używa trwałych połączeń SMTP wymaga, żeby komunikat (nagłówek i dane) były kodowane w 7-bitowym ASCII Serwer SMTP używa CRLF.CRLF do rozpoznania końca danych Porównania z HTTP: HTTP: pull (pobieranie) SMTP: push (wypychanie) Oba mają komunikaty żądań/odpowiedzi w ASCII, kody wynikowe HTTP: każdy obiekt zawarty w swoim własnym komunikacie odpowiedzi SMTP: wiele obiektów może być wysłane w wieloczęściowym komunikacie 8 4

5 Format komunikatu poczty SMTP: protokół dla poczty elektronicznej RFC 822: standard opisujący format komunikatów tekstowych: linie nagłówków, n.p., To: From: Subject: różne od poleceń SMTP! dane list, tylko znaki ASCII nagłówki dane pusta linia 9 Format komunikatu poczty: rozszerzenia dla multimediów MIME: multimedia mail extension, RFC 2045, 2056 dodatkowe linie nagłówka określają typ MIME dla zawartości listu Wersja MIME metoda kodowaniadanych typ oraz podtyp danych multimedialnych, deklaracje parametrów kodowane dane From: alice@nalesnik.pl To: bob@hamburger.edu Subject: Zdjecie pysznych nalesnikow MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Type: image/jpeg dane kodowane przez base dane kodowane przez base

6 Typy MIME Content-Type: typ/podtyp; parametery Tekst przykładowe podtypy: plain, html Obraz przykładowe podtypy: jpeg, gif Dźwięk przykładowe podtypy: basic (kodowanie 8-bit mu-law), 32kadpcm (kodowanie 32 kbps) Wideo przykładowe podtypy: mpeg, quicktime Dane aplikacji dane, które muszą zostać przetworzone przez aplikacje, zanim można je pokazać przykładowe podtypy: msword, octet-stream 11 Typ Multipart (załączniki poczty) From: To: Subject: Zdjecie pysznych nalesnikow MIME-Version: 1.0 Content-Type: multipart/mixed; boundary=zalacznik --Zalacznik Kochany Bobie, oto zdjecie nalesnika. --Zalacznik Content-Transfer-Encoding: base64 Content-Type: image/jpeg base64 encoded data base64 encoded data --Zalacznik Czy chcesz przepis? 12 6

7 Protokoły dostępu do poczty AU SMTP SMTP protokół dostępowy AU Serwer poczty nadawcy Serwer poczty odbiorcy SMTP: dostarczanie poczty do serwera odbiorcy Protokół dostępowy: odbieranie poczty z serwera i zarządzanie skrzynką pocztową POP: Post Office Protocol [RFC 1939] uwierzytelnienie (agent <--> serwer) o pobranie poczty IMAP: Internet Mail Access Protocol [RFC 1730] więcej funkcji (bardziej złożony) synchronizacja lokalnej skrzynki oraz skrzynki na serwerze HTTP: Hotmail, Yahoo! Mail, itd. 13 Protokół POP3 etap uwierzytelnienia polecenia klienta: user: podaję login pass: podaję hasło odpowiedzi serwera +OK -ERR etap transakcji, klient: list: podaj numery listów retr: pobierz list o numerze dele: usuń quit: zakończ S: +OK POP3 server ready C: user bob S: +OK C: pass glodny S: +OK user successfully logged on C: list S: S: S:. C: retr 1 S: <message 1 contents> S:. C: dele 1 C: retr 2 S: <message 1 contents> S:. C: dele 2 C: quit S: +OK POP3 server signing off 14 7

8 Protokół POP3 (cd) oraz IMAP Więcej o POP3 Poprzedni przykład używał tryby pobierz i usuń. Bob nie może przeczytać listu ponownie, jeśli zmieni przeglądarkę Pobierz i zostaw : kopie listów w wielu przeglądarkach POP3 jest bezstanowy pomiędzy sesjami IMAP Wszystkie listy są w jednym miejscu: na serwerze Użytkownik może organizować pocztę w foldery IMAP zachowuje stan użytkownika pomiędzy sesjami: nazwy folderów oraz przyporządkowanie listów do folderów 15 Mapa wykładu 2.1 Zasady budowy protokołów w. aplikacji 2.2 WWW i HTTP 2.3 DNS 2.4 Programowanie przy użyciu gniazd TCP 2.5 Programowanie przy użyciu gniazd UDP 2.6 Poczta elektroniczna SMTP, POP3, IMAP 2.7 FTP 2.8 Dystrybucja zawartości Schowki Internetowe Sieci dystrybucji zawartości 2.9 Dzielenie plików P2P 16 8

9 DNS: Domain Name System Ludzie: wiele identyfikatorów: PESEL, nazwisko, numer paszportu Hosty, rutery Internetu: adres IP (32 bity) używany do adresowania pakietów Czy to wystarczy? Co zrobić, jeśli adres IP musi ulec zmianie? Jak określać usługi, które są realizowane przez wiele serwerów? Jak odróżniać różne usługi, które są realizowane przez jeden serwer? Domain Name System: rozproszona baza danych implementowana przez hierarchię wielu serwerów nazw protokół warstwy aplikacji hosty, rutery, serwery nazw komunikują się, żeby tłumaczyć nazwy uwaga: jedna z głównych funkcji Internetu, implementowana jako protokół w warstwie aplikacji złożoność na "brzegu" sieci Rozwiązanie: nazwa, n.p., używana przez ludzi Pytanie: jak tłumaczyć pomiędzy adresami IP i nazwami? 17 Serwery nazw DNS Czemu nie scentralizować DNS? zagrożenie pojedynczą awarią ilość ruchu odległość od scentralizowanej bazy aktualizacje taki projekt nie jest skalowalny! Zasada delegacji organizacja zarządza strefą nazw w obrębie strefy, może wydzielać mniejsze strefy organizacja przekazuje zarządzanie za strefę innym organizacjom żaden serwer nie zna wszystkich odwzorowań adresów IP i nazw DNS lokalne serwery nazw: każdy DI, organizacja ma lokalny (domyślny) serwer nazw pytanie DNS z hosta jest kierowane najpierw do lokalnego serwera nazw autorytatywny serwer nazw: dla hosta: przechowuje adres IP i nazwę DNS hosta może dokonać odwzorowania pomiędzy nazwą i adresem dla tego hosta 18 9

10 DNS: serwery u korzenia lokalny serwer nazw pyta serwer u korzenia, gdy nie może przetłumaczyć nazwy serwer u korzenia: kontaktuje się z serwerem autorytatywnym, jeśli nie zna odwzorowania nazwy otrzymuje odwzorowanie przekazuje odwzorowanie do lokalnego serwera nazw e NASA Mt View, CA f Internet Software C. Palo Alto, CA b USC-ISI Marina del Rey, CA l ICANN Marina del Rey, CA a NSI Herndon, VA c PSInet Herndon, VA d U Maryland College Park, MD g DISA Vienna, VA h ARL Aberdeen, MD j NSI (TBD) Herndon, VA k RIPE London i NORDUnet Stockholm m WIDE Tokyo 13 serwerów u korzenia na całym świecie 19 Prosty przykład działania DNS serwer u korzenia host surf.eurecom.fr potrzebuje adresu IP gaia.cs.umass.edu 1. pyta swój lokalny serwer DNS, dns.eurecom.fr 2. dns.eurecom.fr pyta serwer u korzenia, jeśli to konieczne 3. serwer u korzenia pyta serwer autorytatywny, dns.umass.edu, jeśli to konieczne serwer lokalny dns.eurecom.fr pytający host surf.eurecom.fr serwer autorytatywny dns.umass.edu gaia.cs.umass.edu 20 10

11 Przykład działania DNS root name server Serwer u korzenia: może nie znać serwera autorytatywnego może znać pośredni serwer nazw: kogo spytać o autorytatywny serwer lokalny serwer nazw dns.eurecom.fr pytający host surf.eurecom.fr pośredni serwer nazw dns.umass.edu 4 5 serwer autorytatywny dns.cs.umass.edu gaia.cs.umass.edu 21 DNS: iterowane pytania serwer u korzenia pytanie rekurencyjne: obciąża pytany serwer zadaniem zdobycia odpowiedzi duże obciążenie? pytanie iterowane: pytany serwer odpowiada adresem serwera, który należy pytać dalej Nie znam tej nazwy, ale spytaj ten serwer lokalny serwer dns.eurecom.fr pytający host surf.eurecom.fr pytanie iterowane serwer pośredni dns.umass.edu 5 6 serwer autorytatywny dns.cs.umass.edu gaia.cs.umass.edu 22 11

12 DNS: schowki i aktualizacja rekordów gdy (dowolny) serwer nazw pozna odwzorowanie, zachowuje je w schowku pozycje w schowku ulegają dezaktualizacji (znikają) po pewnym czasie mechanizmy aktualizacji (powiadamiania) są projektowane przez IETF RFC Rekordy DNS DNS: rozproszona baza danych przechowująca rekordy zasobów (RZ) Typ=A Typ=NS format RZ: (nazwa, wartość, typ,czas życia) nazwa hosta wartość jest adresem IP nazwa jest domeną (n.p. edu.pl) wartość jest adresem IP autorytatywnego serwera nazw dla tej domeny Typ=CNAME nazwa jest aliasem dla pewnej kanonicznej (prawdziwej) nazwy jest naprawdę servereast.backup2.ibm.com wartość jest nazwą kanoniczną Typ=MX wartość jest nazwą serwera poczty związanego z nazwą 24 12

13 Protokół, komunikaty DNS Protokół DNS : komunikaty pytania i odpowiedzi, oba z tym samym formatem komunikatu nagłówek komunikatu identyfikacja: 16 bitów na numer pytanie, odpowiedź używa tego samego numeru flagi: pytanie lub odpowiedź żądana rekurencja rekurencja dostępna odpowiedź jest autorytatywna identyfikator ilość pytań ilość autorytatywnych rekordów pytania (zmienna ilość) odpowiedzi (zmienna ilość) flagi ilość rekordów ilość dodatkowych rekordów autorytatywne odpowiedzi (zmienna ilość rekordów) dodatkowa informacja (zmienna ilość rekordów) 12 bajtów 25 Mapa wykładu 2.1 Zasady budowy protokołów w. aplikacji 2.2 WWW i HTTP 2.3 DNS 2.4 Programowanie przy użyciu gniazd TCP 2.5 Programowanie przy użyciu gniazd UDP 2.6 Poczta elektroniczna SMTP, POP3, IMAP 2.7 FTP 2.8 Dystrybucja zawartości Schowki Internetowe Sieci dystrybucji zawartości 2.9 Dzielenie plików P2P 26 13

14 FTP: file transfer protocol użytkownik pracujący na hoście Interfejs użytk. FTP Klient FTP lokalny system plików transfer plików Serwer FTP zdalny system plików transfer pliku z/na zdalny host model klient/serwer klient: strona, która rozpoczyna transmisję serwer: zdalny host ftp: RFC 959 serwer ftp: port FTP: oddzielne połączenie kontrolne i transferu plików Klient FTP kontaktuje się z serwerem na porcie 21 (TCP) Przez połączenie kontrolne, klient uzyskuje autoryzację Klient przegląda zdalny system plików przesyłając polecenia FTP przez połączenie kontrolne. Gdy serwer otrzymuje polecenie transferu pliku, otwiera połączenie TCP do klienta Po przesłaniu pliku, serwer zamyka nowe połączenie. Klient FTP Kontrolne połączenie TCP, port 21 Połączenie TCP dla danych, port 20 Serwer FTP Dla przesłania drugiego pliku, serwer otwiera drugie połączenie. Połączenie kontrolne: poza pasmem Serwer FTP utrzymuje stan : aktualny katalog, wcześniejszą autoryzację 28 14

15

16 Polecenia i odpowiedzi FTP Przykładowe polecenia: posyłane jako tekst ASCII przez połączenie kontrolne USER login PASS password LIST zwraca listę plików w aktualnym katalogu RETR nazwapliku pobiera plik STOR nazwapliku zapisuje plik na zdalnym hoście Przykładowe odpowiedzi FTP kod i opis wyniku (jak w HTTP) 331 Username OK, password required 125 data connection already open; transfer starting 425 Can t open data connection 452 Error writing file 31 Warstwa transportu 32 16

17 Mapa wykładu Usługi warstwy transportu Multipleksacja i demultipleksacja Transport bezpołączeniowy: UDP Zasady niezawodnej komunikacji danych Transport połączeniowy: TCP struktura segmentu niezawodna komunikacja kontrola przepływu zarządzanie połączeniem Mechanizmy kontroli przeciążenia Kontrola przeciążenia w TCP 33 Usługi i protokoły warstwy transportu logiczna komunikacja pomiędzy procesami aplikacji działającymi na różnych hostach protokoły transportowe działają na systemach końcowych nadawca: dzieli komunikat aplikacji na segmenty, przekazuje segmenty do warstwy sieci odbiorca: łączy segmenty w komunikat, który przekazuje do warstwy aplikacji więcej niż jeden protokół transportowy Internet: TCP oraz UDP ale może też być SAP (NetWare) application transport network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical application transport network data link physical 34 17

18 Warstwy transportu i sieci warstwa sieci: logiczna komunikacja pomiędzy hostami warstwa transportu: logiczna komunikacja pomiędzy procesami korzysta z oraz uzupełnia usługi warstwy sieci Analogia: pracownicy firmy zamawiają pizzę procesy = pracownicy komunikaty = pizze hosty = firma i pizzeria protokół transportowy = zamawiający pracownik protokół sieci = doręczyciel pizzy 35 Protokoły transportowe Internetu niezawodna, uporządkowana komunikacja (TCP) kontrola przeciążenia kontrola przepływu tworzenie połączenia zawodna, nieuporządkowana komunikacja (UDP) proste rozszerzenie usługi best-effort IP niedostępne usługi: gwarancje maksymalnego opóźnienia gwarancje minimalnej przepustowości application transport network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical application transport network data link physical 36 18

19 Mapa wykładu Usługi warstwy transportu Multipleksacja i demultipleksacja Transport bezpołączeniowy: UDP Zasady niezawodnej komunikacji danych Transport połączeniowy: TCP struktura segmentu niezawodna komunikacja kontrola przepływu zarządzanie połączeniem Mechanizmy kontroli przeciążenia Kontrola przeciążenia w TCP 37 Multipleksacja/demultipleksacja Demultipleksacja u odbiorcy przekazywanie otrzymanych segmentów do właściwych gniazd Multipleksacja u nadawcy zbieranie danych z wielu gniazd, dodanie nagłówka (używanego później przy demultipleksacji) = gniazdo = proces aplikacji P3 P1 P1 aplikacji P2 P4 aplikacji transportu sieci łącza transportu sieci łącza transportu sieci łącza fizyczna fizyczna host 1 host 2 host 3 fizyczna 38 19

20 Jak działa demultipleksacja host otrzymuje pakiety IP każdy pakiet ma adres IP nadawcy, adres IP odbiorcy każdy pakiet zawiera jeden segment warstwy transportu każdy segment ma port nadawcy i odbiorcy (pamiętać: powszechnie znane numery portów dla określonych aplikacji) host używa adresu IP i portu żeby skierować segment do odpowiedniego gniazda 32 bity port nadawcy port odbiorcy inne pola nagłówka dane aplikacji (komunikat) format segmentu TCP/UDP 39 Demultipleksacja bezpołączeniowa Gniazda są tworzone przez podanie numeru portu: DatagramSocket mojegniazdo1 = new DatagramSocket(99111); DatagramSocket mojegniazdo2 = new DatagramSocket(99222); Gniazdo UDP jest identyfikowane przez parę: (adres IP odbiorcy, port odbiorcy) Kiedy host otrzymuje segment UDP: sprawdza port odbiorcy w segmencie kieruje segment UDP do gniazda z odpowiednim numerem portu Datagramy IP z różnymi adresami IP lub portami nadawcy są kierowane do tego samego gniazda 40 20

21 Demultipleksacja bezpołączeniowa (c.d.) DatagramSocket gniazdoserwera = new DatagramSocket(6428); P2 P3 P1 P1 PN: 6428 PO: 9157 PN: 6428 PO: 5775 PN: 9157 PN: 5775 klient IP: A PO: 6428 serwer IP: C PO: 6428 klient IP:B Port nadawcy (PN) jest adresem zwrotnym. 41 Demultipleksacja połączeniowa Gniazdo TCP jest określane przez cztery wartości: adres IP nadawcy port nadawcy adres IP odbiorcy port odbiorcy Host odbierający używa wszystkich 4 wartości, żeby skierować segment do właściwego gniazda Uwaga: host sprawdza także 5 wartość: protokół Host serwera może obsługiwać wiele gniazd TCP jednocześnie: każde gniazdo ma inne 4 wartości Serwery WWW mają oddzielne gniazda dla każdego klienta HTTP z nietrwałymi połączeniami wymaga oddzielnego gniazda dla każdego żądania 42 21

22 Demultipleksacja połączeniowa (c.d) P1 P4 P5 P6 P2 P1 P3 PN: 5775 PO: 80 IP-N: B IP-O: C PN: 9157 PN: 9157 klient IP: A PO: 80 IP-N: A IP-O: C serwer IP: C PO: 80 IP-N: B IP-O: C klient IP: B 43 Demultipleksacja połączeniowa i serwer wielowątkowy P1 P4 P2 P1 P3 PN: 5775 PO: 80 IP-N: B IP-O:C PN: 9157 PN: 9157 klient IP: A PO: 80 IP-N: A IP-O: C serwer IP: C PO: 80 IP-N: B IP-O: C klient IP: B 44 22

23 Porty komunikacyjne Numer przydzielony przez system: 0 po wywołaniu bind system wybiera numer portu (znaleźć go można po wywołaniu getsockname()) Porty zarezerwowane: Porty dobrze znane: (/etc/services) Porty zwyczajowo zarezerwowane dla Unixa BSD: Przydzielane przez rresvport: Porty wolne Mapa wykładu Usługi warstwy transportu Multipleksacja i demultipleksacja Transport bezpołączeniowy: UDP Zasady niezawodnej komunikacji danych Transport połączeniowy: TCP struktura segmentu niezawodna komunikacja kontrola przepływu zarządzanie połączeniem Mechanizmy kontroli przeciążenia Kontrola przeciążenia w TCP 46 23

24 UDP: User Datagram Protocol [RFC 768] bez bajerów, odchudzony protokół transportowy Internetu usługa typu best effort, segmenty UDP mogą zostać: zgubione dostarczone do aplikacji w zmienionej kolejności bezpołączeniowy: nie ma inicjalizacji między nadawcą i odbiorcą UDP każdy segment UDP jest obsługiwany niezależnie od innych Czemu istnieje UDP? nie ma inicjalizacji połączenia (co może zwiększać opóźnienie) prosty: nie ma stanu połączenia u nadawcy ani odbiorcy mały nagłówek segmentu nie ma kontroli przeciążenia: UDP może słać dane tak szybko, jak chce 47 Więcej o UDP Długość segmentu UDP w bajtach Często używane do (z nagłówkiem) komunikacji strumieniowej tolerującej straty wrażliwej na opóźnienia Inne zastosowania UDP DNS SNMP niezawodna komunikacja po UDP: dodać niezawodność w warstwie aplikacji Praca domowa port nadawcy długość 32 bity Dane aplikacji (komunikat) port odbiorcy suma kontrolna Format segmentu UDP 48 24

25 Suma kontrolna UDP Cel: odkrycie błędów (n.p., odwróconych bitów) w przesłanym segmencie Nadawca: traktuje zawartość segmentu jako ciąg 16- bitowych liczb całkowitych suma kontrolna: dodawanie (i potem negacja sumy) zawartości segmentu nadawca wpisuje wartość sumy kontrolnej do odpowiedniego pola nagłówka UDP Odbiorca: oblicza sumę kontrolną odebranego segmentu sprawdza, czy obliczona suma kontrolna jest równa tej, która jest w nagłówku: NIE wykryto błąd TAK Nie wykryto błędu. Ale może błąd jest i tak? Wrócimy do tego. 49 Przykład sumy kontrolnej Uwaga Dodając liczby, reszta z dodawania najbardziej znaczących bitów musi zostać dodana do wyniku (zawinięta, przeniesiona na początek) Przykład: suma kontrolna dwóch liczb 16-bitowych zawinięcie suma suma kontrolna

26 na chwilę wracamy do Warstwy aplikacji 51 Mapa wykładu 2.1 Zasady budowy protokołów w. aplikacji 2.2 WWW i HTTP 2.3 DNS 2.4 Programowanie przy użyciu gniazd TCP 2.5 Programowanie przy użyciu gniazd UDP 2.6 Poczta elektroniczna SMTP, POP3, IMAP 2.7 FTP 2.8 Dystrybucja zawartości Schowki Internetowe Sieci dystrybucji zawartości 2.9 Dzielenie plików P2P 52 26

27 Programowanie gniazd UDP UDP: brak połączenia pomiędzy klientem i serwerem brak inicjalizacji połączenia nadawca nadaje każdemu pakietowi adres IP i port odbiorcy serwer musi pobrać adres IP, port nadawcy z otrzymanego pakietu UDP: wysyłane informacje mogą być gubione lub otrzymywane w innym porządku punkt widzenia programisty UDP udostępnia zawodną komunikację ciągów bajtów ( datagramów ) pomiędzy klientem i serwerem 53 Interakcja klient/serwer: UDP Serwer (działa na hostid) Klient tworzy gniazdo, port=x, dla nadchodzących połączeń : serversocket = DatagramSocket() czyta komunikat z serversocket tworzy gniazdo, clientsocket = DatagramSocket() Tworzy, adresuje (hostid, port=x), wysyła datagram z komunikatem przez clientsocket wysyła odpowiedź serversocket podając adres i port klienta czyta odpowiedź z clientsocket zamyka clientsocket 54 27

28 sendpacket receivepacket infromuser Przykład: Klient w Javie (UDP) klawiatura monitor Proces klienta Wyjście: wysyła pakiet (przez TCP, wysyłał strumień bajtów ) strumien wejsciowy pakiet UDP pakiet UDP Wejście: odbiera pakiet (przez TCP odbierał strumień bajtów ) gniazdo clientsocket UDP klienta gniazdo UDP do sieci z sieci 55 Przykład: klient w Javie (UDP) Tworzy strumień wejściowy Tworzy gniazdo klienta Tłumaczy nazwę na adres IP używając DNS import java.io.*; import java.net.*; class UDPClient { public static void main(string args[]) throws Exception { BufferedReader infromuser = new BufferedReader(new InputStreamReader(System.in)); DatagramSocket clientsocket = new DatagramSocket(); InetAddress IPAddress = InetAddress.getByName("hostname"); byte[] senddata = new byte[1024]; byte[] receivedata = new byte[1024]; String sentence = infromuser.readline(); senddata = sentence.getbytes(); 56 28

29 Przykład: klient w Javie (UDP), c.d. Tworzy datagram z danymi do wysłania, długością, adresem IP, portem Wysyła datagram do serwera Czyta datagram z serwera } DatagramPacket sendpacket = new DatagramPacket(sendData, senddata.length, IPAddress, 9876); clientsocket.send(sendpacket); DatagramPacket receivepacket = new DatagramPacket(receiveData, receivedata.length); clientsocket.receive(receivepacket); String modifiedsentence = new String(receivePacket.getData()); System.out.println("FROM SERVER:" + modifiedsentence); clientsocket.close(); } 57 Przykład: serwer w Javie (UDP) import java.io.*; import java.net.*; Tworzy gniazdo UDP na porcie 9876 class UDPServer { public static void main(string args[]) throws Exception { DatagramSocket serversocket = new DatagramSocket(9876); byte[] receivedata = new byte[1024]; byte[] senddata = new byte[1024]; Tworzy miejsce na otrzymany datagram Odbiera datagram while(true) { DatagramPacket receivepacket = new DatagramPacket(receiveData, receivedata.length); serversocket.receive(receivepacket); 58 29

30 Przykład: serwer w Javie (UDP), c.d. Pobiera adres IP, numer portu, nadawcy pakietu String sentence = new String(receivePacket.getData()); InetAddress IPAddress = receivepacket.getaddress(); int port = receivepacket.getport(); String capitalizedsentence = sentence.touppercase(); Tworzy datagram do wysłania do klienta Wysyła datagram przez gniazdo } } senddata = capitalizedsentence.getbytes(); DatagramPacket sendpacket = new DatagramPacket(sendData, senddata.length, IPAddress, port); serversocket.send(sendpacket); } Koniec pętli "while", powrót i oczekiwanie na następny datagram 59 wracamy do Warstwy transportu 60 30

31 Mapa wykładu Usługi warstwy transportu Multipleksacja i demultipleksacja Transport bezpołączeniowy: UDP Zasady niezawodnej komunikacji danych Transport połączeniowy: TCP struktura segmentu niezawodna komunikacja kontrola przepływu zarządzanie połączeniem Mechanizmy kontroli przeciążenia Kontrola przeciążenia w TCP 61 Zasady niezawodnej komunikacji danych Ważne w warstwie aplikacji, transportu i łącza Jeden z najważniejszych tematów w dziedzinie sieci! warstwa wyższa Proces nadawcy dane Proces odbiorcy dane warstwa niezawodna kanał niezawodny npk_send() dane deliver_data() dane Niezawodny protokół transportowy (nadawca) zpk_send() pakiet Niezawodny protokół transportowy (odbiorca) npk_recv() pakiet warstwa niższa a) udostępniana usługa kanał zawodny b) implementacja usługi charakterystyka zawodnego kanału określa złożoność niezawodnego protokołu komunikacji (npk) 62 31

32 Niezawodna komunikacja (npk) npk_send(): wywoływany przez wyższą warstwę. Przekazuje dane do przesłania do odbiorcy deliver_data(): wywoływany przez npk. Przekazuje dane do wyższej warstwy npk_send dane dane deliver_data warstwa niezawodna Niezawodny protokół transportowy (nadawca) Niezawodny protokół transportowy (odbiorca) zpk_send pakiet pakiet npk_recv warstwa niższa nadawca kanał zawodny odbiorca zpk_send(): wywoływany przez npk. Wysyła pakiet przez zawodny kanał do odbiorcy npk_rcv(): wywoływany przez niższą warstwę, gdy pakiet zostanie odebrany po stronie odbiorcy 63 Niezawodna komunikacja: początki Co zrobimy: stopniowo zaprojektujemy nadawcę i odbiorcę niezawodnego protokołu komunikacji (npk) komunikacja danych tylko w jedną stronę ale dane kontrolne w obie strony! użyjemy automatów skończonych (AS) do specyfikacji nadawcy, odbiorcy zdarzenie powodujące zmianę stanu czynności wykonywane przy zmianie stanu stan: w określonym stanie, następny stan jest jednoznacznie określony przez następne zdarzenie stan 1 zdarzenie (lub brak: ) czynności (lub brak: ) stan

33 Npk1.0: niezawodna komunikacja przez niezawodny kanał używany kanał jest w pełni niezawodny nie ma błędów bitowych pakiety nie są tracone oddzielne AS dla nadawcy, odbiorcy: nadawca wysyła dane przez kanał odbiorca odbiera dane z kanału wywołanie z góry npk_send(data) packet = make_pkt(data) zpk_send(packet) wywołanie z dołu npk_rcv(packet) extract (packet,data) deliver_data(data) nadawca odbiorca 65 Npk2.0: kanał z błędami bitowymi kanał może zmieniać bity w pakiecie suma kontrolna pozwala rozpoznać błędy bitowe pytanie: jak naprawić błąd: potwierdzenia (ang. acknowledgement, ACKs): odbiorca zawiadamia nadawcę, że pakiet jest dotarł bez błędu negatywne potwierdzenia (NAKs): odbiorca zawiadamia nadawcę, że pakiet ma błędy nadawca retransmituje pakiet po otrzymaniu NAK nowe mechanizmy w npk2.0: rozpoznawanie błędów informacja zwrotna od odbiorcy: komunikaty kontrolne (ACK,NAK) odbiorca->nadawca 66 33

34 Mapa wykładu Usługi warstwy transportu Multipleksacja i demultipleksacja Transport bezpołączeniowy: UDP Zasady niezawodnej komunikacji danych Transport połączeniowy: TCP struktura segmentu niezawodna komunikacja kontrola przepływu zarządzanie połączeniem Mechanizmy kontroli przeciążenia Kontrola przeciążenia w TCP 67 npk2.0: specyfikacja AS npk_send(data) snkpkt = make_pkt(data, checksum) wywołanie z góry npk_rcv(rcvpkt) && isack(rcvpkt) nadawca ACK lub NAK npk_rcv(rcvpkt) && isnak(rcvpkt) zpk_send(sndpkt ) odbiorca npk_rcv(rcvpkt) && corrupt(rcvpkt) zpk_send(nak) wywołanie z dołu npk_rcv(rcvpkt) && notcorrupt(rcvpkt) extract(rcvpkt,data) deliver_data(data) zpk_send(ack) 68 34

35 npk2.0: działanie bez błędów npk_send(data) snkpkt = make_pkt(data, checksum) wywołanie z góry npk_rcv(rcvpkt) && isack(rcvpkt) ACK lub NAK npk_rcv(rcvpkt) && isnak(rcvpkt) zpk_send(sndpkt ) npk_rcv(rcvpkt) && corrupt(rcvpkt) zpk_send(nak) wywołanie z dołu npk_rcv(rcvpkt) && notcorrupt(rcvpkt) extract(rcvpkt,data) deliver_data(data) zpk_send(ack) 69 npk2.0: działanie z błędami npk_send(data) snkpkt = make_pkt(data, checksum) wywołanie z góry npk_rcv(rcvpkt) && isack(rcvpkt) ACK lub NAK npk_rcv(rcvpkt) && isnak(rcvpkt) zpk_send(sndpkt ) npk_rcv(rcvpkt) && corrupt(rcvpkt) zpk_send(nak) wywołanie z dołu npk_rcv(rcvpkt) && notcorrupt(rcvpkt) extract(rcvpkt,data) deliver_data(data) zpk_send(ack) 70 35

36 npk2.0 ma fatalny błąd! Co się stanie, gdy ACK/NAK będzie miał błąd? nadawca nie wie, co się stało u odbiorcy! nie można po prostu zawsze retransmitować: możliwe jest wysłanie pakietu podwójnie (duplikatu). Obsługa duplikatów: nadawca dodaje numer sekwencyjny do każdego pakietu nadawca retransmituje aktualny pakiet, jeśli ACK/NAK ma błąd odbiorca wyrzuca (nie przekazuje wyżej) zduplikowane pakiety wstrzymaj i czekaj Nadawca wysyła jeden pakiet, potem czeka na odpowiedź odbiorcy 71 npk2.1: nadawca, obsługuje błędne ACK/NAK npk_rcv(rcvpkt) && notcorrupt(rcvpkt) && isack(rcvpkt) npk_rcv(rcvpkt) && ( corrupt(rcvpkt) isnak(rcvpkt) ) sndpkt = make_pkt(0, data, checksum) wywołanie z góry numer=0 ACK lub NAK numer=1 npk_send(data) ACK lub NAK numer=0 wywołanie z góry numer=1 npk_send(data) sndpkt = make_pkt(1, data, checksum) npk_rcv(rcvpkt) && ( corrupt(rcvpkt) isnak(rcvpkt) ) npk_rcv(rcvpkt) && notcorrupt(rcvpkt) && isack(rcvpkt) 72 36

37 npk2.1: odbiorca, obsługuje błędne ACK/NAK npk_rcv(rcvpkt) && (corrupt(rcvpkt) sndpkt = make_pkt(nak, chksum) npk_rcv(rcvpkt) && not corrupt(rcvpkt) && has_seq1(rcvpkt) sndpkt = make_pkt(ack, chksum) npk_rcv(rcvpkt) && notcorrupt(rcvpkt) && has_seq0(rcvpkt) extract(rcvpkt,data) deliver_data(data) sndpkt = make_pkt(ack, chksum) Czekaj na wyw. z dołu numer=0 Czekaj na wyw. z dołu numer=1 npk_rcv(rcvpkt) && notcorrupt(rcvpkt) && has_seq1(rcvpkt) extract(rcvpkt,data) deliver_data(data) sndpkt = make_pkt(ack, chksum) npk_rcv(rcvpkt) && (corrupt(rcvpkt) sndpkt = make_pkt(nak, chksum) npk_rcv(rcvpkt) && not corrupt(rcvpkt) && has_seq0(rcvpkt) sndpkt = make_pkt(ack, chksum) 73 npk2.1: dyskusja Nadawca: Dodaje numer sekwencyjny do pakietu Dwa numery (0,1) wystarczą. Dlaczego? musi sprawdzać, czy ACK/NAK jest poprawny dwa razy więcej stanów (niż w npk2.0) stan musi pamiętać aktualny numer sekwencyjny (0 lub 1) Odbiorca: musi sprawdzać, czy odebrany pakiet jest duplikatem stan wskazuje, czy oczekuje numeru sekwencyjnego 0, czy 1 uwaga: odbiorca może nie wiedzieć czy ostatni ACK/NAK został poprawnie odebrany przez nadawcę 74 37

38 npk2.2: protokół bez negatywnych potwierdzeń (NAK) ta sama funkcjonalność co w npk2.1, używając tylko zwykłych potwierdzeń (ACK) zamiast NAK, odbiorca wysyła ACK za ostatni poprawnie odebrany pakiet odbiorca musi dodać numer sekwencyjny pakietu, który jest potwierdzany powtórne ACK u nadawcy powoduje tę samą czynność co NAK: retransmisję ostatnio wysłanego pakietu 75 npk2.2: fragmenty nadawcy, odbiorcy npk_rcv(rcvpkt) && (corrupt(rcvpkt) has_seq1(rcvpkt)) npk_send(data) sndpkt = make_pkt(0, data, checksum) wywołanie z góry numer=0 wywołanie z dołu fragment AS nadawcy fragment AS odbiorcy ACK numer=0 numer=0 npk_rcv(rcvpkt) && notcorrupt(rcvpkt) && has_seq1(rcvpkt) extract(rcvpkt,data) deliver_data(data) sndpkt = make_pkt(ack1, chksum) npk_rcv(rcvpkt) && ( corrupt(rcvpkt) isack(rcvpkt,1) ) npk_rcv(rcvpkt) && notcorrupt(rcvpkt) && isack(rcvpkt,0) 76 38

39 npk3.0: kanał z błędami oraz stratami Nowe założenie: używany kanał może gubić pakiety (z danymi lub ACK) suma kontrolna, numery sekwencyjne, potwierdzenia, retransmisje będą pomocne, ale nie wystarczą Podejście: nadawca czeka przez rozsądny czas na potwierdzenie ACK retransmituje, jeśli nie otrzyma ACK w tym czasie jeśli pakiet (lub ACK) jest tylko opóźniony, ale nie stracony: retransmisja będzie duplikatem, ale za pomocą numerów sekwencyjnych już to obsługujemy odbiorca musi określić numer sekwencyjny pakietu, który jest potwierdzany wymagany jest licznik czasu 77 npk3.0 nadawca npk_rcv(rcvpkt) npk_rcv(rcvpkt) && notcorrupt(rcvpkt) && isack(rcvpkt,1) stop_timer timeout start_timer npk_rcv(rcvpkt) && ( corrupt(rcvpkt) isack(rcvpkt,0) ) wywołanie z góry numer=0 Czekaj na ACK numer=1 npk_send(data) sndpkt = make_pkt(0, data, checksum) start_timer npk_send(data) Czekaj na ACK numer=0 wywołanie z góry numer=1 sndpkt = make_pkt(1, data, checksum) start_timer npk_rcv(rcvpkt) && ( corrupt(rcvpkt) isack(rcvpkt,1) ) timeout start_timer npk_rcv(rcvpkt) && notcorrupt(rcvpkt) && isack(rcvpkt,0) stop_timer npk_rcv(rcvpkt) 78 39

Plan całości wykładu 3-1

Plan całości wykładu 3-1 Plan całości wykładu Wprowadzenie Warstwa aplikacji Warstwa transportu Warstwa sieci Warstwa łącza i sieci lokalne Podstawy ochrony informacji (2 wykłady) (2 wykłady) (2-3 wykłady) (2-3 wykłady) (3 wykłady)

Bardziej szczegółowo

3-1. network data link physical. application transport. network data link physical 3-3. network data link physical. application transport

3-1. network data link physical. application transport. network data link physical 3-3. network data link physical. application transport Warstwa Mapa wykładu Usługi warstwy Multipleksacja i demultipleksacja Transport bezpołączeniowy: UDP Zasady niezawodnej komunikacji danych Transport połączeniowy: struktura segmentu niezawodna komunikacja

Bardziej szczegółowo

Mapa wykładu. 2.6 Poczta elektroniczna. 2.7 FTP 2.8 Dystrybucja zawartości. 2.9 Dzielenie plików P2P SMTP, POP3, IMAP

Mapa wykładu. 2.6 Poczta elektroniczna. 2.7 FTP 2.8 Dystrybucja zawartości. 2.9 Dzielenie plików P2P SMTP, POP3, IMAP Mapa wykładu 2.1 Zasady budowy protokołów w. aplikacji 2.2 WWW i HTTP 2.3 DNS 2.4 Programowanie przy użyciu gniazd TCP 2.5 Programowanie przy użyciu gniazd UDP 2.6 Poczta elektroniczna SMTP, POP3, IMAP

Bardziej szczegółowo

Warstwa transportu. Mapa wykładu

Warstwa transportu. Mapa wykładu Warstwa transportu 1 Mapa wykładu Usługi warstwy transportu Multipleksacja i demultipleksacja Transport bezpołączeniowy: UDP Zasady niezawodnej komunikacji danych Transport połączeniowy: TCP struktura

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

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

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

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

Bardziej szczegółowo

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ PROTOKOŁY TCP I UDP WSTĘP DO SIECI INTERNET Kraków, dn. 12 grudnia 2016 r. PLAN TCP: cechy protokołu schemat nagłówka znane numery portów UDP: cechy protokołu

Bardziej szczegółowo

Plan całości wykładu. Warstwa łącza i sieci lokalne

Plan całości wykładu. Warstwa łącza i sieci lokalne Plan całości wykładu Wprowadzenie Warstwa aplikacji Warstwa transportu Warstwa sieci Warstwa łącza i sieci lokalne Podstawy ochrony informacji (2 wykłady) (2 wykłady) (2-3 wykłady) (2-3 wykłady) (3 wykłady)

Bardziej szczegółowo

Sieci komputerowe Warstwa transportowa

Sieci komputerowe Warstwa transportowa Sieci komputerowe Warstwa transportowa 2012-05-24 Sieci komputerowe Warstwa transportowa dr inż. Maciej Piechowiak 1 Wprowadzenie umożliwia jednoczesną komunikację poprzez sieć wielu aplikacjom uruchomionym

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

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

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

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

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

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

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

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

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

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

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

Wykład 4: Protokoły TCP/UDP i usługi sieciowe. A. Kisiel,Protokoły TCP/UDP i usługi sieciowe

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

Bardziej szczegółowo

Stos protokołów TCP/IP (ang. Transmission Control Protocol/Internet Protocol)

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

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

Laboratorium - Przechwytywanie i badanie datagramów DNS w programie Wireshark

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

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

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

Przesyłania danych przez protokół TCP/IP

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

Bardziej szczegółowo

Warstwa transportowa. mgr inż. Krzysztof Szałajko

Warstwa transportowa. mgr inż. Krzysztof Szałajko Warstwa transportowa 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 do sieci

Bardziej szczegółowo

Model sieci OSI, protokoły sieciowe, adresy IP

Model sieci OSI, protokoły sieciowe, adresy IP Model sieci OSI, protokoły sieciowe, adresy IP Podstawę działania internetu stanowi zestaw protokołów komunikacyjnych TCP/IP. Wiele z używanych obecnie protokołów zostało opartych na czterowarstwowym modelu

Bardziej szczegółowo

Sieci komputerowe - Protokoły warstwy transportowej

Sieci komputerowe - Protokoły warstwy transportowej Piotr Kowalski KAiTI - Protokoły warstwy transportowej Plan i problematyka wykładu 1. Funkcje warstwy transportowej i wspólne cechy typowych protokołów tej warstwy 2. Protokół UDP Ogólna charakterystyka,

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

Stos TCP/IP Warstwa transportowa Warstwa aplikacji cz.1

Stos TCP/IP Warstwa transportowa Warstwa aplikacji cz.1 Stos TCP/IP Warstwa transportowa Warstwa aplikacji cz.1 aplikacji transportowa Internetu dostępu do sieci Sieci komputerowe Wykład 5 Podstawowe zadania warstwy transportowej Segmentacja danych aplikacji

Bardziej szczegółowo

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

Bardziej szczegółowo

PROTOKOŁY WARSTWY TRANSPORTOWEJ

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

Bardziej szczegółowo

Sieci komputerowe - warstwa transportowa

Sieci komputerowe - warstwa transportowa Sieci komputerowe - warstwa transportowa mgr inż. Rafał Watza Katedra Telekomunikacji AGH Al. Mickiewicza 30, 30-059 Kraków, Polska tel. +48 12 6174034, fax +48 12 6342372 e-mail: watza@kt.agh.edu.pl Wprowadzenie

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

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

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

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

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

Podstawy Transmisji Danych. Wykład IV. Protokół IPV4. Sieci WAN to połączenia pomiędzy sieciami LAN

Podstawy Transmisji Danych. Wykład IV. Protokół IPV4. Sieci WAN to połączenia pomiędzy sieciami LAN Podstawy Transmisji Danych Wykład IV Protokół IPV4 Sieci WAN to połączenia pomiędzy sieciami LAN 1 IPv4/IPv6 TCP (Transmission Control Protocol) IP (Internet Protocol) ICMP (Internet Control Message Protocol)

Bardziej szczegółowo

1. W protokole http w ogólnym przypadku elementy odpowiedzi mają: a) Postać tekstu b) Postać HTML c) Zarówno a i b 2. W usłudze DNS odpowiedź

1. W protokole http w ogólnym przypadku elementy odpowiedzi mają: a) Postać tekstu b) Postać HTML c) Zarówno a i b 2. W usłudze DNS odpowiedź 1. W protokole http w ogólnym przypadku elementy odpowiedzi mają: a) Postać tekstu b) Postać HTML c) Zarówno a i b 2. W usłudze DNS odpowiedź autorytatywna dotycząca hosta pochodzi od serwera: a) do którego

Bardziej szczegółowo

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej Politechnika Łódzka Instytut Systemów Inżynierii Elektrycznej Laboratorium komputerowych systemów pomiarowych Ćwiczenie 7 Wykorzystanie protokołu TCP do komunikacji w komputerowym systemie pomiarowym 1.

Bardziej szczegółowo

Enkapsulacja RARP DANE TYP PREAMBUŁA SFD ADRES DOCELOWY ADRES ŹRÓDŁOWY TYP SUMA KONTROLNA 2 B 2 B 1 B 1 B 2 B N B N B N B N B Typ: 0x0835 Ramka RARP T

Enkapsulacja RARP DANE TYP PREAMBUŁA SFD ADRES DOCELOWY ADRES ŹRÓDŁOWY TYP SUMA KONTROLNA 2 B 2 B 1 B 1 B 2 B N B N B N B N B Typ: 0x0835 Ramka RARP T Skąd dostać adres? Metody uzyskiwania adresów IP Część sieciowa Jeśli nie jesteśmy dołączeni do Internetu wyssany z palca. W przeciwnym przypadku numer sieci dostajemy od NIC organizacji międzynarodowej

Bardziej szczegółowo

pasja-informatyki.pl

pasja-informatyki.pl pasja-informatyki.pl Sieci komputerowe Protokoły warstwy transportowej TCP i UDP Damian Stelmach Zadania warstwy transportowej 2018 Spis treści Zadania warstwy transportowej... 3 Protokół TCP... 7 Nagłówek

Bardziej szczegółowo

Sieci Komputerowe Modele warstwowe sieci

Sieci Komputerowe Modele warstwowe sieci Sieci Komputerowe Modele warstwowe sieci mgr inż. Rafał Watza Katedra Telekomunikacji AGH Al. Mickiewicza 30, 30-059 Kraków, Polska tel. +48 12 6174034, fax +48 12 6342372 e-mail: watza@kt.agh.edu.pl Wprowadzenie

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

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

Sieci komputerowe. Wstęp

Sieci komputerowe. Wstęp Sieci komputerowe Wstęp Sieć komputerowa to grupa komputerów lub innych urządzeń połączonych ze sobą w celu wymiany danych lub współdzielenia różnych zasobów, na przykład: korzystania ze wspólnych urządzeń

Bardziej szczegółowo

Model OSI. mgr inż. Krzysztof Szałajko

Model OSI. mgr inż. Krzysztof Szałajko Model OSI mgr inż. Krzysztof Szałajko Protokół 2 / 26 Protokół Def.: Zestaw reguł umożliwiający porozumienie 3 / 26 Komunikacja w sieci 101010010101101010101 4 / 26 Model OSI Open Systems Interconnection

Bardziej szczegółowo

Skąd dostać adres? Metody uzyskiwania adresów IP. Statycznie RARP. Część sieciowa. Część hosta

Skąd dostać adres? Metody uzyskiwania adresów IP. Statycznie RARP. Część sieciowa. Część hosta Sieci komputerowe 1 Sieci komputerowe 2 Skąd dostać adres? Metody uzyskiwania adresów IP Część sieciowa Jeśli nie jesteśmy dołączeni do Internetu wyssany z palca. W przeciwnym przypadku numer sieci dostajemy

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

Protokoły internetowe

Protokoły internetowe Protokoły internetowe O czym powiem? Wstęp Model OSI i TCP/IP Architektura modelu OSI i jego warstwy Architektura modelu TCP/IP i jego warstwy Protokoły warstwy transportowej Protokoły warstwy aplikacji

Bardziej szczegółowo

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 14 Protokoły sieciowe

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 14 Protokoły sieciowe Podstawy Informatyki Inżynieria Ciepła, I rok Wykład 14 Protokoły sieciowe Protokoły sieciowe Protokół to zbiór sygnałów używanych przez grupę komputerów podczas wymiany danych (wysyłania, odbierania i

Bardziej szczegółowo

Unicast jeden nadawca i jeden odbiorca Broadcast jeden nadawca przesyła do wszystkich Multicast jeden nadawca i wielu (podzbiór wszystkich) odbiorców

Unicast jeden nadawca i jeden odbiorca Broadcast jeden nadawca przesyła do wszystkich Multicast jeden nadawca i wielu (podzbiór wszystkich) odbiorców METODY WYMIANY INFORMACJI W SIECIACH PAKIETOWYCH Unicast jeden nadawca i jeden odbiorca Broadcast jeden nadawca przesyła do wszystkich Multicast jeden nadawca i wielu (podzbiór wszystkich) odbiorców TRANSMISJA

Bardziej szczegółowo

Remote Quotation Protocol - opis

Remote Quotation Protocol - opis Remote Quotation Protocol - opis Michał Czerski 20 kwietnia 2011 Spis treści 1 Streszczenie 1 2 Cele 2 3 Terminologia 2 4 Założenia 2 4.1 Połączenie............................... 2 4.2 Powiązania z innymi

Bardziej szczegółowo

Warstwa transportowa

Warstwa transportowa Sieci komputerowe Podsumowanie DHCP Serwer DHCP moŝe przyznawać adresy IP według adresu MAC klienta waŝne dla stacji wymagającego stałego IP np. ze względu na rejestrację w DNS Klient moŝe pominąć komunikat

Bardziej szczegółowo

Instrukcja konfiguracji funkcji skanowania

Instrukcja konfiguracji funkcji skanowania Instrukcja konfiguracji funkcji skanowania WorkCentre M123/M128 WorkCentre Pro 123/128 701P42171_PL 2004. Wszystkie prawa zastrzeżone. Rozpowszechnianie bez zezwolenia przedstawionych materiałów i informacji

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

TCP/IP formaty ramek, datagramów, pakietów...

TCP/IP formaty ramek, datagramów, pakietów... SIECI KOMPUTEROWE DATAGRAM IP Protokół IP jest przeznaczony do sieci z komutacją pakietów. Pakiet jest nazywany przez IP datagramem. Każdy datagram jest podstawową, samodzielną jednostką przesyłaną w sieci

Bardziej szczegółowo

Model warstwowy Warstwa fizyczna Warstwa łacza danych Warstwa sieciowa Warstwa transportowa Warstwa aplikacj. Protokoły sieciowe

Model warstwowy Warstwa fizyczna Warstwa łacza danych Warstwa sieciowa Warstwa transportowa Warstwa aplikacj. Protokoły sieciowe Elektroniczne Przetwarzanie Informacji Konsultacje: czw. 14.00-15.30, pokój 3.211 Plan prezentacji Warstwowy model komunikacji sieciowej Warstwa fizyczna Warstwa łacza danych Warstwa sieciowa Warstwa transportowa

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

Protokoły wspomagające. Mikołaj Leszczuk

Protokoły wspomagające. Mikołaj Leszczuk Protokoły wspomagające Mikołaj Leszczuk Spis treści wykładu Współpraca z warstwą łącza danych: o o ICMP o o ( ARP ) Protokół odwzorowania adresów ( RARP ) Odwrotny protokół odwzorowania adresów Opis protokołu

Bardziej szczegółowo

Plan wykładu. Domain Name System. Hierarchiczna budowa nazw. Definicja DNS. Obszary i ich obsługa Zapytania Właściwości.

Plan wykładu. Domain Name System. Hierarchiczna budowa nazw. Definicja DNS. Obszary i ich obsługa Zapytania Właściwości. Sieci owe Sieci owe Plan wykładu Domain Name System System Nazw Domen Definicja DNS Hierarchiczna budowa nazw Obszary i ich obsługa Zapytania Właściwości Sieci owe Sieci owe Definicja DNS DNS to rozproszona

Bardziej szczegółowo

Sieci Komputerowe. Wykład 1: TCP/IP i adresowanie w sieci Internet

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

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

Protokoły warstwy aplikacji

Protokoły warstwy aplikacji UNIWERSYTET KAZIMIERZA WIELKIEGO Wydział Matematyki Fizyki i Techniki Zakład Teleinformatyki Laboratorium Sieci Komputerowych 1. Cel ćwiczenia Celem ćwiczenia jest zapoznanie z podstawowymi protokołami

Bardziej szczegółowo

Moduł 11.Warstwa transportowa i aplikacji Zadaniem warstwy transportowej TCP/IP jest, jak sugeruje jej nazwa, transport danych pomiędzy aplikacjami

Moduł 11.Warstwa transportowa i aplikacji Zadaniem warstwy transportowej TCP/IP jest, jak sugeruje jej nazwa, transport danych pomiędzy aplikacjami Moduł 11.Warstwa transportowa i aplikacji Zadaniem warstwy transportowej TCP/IP jest, jak sugeruje jej nazwa, transport danych pomiędzy aplikacjami urządzenia źródłowego i docelowego. Dokładne poznanie

Bardziej szczegółowo

Zestaw ten opiera się na pakietach co oznacza, że dane podczas wysyłania są dzielone na niewielkie porcje. Wojciech Śleziak

Zestaw ten opiera się na pakietach co oznacza, że dane podczas wysyłania są dzielone na niewielkie porcje. Wojciech Śleziak Protokół TCP/IP Protokół TCP/IP (Transmission Control Protokol/Internet Protokol) to zestaw trzech protokołów: IP (Internet Protokol), TCP (Transmission Control Protokol), UDP (Universal Datagram Protokol).

Bardziej szczegółowo

Programowanie Sieciowe 1

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

Bardziej szczegółowo

DOKUMENTACJA TECHNICZNA SMS API MT

DOKUMENTACJA TECHNICZNA SMS API MT DOKUMENTACJA TECHNICZNA SMS API MT Mobitex Telecom Sp.j., ul. Warszawska 10b, 05-119 Legionowo Strona 1 z 5 Ten dokument zawiera szczegółowe informacje odnośnie sposobu przesyłania requestów do serwerów

Bardziej szczegółowo

SEGMENT TCP CZ. II. Suma kontrolna (ang. Checksum) liczona dla danych jak i nagłówka, weryfikowana po stronie odbiorczej

SEGMENT TCP CZ. II. Suma kontrolna (ang. Checksum) liczona dla danych jak i nagłówka, weryfikowana po stronie odbiorczej SEGMENT TCP CZ. I Numer portu źródłowego (ang. Source port), przeznaczenia (ang. Destination port) identyfikują aplikacje wysyłającą odbierającą dane, te dwie wielkości wraz adresami IP źródła i przeznaczenia

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

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

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

ZiMSK. Konsola, TELNET, SSH 1

ZiMSK. Konsola, TELNET, SSH 1 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 Konsola, TELNET, SSH 1 Wykład

Bardziej szczegółowo

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

Bardziej szczegółowo

Akademia Techniczno-Humanistyczna w Bielsku-Białej

Akademia Techniczno-Humanistyczna w Bielsku-Białej Akademia Techniczno-Humanistyczna w Bielsku-Białej Wydział Budowy Maszyn i Informatyki Laboratorium z sieci komputerowych Ćwiczenie numer: 5 Temat ćwiczenia: Badanie protokołów rodziny TCP/IP 1. Wstęp

Bardziej szczegółowo

Programowanie sieciowe

Programowanie sieciowe Programowanie sieciowe Wykład dla studentów Informatyki Stosowanej i Fizyki Komputerowej UJ 2014/2015 Michał Cieśla pok. D-2-47, email: michal.ciesla@uj.edu.pl konsultacje: środy 10-12 http://users.uj.edu.pl/~ciesla/

Bardziej szczegółowo

Podstawowe pojł cia. Czego sił nauczymy? Pojł cia hosta. Hosty Adresowanie Internetowe Porty Protokoóy

Podstawowe pojł cia. Czego sił nauczymy? Pojł cia hosta. Hosty Adresowanie Internetowe Porty Protokoóy Czego sił nauczymy? Podstawowe pojł cia Adresowania w Internecie URL CGI Servlety i JSP Sokety Sokety dla aplikacji serwerowych UDP Obsóuga XMLa z poziomu Javy z wykorzystaniem interfejso w SAX i DOM WebServices,

Bardziej szczegółowo

Sprawozdanie. (notatki) Sieci komputerowe i bazy danych. Laboratorium nr.3 Temat: Zastosowanie protokołów przesyłania plików

Sprawozdanie. (notatki) Sieci komputerowe i bazy danych. Laboratorium nr.3 Temat: Zastosowanie protokołów przesyłania plików Sprawozdanie (notatki) Sieci komputerowe i bazy danych Laboratorium nr.3 Temat: Zastosowanie protokołów przesyłania plików Piotr Morawiec 22.03.2017 FTP (ang. File transfer Protocol) - protokół wymiany

Bardziej szczegółowo

Problemy z bezpieczeństwem w sieci lokalnej

Problemy z bezpieczeństwem w sieci lokalnej Problemy z bezpieczeństwem w sieci lokalnej możliwości podsłuchiwania/przechwytywania ruchu sieciowego pakiet dsniff demonstracja kilku narzędzi z pakietu dsniff metody przeciwdziałania Podsłuchiwanie

Bardziej szczegółowo

Selektywne powtarzanie (SP)

Selektywne powtarzanie (SP) Selektywne powtarzanie (SP) odbiorca selektywnie potwierdza poprawnie odebrane pakiety buforuje pakiety, gdy potrzeba, w celu uporządkowania przed przekazaniem warstwie wyższej nadawca retransmituje tylko

Bardziej szczegółowo

Podstawy sieci komputerowych

Podstawy sieci komputerowych mariusz@math.uwb.edu.pl http://math.uwb.edu.pl/~mariusz Uniwersytet w Białymstoku 2018/2019 Skąd się wziął Internet? Komutacja pakietów (packet switching) Transmisja danych za pomocą zaadresowanych pakietów,

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

Sieci komputerowe. Wykład 7: Warstwa zastosowań: DNS, FTP, HTTP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski

Sieci komputerowe. Wykład 7: Warstwa zastosowań: DNS, FTP, HTTP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski Sieci komputerowe Wykład 7: Warstwa zastosowań: DNS, FTP, HTTP Marcin Bieńkowski Instytut Informatyki Uniwersytet Wrocławski Sieci komputerowe (II UWr) Wykład 7 1 / 26 DNS Sieci komputerowe (II UWr) Wykład

Bardziej szczegółowo

Dokumentacja smsapi wersja 1.4

Dokumentacja smsapi wersja 1.4 Dokumentacja smsapi wersja 1.4 1. Wprowadzenie Platforma smsapi została skierowana do użytkowników chcących rozbudować swoje aplikacje o system wysyłania smsów. Aplikacja ta w prosty sposób umożliwia integrację

Bardziej szczegółowo

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

Bardziej szczegółowo

MASKI SIECIOWE W IPv4

MASKI SIECIOWE W IPv4 MASKI SIECIOWE W IPv4 Maska podsieci wykorzystuje ten sam format i sposób reprezentacji jak adresy IP. Różnica polega na tym, że maska podsieci posiada bity ustawione na 1 dla części określającej adres

Bardziej szczegółowo

Architektura INTERNET

Architektura INTERNET Internet, /IP Architektura INTERNET OST INTERNET OST OST BRAMA (ang. gateway) RUTER (ang. router) - lokalna sieć komputerowa (ang. Local Area Network) Bramy (ang. gateway) wg ISO ruter (ang. router) separuje

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

Zakładanie konta e-mail

Zakładanie konta e-mail Zakładanie konta e-mail Jeśli chcesz posiadać własne konto e-mail i mieć możliwość wysyłania i odbierania poczty powinieneś skorzystać z oferty firmy świadczącej takie usługi 1. W celu założenia konta

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

Transmisja danych multimedialnych. mgr inż. Piotr Bratoszewski

Transmisja danych multimedialnych. mgr inż. Piotr Bratoszewski Transmisja danych multimedialnych mgr inż. Piotr Bratoszewski Wprowadzenie Czym są multimedia? Informacje przekazywane przez sieć mogą się składać z danych różnego typu: Tekst ciągi znaków sformatowane

Bardziej szczegółowo

Poczta elektroniczna. Podstawowe protokoły:

Poczta elektroniczna. Podstawowe protokoły: Poczta elektroniczna Podstawowe protokoły: SMTP - Simple Mail Transfer Protocol - RFC 821 POP - Post Office Protocol - RFC 1939 IMAP - Interactive Message Acces Protocol RFC 2060 RFC 822 Standard for the

Bardziej szczegółowo

Na podstawie: Kirch O., Dawson T. 2000: LINUX podręcznik administratora sieci. Wydawnictwo RM, Warszawa. FILTROWANIE IP

Na podstawie: Kirch O., Dawson T. 2000: LINUX podręcznik administratora sieci. Wydawnictwo RM, Warszawa. FILTROWANIE IP FILTROWANIE IP mechanizm decydujący, które typy datagramów IP mają być odebrane, które odrzucone. Odrzucenie oznacza usunięcie, zignorowanie datagramów, tak jakby nie zostały w ogóle odebrane. funkcja

Bardziej szczegółowo

Adresy w sieciach komputerowych

Adresy w sieciach komputerowych Adresy w sieciach komputerowych 1. Siedmio warstwowy model ISO-OSI (ang. Open System Interconnection Reference Model) 7. Warstwa aplikacji 6. Warstwa prezentacji 5. Warstwa sesji 4. Warstwa transportowa

Bardziej szczegółowo

Plan wykładu. Domain Name System. Definicja DNS. Po co nazwy? Przestrzeń nazw domen Strefy i ich obsługa Zapytania Właściwości.

Plan wykładu. Domain Name System. Definicja DNS. Po co nazwy? Przestrzeń nazw domen Strefy i ich obsługa Zapytania Właściwości. Sieci komputerowe 1 Sieci komputerowe 2 Plan wykładu Domain Name System System Nazw Domen Definicja DNS Wymagania Przestrzeń nazw domen Strefy i ich obsługa Zapytania Właściwości Sieci komputerowe 3 Sieci

Bardziej szczegółowo