Protokół HTTP. Omówienie standardu z analizą ruchu sieciowego

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

Download "Protokół HTTP. Omówienie standardu z analizą ruchu sieciowego"

Transkrypt

1 Protokół HTTP Omówienie standardu z analizą ruchu sieciowego Spis treści: 1. Zagadnienia teoretyczne Informacje ogólne Format zapytań i odpowiedzi, metody Kody stanu Nagłówek Treść wiadomości Klienci HTTP Serwery HTTP Analiza ruchu sieciowego Wstęp Zapytania ARP Zapytania DNS Połączenia TCP Żądanie i odpowiedź HTTP Bibliografia

2 1. Zagadnienia teoretyczne 1.1. Informacje ogólne. HTTP (Hyper Transfer Protocol) jest protokołem odpowiedzialnym za przesyłanie w Internecie stron WWW. Portem zarezerwowanym dla HTTP jest 80 port TCP oraz rzadziej używane porty 8008 i Główną organizacją zajmującą się rozwojem i standaryzacją protokołu HTTP praz technologii związanych z WWW jest W3C (The World Wide Web Consortium). Aktualną wersją tego protokołu jest HTTP/1.1. HTTP jest wykorzystywany do przekazywania różnych zasobów, a nie tylko plików. Zasób jest jakimś fragmentem informacji, która może być zidentyfikowana przez adres URL. Najczęstszym rodzajem zasobów jest plik, ale może być to także dynamicznie generowany wynik kwerendy, wyjście skryptu CGI, dokument, który jest dostępny w kilku językach, czy coś innego. Podobnie jak większość protokołów sieciowych, HTTP używa modelu klientserwer: klient HTTP otwiera połączenie i wysyła komunikat żądania do serwera HTTP, serwer następnie zwraca komunikat odpowiedzi, zwykle zawierający zasób, o który został poproszony. Po dostarczeniu odpowiedzi, serwer zamyka połączenie i co najważniejsze nie przechowuje żadnych informacji o połączeniu między transakcjami. Pozwala to znacznie zmniejszyć obciążenie serwera, jednak jest kłopotliwe w sytuacji, gdy np. trzeba zapamiętać konkretny stan dla użytkownika, który wcześniej łączył się już z serwerem. Najczęstszym rozwiązaniem tego problemu jest wprowadzenie mechanizmu ciasteczek. Inne podejścia to m.in. sesje po stronie serwera, ukryte parametry (gdy aktualna strona zawiera formularz) oraz parametry umieszczone w URL-u (jak np. /index.php?userid=3) Format zapytań i odpowiedzi, metody. Format zapytania i odpowiedzi są podobne. Oba rodzaje komunikatów składają się z: linia początkowa, zera lub większej liczby linii nagłówka, pustej linii (tj. samo CRLF), i opcjonalnie treści wiadomości (np. plik lub zapytanie o dane, czy o wyjście). Linia początkowa i nagłówki powinny się kończyć parą znaków CRLF. Protokół HTTP definiuje kilka metod (rodzajów działań), które zostaną wykonane na wywoływanym zasobie. Wyróżnia się następujące usługi (metody) protokołu HTTP: Metoda Opis DELETE Żądanie usunięcia zasobu (dokumentu) z serwera GET Żądanie zasobu od serwera w formie nagłówka i treści HEAD Żądanie zasobu od serwera w formie nagłówka LINK Żądanie ustanowienia relacji między istniejącymi zasobami OPTIONS Żądanie od serwera identyfikacji obsługiwanych metod POST Żądanie odebrania przez serwer danych od klienta PUT Żądanie odebrania przez serwer od klienta pliku TRACE Żądanie zwrócenia przez serwer nagłówków wiadomości wysłanej od klienta (w celach testowania) UNLINK Żądanie usunięcia relacji między istniejącymi zasobami

3 Dokładniejsze omówienie ważniejszych metod: Metoda HEAD Żądanie HEAD jest podobne do GET, z wyjątkiem tego że serwer jest proszony by zwrócić tylko nagłówki odpowiedzi, a nie rzeczywiste źródło (nie ma treści wiadomości). Jest to przydatne aby sprawdzić charakterystykę zasobu bez konieczności jego pobierania, oszczędzając w ten sposób przepustowość. Żądanie POST służy do wysyłania danych do serwera, aby następnie były przetwarzane w inny sposób np. przez skrypt CGI. Żądanie POST różni się od żądania GET tym, że wysyłany jest blok danych z parametrami w treści wiadomości. Zwykle są jeszcze dodatkowe nagłówki opisujące treść wiadomości, jak Content-Type: i Content-Length:. Żądanie URI nie jest zasobem do pobrania, jest to zazwyczaj program do obsługi wysyłanych danych. Odpowiedzią HTTP jest zwykle wyjście programu, a nie plik. Najczęstszym zastosowaniem procedury POST, jest przedstawienie danych HTML do skryptów CGI. W tym przypadku, Content-Type:, nagłówek jest zwykle w postaci: application/x-www-form-urlencoded i Content-Length:, nagłówek podaje długość zakodowanego adresu URL. Skrypt CGI otrzymuje treść wiadomości poprzez standardowe wejście i dekoduje. Oto typowe przesłanie formularzy, za pomocą POST: POST /path/script.cgi HTTP/1.0 From: frog@jmarshall.com User-Agent: HTTPTool/1.0 Content-Type: application/x-www-form-urlencoded Content-Length: 32 home=cosby&favorite+flavor=flies Początkowa linia żądania. Początkowa linia różni się od zwykłej prośby na odpowiedź. Ma ona trzy części oddzielone spacjami: nazwa metody, lokalna ścieżka do żądanego zasobu, używana wersja protokołu HTTP. Typowa linia żądania: GET / ścieżka / do / plik/ index.html/ 1.0 Początkowa linia odpowiedzi. Początkowa linia odpowiedzi, zwana linią statusu, również ma trzy części oddzielone spacjami: wersja HTTP, kod statusu odpowiedzi, który podaje wynik żądania i fraza opisująca kod statusu. Typowa linia statusu: HTTP/ OK lub HTTP/ Not Found Kod stanu odczytuje oprogramowanie, powód ma być czytelny dla człowieka.

4 1.3. Kody stanu. Ogólny podział kodów stanu w zależności od ich wartości. Wartość Rodzaj Rodzaj ang. Znaczenie 1xx Informacje Informational Żądanie odebrane, proces w trakcie wykonywania 2xx Sukces Success Akcja została poprawnie odebrana, zrozumiana i zaakceptowana 3xx Przekierowanie Redirection Dalsze akcje muszą zostać podjęte, aby zakończyć żądanie 4xx Błąd po stronie klienta Client Error Żądanie ma złą składnię lub nie może zostać spełnione 5xx Błąd serwera Server Error Serwer najprawdopodobniej nie może wykonać poprawnego żądania Opis kodów: Kody informacyjne kod opis słowny znaczenie/zwrócony zasób 100 Continue Kontynuuj - prośba o dalsze wysyłanie zapytania 101 Switching Protocols Zmiana protokołu 110 Connection Timed Out Kody powodzenia kod opis słowny 200 OK znaczenie/zwrócony zasób Zawartość żądanego dokumentu (najczęściej zwracany nagłówek odpowiedzi w komunikacji WWW Internetu) 201 Created Utworzono - wysłany dokument został zapisany na serwerze 202 Accepted 203 Non-Authoritative Information 204 No content 205 Reset Content 206 Partial Content Przyjęto - zapytanie zostało przyjęte do obsłużenia, lecz jego zrealizowanie jeszcze się nie skończyło Informacja nieautorytatywna - zwrócona informacja nie odpowiada dokładnie odpowiedzi pierwotnego serwera, lecz została utworzona z lokalnych bądź zewnętrznych kopii Brak zawartości - serwer zrealizował zapytanie klienta i nie potrzebuje zwracać żadnej treści Przywróć zawartość - serwer zrealizował zapytanie i klient powinien przywrócić pierwotny wygląd dokumentu Część zawartości - serwer zrealizował tylko część zapytania typu GET, odpowiedź musi zawierać nagłówek Range informujący o zakresie bajtowym zwróconego elementu

5 Kody przekierowania kod opis słowny 300 Multiple Choices 301 Moved Permanently 302 Found 303 See Other 304 Not Modified 305 Use Proxy znaczenie/zwrócony zasób Wiele możliwości - istnieje więcej niż jeden sposób obsłużenia danego zapytania, serwer może podać adres zasobu, który pozwala na wybór jednoznacznego zapytania spośród możliwych Trwale przeniesiony - żądany zasób zmienił swój URI i w przyszłości zasób powinien być szukany pod wskazanym nowym adresem Znaleziono - żądany zasób jest chwilowo dostępny pod innym adresem a przyszłe odwołania do zasobu powinny być kierowane pod adres pierwotny Zobacz inne - odpowiedź na żądanie znajduje się pod innym URI i tam klient powinien się skierować. To jest właściwy sposób przekierowywania w odpowiedzi na żądanie metodą POST. Nie zmieniono - zawartość zasobu nie podległa zmianie według warunku przekazanego przez klienta (np. data ostatniej wersji zasobu pobranej przez klienta - cache przeglądarki) Użyj serwera proxy - do żądanego zasobu trzeba odwołać się przez serwer proxy podany w nagłówku Location odpowiedzi 306 Kod nieużywany, aczkolwiek zastrzeżony dla starszych wersji protokołu 307 Temporary Redirect Tymczasowe przekierowanie - żądany zasób znajduje się chwilowo pod innym adresem URI, odpowiedź powinna zawierać zmieniony adres zasobu, na który klient zobowiązany jest się przenieść Opis poszczególnych kodów błędów: kod opis słowny 400 Bad Request 401 Unauthorized 402 Payment Required 403 Forbidden 404 Not Found 405 Method Not Allowed 406 Not Acceptable 407 Proxy Authentication znaczenie/zwrócony zasób Nieprawidłowe zapytanie - żądanie nie może być obsłużone przez serwer z powodu błędnej składni zapytania Nieautoryzowany dostęp - żądanie zasobu, który wymaga uwierzytelnienia Wymagana opłata - odpowiedź zarezerwowana na przyszłość Zabroniony - serwer zrozumiał zapytanie lecz konfiguracja bezpieczeństwa zabrania mu zwrócić żądany zasób Nie znaleziono - serwer nie odnalazł zasobu według podanego URI ani niczego co by wskazywało na istnienie takiego zasobu w przeszłości Niedozwolona metoda - metoda zawarta w żądaniu nie jest dozwolona dla wskazanego zasobu, odpowiedź zawiera też listę dozwolonych metod Niedozwolone - zażądany zasób nie jest w stanie zwrócić odpowiedzi mogącej być obsłużonej przez klienta według informacji podanych w zapytaniu Wymagane uwierzytelnienie do serwera proxy - analogicznie do kodu 401, dotyczy dostępu do serwera proxy

6 kod opis słowny Required 408 Request Timeout 409 Conflict 410 Gone 411 Length required 412 Precondition Failed Request Entity Too Large Request-URI Too Long 415 Unsupported Media Type 416 Requested Range Not Satisfiable 417 Expectation Failed znaczenie/zwrócony zasób Koniec czasu oczekiwania na żądanie - klient nie przesłał zapytania do serwera w określonym czasie Konflikt - żądanie nie może być zrealizowane, ponieważ występuje konflikt z obecnym statusem zasobu, ten kod odpowiedzi jest zwracany tylko w przypadku podejrzewania przez serwer, że klient może nie znaleźć przyczyny błędu i przesłać prawidłowego zapytania Zniknął (usunięto) - zażądany zasób nie jest dłużej dostępny i nie znany jest jego ewentualny nowy adres URI; klient powinien już więcej nie odwoływać się do tego zasobu Wymagana długość - serwer odmawia zrealizowania zapytania ze względu na brak nagłówka Content-Length w zapytaniu; klient może powtórzyć zapytanie dodając doń poprawny nagłówek długości Warunek wstępny nie może być spełniony - serwer nie może spełnić przynajmniej jednego z warunków zawartych w zapytaniu Encja zapytania zbyt długa - całkowita długość zapytania jest zbyt długa dla serwera Adres URI zapytania zbyt długi - długość zażądanego URI jest większa niż maksymalna oczekiwana przez serwer Nieznany sposób żądania - serwer odmawia przyjęcia zapytania, ponieważ jego składnia jest niezrozumiała dla serwera Zakres bajtowy podany w zapytaniu nie do obsłużenia - klient podał w zapytaniu zakres, który nie może być zastosowany do wskazanego zasobu Oczekiwana wartość nie do zwrócenia - oczekiwanie podane w nagłówku Expect żądania nie może być spełnione przez serwer lub - jeśli zapytanie realizuje serwer proxy - serwer ma dowód, że oczekiwanie nie będzie spełnione przez następny w łańcuchu serwer realizujący zapytanie Kody błędu wewnętrznego kod opis słowny 500 Internal Server Error 501 Not Implemented 502 Bad Gateway 503 Service Unavailable znaczenie/zwrócony zasób Wewnętrzny błąd serwera - serwer napotkał niespodziewane trudności, które uniemożliwiły zrealizowanie żądania Nie zaimplementowano - serwer nie dysponuje funkcjonalnością wymaganą w zapytaniu; ten kod jest zwracany gdy serwer otrzymał nieznany typ zapytania Błąd bramy - serwer - spełniający rolę bramy lub proxy - otrzymał niepoprawną odpowiedź od serwera nadrzędnego i nie jest w stanie zrealizować żądania klienta Usługa niedostępna - serwer nie jest w stanie w danej chwili zrealizować zapytania klienta ze względu na przeciążenie 504 Gateway Przekroczony czas bramy - serwer - spełniający rolę bramy lub proxy -

7 kod opis słowny 505 Timeout HTTP Version Not Supported znaczenie/zwrócony zasób nie otrzymał w ustalonym czasie odpowiedzi od wskazanego serwera HTTP, FTP, LDAP itp. lub serwer DNS jest potrzebny do obsłużenia zapytania Wersja HTTP nie obsługiwana - serwer nie obsługuje bądź odmawia obsługi wskazanej przez klienta wersji HTTP 1.4. Nagłówek. Linie nagłówka Linie nagłówka dostarczają informacji na temat żądania lub odpowiedzi, albo o obiekcie wysłanym w treści wiadomości. Linie nagłówka są w zwykłym formacie tekstowym, takim samym jak te używane do wiadomości . Forma: nagłówek-nazwa: wartość, zakończone parą znaków CRLF. Szczegóły o RFC 822 linii nagłówka: Jak wspomniano wcześniej, powinny one zakończyć przez CRLF, ale powinny również poprawnie poradzić sobie z LF. W nazwie nagłówka nie jest rozróżniana wielkość liter Pomiędzy znakiem : i wartością może być dowolna liczba spacji i tabulacji. Linie nagłówka rozpoczynające się od spacji lub tabulacji są w rzeczywistości częścią poprzedniej linii nagłówka, przenoszone do następnej linii w celu łatwiejszego odczytywania. Zatem, poniższe nagłówki są równoważne: Header1: jakaś-wartość1a. jakaś-wartość1b Header2: jakaś-wartość1a, jakaś-wartość1b HTTP 1.0 definiuje 16 nagłówków, choć żaden nie jest wymagany. HTTP 1.1 definiuje 46 nagłówków, i jeden (Host: ) jest wymagany w żądaniach. Biorąc pod uwagę NET etykietę należy rozważyć włączenie tych nagłówków do swoich żądań: From: Nagłówek zawiera adres , tego kto wysłał żądanie lub uruchomił program. (Musi zostać skonfigurowany przez użytkownika, na rzecz ochrony prywatności). User-Agent: nagłówek identyfikuje program, który wykonał żądanie w formie Programname/x.xx, gdzie xxx jest alfanumeryczną wersją programu. Te nagłówki mogą pomóc webmasterom rozwiązywać problemy. One również ujawniają informację na temat użytkownika. Kiedy się zdecydujemy na załączenie któregoś nagłówka, trzeba zastanowić się czy ważniejsza jest potrzeba rejestrowania informacji przez webmasterów, czy własna prywatność. W przypadku serwerów, można rozważyć włączanie tych nagłówków do odpowiedzi: Server: Nagłówek jest analogiczny do User-agent: nagłówek identyfikuje oprogramowanie serwera w postaci Program-name/x.xx. Np. pewna wersja serwera Apache zwraca Server: Apache/1.2b3-dev. Last-Modified: nagłówek zawiera datę modyfikacji zasobu, który jest zwracany. Ma zastosowanie w buforowaniu i innych działań zmierzających do energooszczędności. Pole to powinno mieć postać: Last-Modified: Fri, 31 Dec :59:59 GMT

8 Najczęściej używane nagłówki ze strony hosta: Host: host.com (wymagany w HTTP 1.1 nagłówek Host służący do rozpoznania hosta, jeśli serwer na jednym IP obsługuje kilka VirtualHostów) User-Agent: Mozilla/5.0 (X11; U; Linux i686; pl; rv: ) Gecko/ Firefox/ (nazwa aplikacji klienckiej) Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8 (akceptowane (bądź nieakceptowane dla q=0) przez klienta typy plików) Accept-Language: pl,en-us;q=0.7,en;q=0.3 (preferowany język strony nagłówek przydatny przy Language negotiation) Accept-Charset: ISO ,utf-8;q=0.7,*;q=0.7 (preferowane kodowanie znaków) Keep-Alive: 300 (czas, jaki klient chce zarezerwować do następnego zapytania w przypadku połączenia Keep-Alive) Connection: keep-alive (chęć nawiązania połączenia stałego Keep-Alive z serwerem HTTP/1.0) HTTP/1.1 dopuszcza wysłanie kilku żądań naraz (pipelining). HTTP/1.0 zakłada jedno żądanie i jedną odpowiedź. Najczęściej używane nagłówki ze strony serwera: Date: Thu, 20 Dec :04:30 GMT (czas serwera) Server: Apache/ (Unix) DAV/2 (opis aplikacji serwera) Set-Cookie: PSID=d6dd02e9957fb162d2385ca6f2829a73; path=/ (nakazanie klientowi zapisania ciasteczka) Expires: Thu, 19 Nov :52:00 GMT (czas wygaśnięcia zawartości zwróconego dokumentu. Data w przeszłości zabrania umieszczenie dokumentu w pamięci podręcznej. Jest to stara metoda zastąpiona przez Cache-Control) Cache-Control: no-store, no-cache, must-revalidate (no-store zabrania przechowywania dokumentu na dysku, nawet gdy nie jest to pamięć podręczna. must-revalidate nakazuje bezwzględnie stosować się do wytycznych i sprawdzić świeżość dokumentu za każdym razem) Pragma: no-cache (informacje dotyczące zapisywania zawartości w pamięci podręcznej. Stara, niestandardowa metoda.) Keep-Alive: timeout=15, max=100 Connection: Keep-Alive (akceptacja połączenia Keep-Alive dla klientów HTTP/1.0) Transfer-Encoding: chunked (typ kodowania zawartości stosowanej przez serwer) Content-Type: application/xhtml+xml; charset=utf-8 (typ MIME i strona kodowa zwróconego dokumentu) HTTP do obsługi połączeń Keep-Alive wymaga, aby odpowiedź od serwera miała znaną długość (przez podanie Content-Length lub użycie Transfer-Encoding: chunked). W przeciwnym wypadku koniec odpowiedzi sygnalizuje zerwanie połączenia i Keep-Alive nie może działać. Nagłówek Keep-Alive jest rozszerzeniem HTTP/1.0. W HTTP/1.1 ten nagłówek nie jest potrzebny, gdyż połączenia Keep-Alive są domyślne (zachowanie zmienia Connection: close).

9 1.5. Treść wiadomości. Wiadomość HTTP może mieć treść wysyłanych danych po liniach nagłówka. W odpowiedzi zwracany jest żądany zasób do klienta (najczęściej użycie treści wiadomości), albo tekst wyjaśniający czy jest błąd. W żądaniu znajdują się wprowadzone dane przez użytkownika lub pliki przesyłane do serwera. Jeśli komunikat HTTP zawiera treść, to w wiadomości znajdują się zazwyczaj linie nagłówka opisującej treść. W szczególności: Content-Type: nagłówek dostarcza typ danych MIME w wiadomości takich jak text/html lub image/gif. Content-Length: nagłówek podaje liczbę bajtów w treści. Przykładowa wymiana HTTP Aby pobrać plik w adresie URL Najpierw należy otworzyć gniazdo (socked) do hosta port 80 (w tym przypadku należy użyć domyślnego portu 80, ponieważ nie został podany w adresie URL). Następnie wysyłamy do gniazda następującą treść: GET /path/file.html HTTP/1.0 From: someuser@jmarshall.com User-Agent: HTTPTool/1.0 [pusta linia] Serwer powinien odpowiedzieć za pośrednictwem tego samego gniazda, coś takiego: HTTP/ OK Date: Fri, 31 Dec :59:59 GMT Content-Type: text/html Content-Length: 1354 <html> <body> <h1>napis html</h1> (więcej zawartości pliku)... </body> </html> Po wysłaniu odpowiedzi, serwer zamyka gniazdo Klienci HTTP 1.1. HOST: nagłówek Począwszy od HTTP 1.1, jeden serwer na jeden adres IP może być wieloadresowym, czyli na jednym serwerze może być kilka domen. Np. i może znajdować się na tym samym serwerze.

10 Kilka domen znajdujących się na tym samym serwerze jest jak kilka osób dzielących ten sam telefon: dzwoniący wie do kogo dzwoni, ale nie wiadomo kto odpowie. Dlatego każde żądanie HTTP musi określać nazwę hosta (i ewentualnie port) do którego jest przeznaczone. Kompletne żądanie HTTP musi wyglądać tak: GET /ścieżka/plik.html HTTP/1.1 Host: [Pusta linia tutaj] Z wyjątkiem : 80 - nie jest wymagane, ponieważ jest to domyślny port HTTP. Host: - jest wymagane tylko w nagłówku HTTP 1.1. Jest to także najbardziej potrzebna nowa funkcja HTTP 1.1. Bez niej każda nazwa hosta wymagałaby unikalnego adresu IP, a nam szybko by zabrakło adresów IP z powodu eksplozji nowych domen. Fragmentacja kodowanego transferu. Jeśli serwer chce zacząć wysyłać odpowiedź nie znając wcześniej jej długości całkowitej (jak w długim wyjściu skryptu), to może użyć prostego pakietowego kodowanego transferu, który rozbija całkowitą odpowiedź na mniejsze kawałki i wysyła je szeregowo. Można zidentyfikować taką reakcję, ponieważ zawiera nagłówek Transfer-Encoding: chunked. Wszyscy klienci HTTP 1.1 muszą mieć możliwość odbierania pofragmentowanej wiadomości. Pofragmentowana treść wiadomości zawiera szereg kawałków, po tym linię z zerem, a następnie opcjonalne stopki i linię pustą. Każdy fragment składa się z dwóch części: Linia z rozmiarem fragmentu danych (szesnastkowo) po nim średnik i dodatkowe parametry które można zignorować (żaden nie jest obecnie standardem), a kończąc na CRLF. Dane, a następnie CRLF Tak pofragmentowana odpowiedź może wyglądać następująco: HTTP/ OK Date: Fri, 31 Dec :59:59 GMT Content-Type: text/plain Transfer-Encoding: chunked 1a; ignore-stuff-here abcdefghijklmnopqrstuvwxyz abcdef 0 some-footer: some-value another-footer: another-value [pusta linia] Fragmenty mogą zawierać dowolne dane binarne i mogą być znacznie większe niż powyższy przykład. Parametr określający rozmiar linii jest rzadko używany, ale trzeba przynajmniej wiedzieć jak go poprawnie ignorować. Stopki są również rzadko używane, ale mogą być przydatne do takich rzeczy jak sumy kontrolne czy podpisy cyfrowe.

11 Stałe połączenia i nagłówek Connection: close. W HTTP 1.0 i wcześniej połączenia TCP są zamykane po każdym żądaniu i odpowiedzi, więc każdy zasób do pobrania wymaga własnego połączenia. Otwieranie i zamykanie połączeń TCP zajmuje znaczną ilość czasu procesora, przepustowości i pamięci. W praktyce większość stron internetowych składa się z kilku plików na tym serwerze, zatem można dużo zaoszczędzić wysyłając kilka zapytań i odpowiedzi za pomocą jednego trwałego połączenia. Stałe połączenia są domyślnie w HTTP 1.1. Wystarczy otworzyć połączenie i wysłać kilka żądań szeregowo (potokowo) i przeczytać odpowiedzi w tej samej kolejności, co zostały wysłane. Jeśli nagłówek klienta zawiera Connection: close, to połączenie zostanie zamknięte po odpowiedniej odpowiedzi. Należy tego użyć jeżeli nie obsługujemy stałego połączenia, albo jeśli odpowiedź będzie ostatnią w trakcie połączenia. Podobnie, jeśli odpowiedź zawiera ten nagłówek, serwer zamyka połączenie po tej odpowiedzi, a klient nie powinien wysyłać więcej żadnych żądań za pośrednictwem tego połączenia. Odpowiedź 100 continue W trakcie, gdy klient HTTP 1.1 wysyła żądanie do serwera, serwer może odpowiadać tymczasowo 100 Continue. Oznacza to, że serwer otrzymał pierwszą część żądania i może być to wykorzystane do wspomagania komunikacji na powolnych łączach. Odpowiedź 100 continue jest skonstruowana jak każda odpowiedź w HTTP, tzn. składa się z linii statusu, nagłówków opcjonalnych i linii pustej. W przeciwieństwie do innych odpowiedzi, występuje ona zawsze po innej kompletnej, ostatniej odpowiedzi. W przykładzie pełne dane, które pochodzą z serwera mogą składać się z dwóch odpowiedzi w serii, jak: HTTP/ Continue HTTP/ OK Date: Fri, 31 Dec :59:59 GMT Content-Type: text/plain Content-Length: 42 some-footer: some-value another-footer: another-value abcdefghijklmnoprstuvwxyz abcdef Aby sobie z tym poradzić, prosty klient HTTP 1.1 może odczytać jedną odpowiedź z gniazda, jeśli kod stanu jest 100 odrzucić pierwszą odpowiedź i przeczytać następną 1.7. Serwery HTTP 1.1 Wymaganie nagłówka Host:. Ze względu na pilność realizacji nowego nagłówka Host:, serwerom nie wolno tolerować żądań HTTP 1.1 bez niego. Jeśli serwer otrzyma takie żądanie, musi zwrócić odpowiedź 400 Bad Request, jak w przykładzie: HTTP/ Bad Request Content-Type: text/html Content-Length: 111

12 <html><body> <h2>no Host: header received</h2> HTTP 1.1 requests must include the Host: header. </body></html> Wymóg ten odnosi się tylko do klientów korzystających z protokołu HTTP 1.1, a nie każdej przyszłej wersji. Jeśli żądanie HTTP używa wersji późniejszej niż 1.1, serwer może przyjąć bezwzględną ścieżkę URL zamiast nagłówka Host:. Jeżeli żądanie korzysta z HTTP 1.0, serwer może przyjąć żądanie bez identyfikacji hosta. Akceptowanie absolutnych URL Host: Nagłówek jest rzeczywiście tymczasowym rozwiązaniem problemu identyfikacji hosta. W przyszłych wersjach HTTP, żądania będą używać bezwzględnych adresów URL zamiast ścieżki, jak: GET HTTP/1.2 Aby umożliwić to przejście protokołu, serwery HTTP 1.1 muszą zaakceptować tą formę żądań, choć klienci HTTP 1.1 nie będą ich wysyłać. Serwer musi jeszcze zgłosić błąd jeśli klient HTTP 1.1 opuści nagłówek Host:. Fragmentacja kodowanego transferu. Podobnie jak w HTTP 1.1 klienci muszą akceptować fragmentowanie pakietowe odpowiedzi, serwery muszą przyjąć żądania. Serwery nie są potrzebne do wygenerowania pofragmentowanej wiadomości, po prostu muszą być w stanie je przyjąć. Stałe połączenia i nagłówek Connection: close. Jeśli klient HTTP 1.1 wysyła wiele żądań za pośrednictwem jednego połączenia, serwer powinien wysyłać odpowiedzi z powrotem w tej samej kolejności, co żądania to wszystko na serwerze ma na celu wspieranie stałych połączeń. Jeżeli żądanie zawiera nagłówek Connection: close, to wtedy żądanie jest ostanie w połączeniu i serwer powinien zakończyć połączenie po wysłaniu odpowiedzi. Ponadto serwer powinien zamknąć bezczynne połączenie po pewnym zadanym czasie (np. 10 sekund). Jeśli nie chcemy wspierać stałych połączeń, należy dołączyć nagłówek Connection: close w odpowiedzi. Używa się tego nagłówka, gdy chcemy zamknąć połączenie, nawet jeśli nie wszystkie żądania zostały spełnione. Nagłówek mówi, że połączenie zostanie zamknięte po bieżącej odpowiedzi, a ważny klient HTTP 1.1 będzie obsługiwać ją prawidłowo. Korzystanie z odpowiedzi 100 continue Jak opisano w rozdziale 1.6, ta odpowiedź istnieje, aby uporać się z problemem powolnych łączy. Kiedy serwer HTTP 1.1 otrzyma pierwszą linię HTTP 1.1 żądania, musi odpowiedzieć albo 100 continue lub błędem. Jeśli wysyła odpowiedź 100 continue należy również wysłać kolejną, ostateczną odpowiedź, że żądanie zostało raz przetworzone. Odpowiedź 100 continue nie wymaga nagłówków, ale zwykle musi być po nich linia pusta. Przykład: HTTP/ Continue [pusta linia] [tutaj trafi inna odpowiedź HTTP] Nagłówek Date:. Pamięć podręczna jest znaczącym osiągnięciem w HTTP 1.1, i nie może pracować bez odpowiedzi Date. Serwery muszą odpowiadać nagłówkiem Date: zawierającym aktualny czas w formie:

13 Date: Fri, 31 Dec :59:59 GMT Wszystkie odpowiedzi z wyjątkiem tych z 100 poziomu statusu (ale łącznie z błędem) muszą zawierać nagłówek Date:. Wszystkie wartości czasu w HTTP wykorzystują czas Greenwich. Rozpatrywanie żądań o nagłówki If-modified-Since: lub If-Unmodified-Since:. Aby uniknąć wysyłania zasobów, które nie muszą być wysłane, HTTP 1.1 definiuje nagłówki żądań If-modified-Since: i If-Unmodified-Since:. Pierwszy mówi żeby wysyłać tylko te zasoby, u których nastąpiła zmiana od określonego czasu, drugi mówi na odwrót. Klienci nie są zobowiązani do ich używania, ale serwery HTTP 1.1 wymagają honorowania żądań, które używają tych nagłówków ze znacznikami czasu. Niestety, z powodu wcześniejszych wersji HTTP, wartość daty może być w jednym z trzech formatów: If-Modified-Since: Fri, 31 Dec :59:59 GMT If-Modified-Since: Friday, 31-Dec-99 23:59:59 GMT If-Modified-Since: Fri Dec 31 23:59: Chociaż serwery muszą zaakceptować wszystkie trzy formaty daty protokołu HTTP 1.1, klienci i serwery muszą generować tylko pierwszy rodzaj. If-Modified-Since: nagłówek jest używany przez metodę GET. Jeżeli żądany zasób został zmodyfikowany od podanej daty to nagłówek zostaje zignorowany następuje powrót do zasobów. W przeciwnym razie zwróci 304 Not Modified włączając nagłówek Date: bez treści wiadomości, jak w przykładzie: HTTP/ Not Modified Date: Fri, 31 Dec :59:59 GMT [pusta linia] If-Unmodified-Since: Nagłówek jest podobny, ale może być używany z dowolną metodą. Jeśli żądany zasób nie został zmodyfikowany od danej daty, ignoruje nagłówek i powraca do zasobu tak jak zwykle. W przeciwnym razie zwróci odpowiedź 412 Precondition Failed, jak w przykładzie: HTTP/ Precondition Failed [pusta linia] 2. Analiza ruchu sieciowego 2.1. Wstęp W pierwszym etapie przeanalizowaliśmy ruch sieciowy wykonując połączenie z serwerem przez omawiany protokół HTTP na domyślny port 80 korzystając z programu telnet: [root@virtuallinux Adrian]# telnet 80 Trying Connected to Escape character is '^]'.

14 Connection closed by foreign host. Jak widać połączenie zostało zakończone z powodu zbyt długiego czasu bezczynności. Sprawdźmy, zatem jaki wygenerowało ono ruch sieciowy Zapytania ARP Na powyższym screenie z programu o nazwie Wireshark, widzimy, że pierwszą czynnością było ustalenie adresu MAC routera za pomocą zapytania ARP na rozgłoszeniowy adres MAC. Przy okazji zauważamy, że w naszej sieci wysyłane są ramki typu DIX i odczytujemy producentów kart sieciowych. Gdy już obie maszyny znają swoje wzajemne adresy fizyczne przechodzimy do kolejnego etapu.

15 2.3. Zapytania DNS Na powyższym obrazie zauważamy, że adres IP serwera, z którym próbujemy się połączyć nie jest znany w systemie, gdyż nie ma go w pliku host. Dlatego resolver wysłał zapytanie DNS o adres IP v4 do serwera nazw o adresie IP Usługa DNS korzysta z protokołu transportowego UDP. Zapytanie wysyłane jest na port 53.

16 Otrzymujemy odpowiedź, że nazwie przypisany jest adres IPv4: Przy okazji widzimy serwery autorytatywne dla tej domeny. Teraz będziemy mogli już wymieniać informacje z serwerem Połączenia TCP. Zauważamy, że pierwszą wymienioną informacją przez protokół TCP jest wysłany pakiet z flagą SYN synchronizującą na port 80. Serwer odebrał połączenie wysyłając pakiet z ustawionymi flagami SYN i ACK - potwierdzenie. Nasz komputer wysłał następnie pakiet potwierdzający z jedna flagą ACK. Po nim rozpoczyna się właściwa transmisja. Z powodu naszej bezczynności serwer zainicjował zakończenie połączenia wysyłając pakiet z flagą FIN. Klient i serwer uzgadniają wtedy przed zamknięciem wysyłając sobie komunikaty ustawiając flagi ACK i FIN. Kiedy połączenie TCP ma być zamknięte, przesyłany jest znacznik FIN, nie powoduje to natychmiastowego rozłączenia. Znacznik przesłany przez obie strony, jako sygnał zgody na zakończenie komunikacji. Gdyby jeden z uczestników komunikacji zakończył połączenie nie informując drugiego, tamten mógłby w nieskończoność podejmować próby retransmisji danych, które nigdy nie zostałby odebrane. Zamykanie sesji zostało zrealizowane poprzez wysłanie czterech takich pakietów.

17 2.5. Żądanie i odpowiedź HTTP. W celu przeprowadzenia transmisji pliku z serwera HTTP, wpisaliśmy w programie telnet: [root@virtuallinux Adrian]# telnet 80 Trying Connected to Escape character is '^]'. GET / HTTP/1.1 Host: HTTP/ OK Date: Wed, 06 Jun :12:35 GMT Server: Apache Last-Modified: Tue, 05 Jun :52:37 GMT ETag: "470a222b7ea294186a53c01e4bf ffebf" Accept-Ranges: bytes Content-Length: 5707 Content-Type: text/html <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>openbsd</title> <meta name="resource-type" content="document"> <meta http-equiv="content-type" content="text/html; charset=iso "> <meta name="description" content="the main OpenBSD page"> <meta name="keywords" content="openbsd,main"> <meta name="distribution" content="global"> <meta name="copyright" content="this document copyright by OpenBSD."> <link rel="shortcut icon" HREF="/favicon.ico" TYPE="image/x-icon"> </head> <body text="#000000" bgcolor="#ffffff" topmargin=0 leftmargin=0 marginheight=0 marginwidth=0> (...) Otrzymaliśmy w ten sposób zawartość strony internetowej.

18 W Wiresharku z kolei widzimy wysłane przez nas żądanie HTTP, zgadza się z tym, co wpisaliśmy do programu telnet. Żądaliśmy głównego zasobu protokołem HTTP w wersji 1.1, podając nazwę hosta i pustą linię na koniec. W odpowiedzi dostaliśmy potwierdzenie z komunikatem nr 200. Co oznacza że wszystko przebiegło pomyślnie. Cały transfer zmieścił się w 5 pakietach. Widzimy nagłówek

19 wiadomości, możemy z niego odczytać np. że połączyliśmy się z serwerem Apache. W treści wiadomości mamy widoczną całą zawartość trony internetowej. Co świadczy o jawności przesyłanych danych, bez jakiegokolwiek szyfrowania. 3. Bibliografia. [1] RFC [2] [3] Krysiak Karol, Sieci komputerowe. Kompendium., Helion, wydanie II. [4]

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

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

Protokół HTTP 1.1 *) Wprowadzenie. Jarek Durak. rfc2616 źródło www.w3.org 1999

Protokół HTTP 1.1 *) Wprowadzenie. Jarek Durak. rfc2616 źródło www.w3.org 1999 Protokół HTTP 1.1 *) Wprowadzenie Jarek Durak * rfc2616 źródło www.w3.org 1999 HTTP Hypertext Transfer Protocol Protokół transmisji hipertekstu został zaprojektowany do komunikacji serwera WW z klientem

Bardziej szczegółowo

Systemy internetowe. Wykład 5 Architektura WWW. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science

Systemy internetowe. Wykład 5 Architektura WWW. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science Systemy internetowe Wykład 5 Architektura WWW Architektura WWW Serwer to program, który: Obsługuje repozytorium dokumentów Udostępnia dokumenty klientom Komunikacja: protokół HTTP Warstwa klienta HTTP

Bardziej szczegółowo

pawel.rajba@gmail.com, http://itcourses.eu/ Adresy zasobów Rodzaje zawartości Negocjacja treści Komunikacja Buforowanie HTTP Request/Response Nagłówki Bezstanowość Cookies Narzędzia URL, http://www.ietf.org/rfc/rfc3986.txt

Bardziej szczegółowo

Programowanie Sieciowe 2 Protokoły komunikacyjne: HTTP

Programowanie Sieciowe 2 Protokoły komunikacyjne: HTTP Programowanie Sieciowe 2 Protokoły komunikacyjne: HTTP mgr inż. Tomasz Jaworski tjaworski@kis.p.lodz.pl http://tjaworski.kis.p.lodz.pl/ Protokoły komunikacyjne HTTP HyperText Transport Protocol 2 Protokół

Bardziej szczegółowo

Technologie sieciowe Sprawozdanie z labolatorium. Lista 5

Technologie sieciowe Sprawozdanie z labolatorium. Lista 5 Politechnika Wrocławska Wydział Podstawowych Problemów Techniki Technologie sieciowe Sprawozdanie z labolatorium Lista 5 Autor: Piotr Kosytorz IIrokInf. indeks: 166174 Prowadzący: dr inż. Łukasz Krzywiecki

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

PSI Protokół HTTP + wstęp do przedmiotu. Kraków, 10 październik 2014 mgr Piotr Rytko Wydział Matematyki i Informatyki UJ

PSI Protokół HTTP + wstęp do przedmiotu. Kraków, 10 październik 2014 mgr Piotr Rytko Wydział Matematyki i Informatyki UJ PSI Protokół HTTP + wstęp do przedmiotu Kraków, 10 październik 2014 mgr Piotr Rytko Wydział Matematyki i Informatyki UJ Co będzie na zajęciach Całość ćwiczeń podzielona została na trzy główne bloki: Blok

Bardziej szczegółowo

I.Wojnicki, Tech.Inter.

I.Wojnicki, Tech.Inter. Igor Wojnicki (AGH, KA) Techniki Internetowe i Multimedialne 5 marca 2012 1 / 37 Techniki Internetowe i Multimedialne Protokół HTTP, Przegladarki Igor Wojnicki Katedra Automatyki Akademia Górniczo-Hutnicza

Bardziej szczegółowo

HTTP. literatura: http://tools.ietf.org/html/rfc2616

HTTP. literatura: http://tools.ietf.org/html/rfc2616 HTTP + CGI HTTP literatura: http://tools.ietf.org/html/rfc2616 HTTP = Hypertext Transfer Protocol RFC2616 używany do transferu danych dowolnego typu, w szczególności dokumentów HTML typowa sesja komunikacyjna:

Bardziej szczegółowo

Języki programowania wysokiego poziomu WWW

Języki programowania wysokiego poziomu WWW Języki programowania wysokiego poziomu WWW Zawartość Protokół HTTP Języki HTML i XHTML Struktura dokumentu html: DTD i rodzaje html; xhtml Nagłówek html - kodowanie znaków, język Ciało html Sposób formatowania

Bardziej szczegółowo

Technologie Internetu. Protokół HTTP. Aleksander Denisiuk. denisjuk@pja.edu.pl

Technologie Internetu. Protokół HTTP. Aleksander Denisiuk. denisjuk@pja.edu.pl Technologie Internetu Protokół HTTP Aleksander Denisiuk denisjuk@pja.edu.pl Polsko-Japońska Akademia Technik Komputerowych Wydział Informatyki w Gdańsku ul. Brzegi 55 80-045 Gdańsk Technologie Internetu

Bardziej szczegółowo

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Kierunek: Automatyka i Robotyka Studia stacjonarne I stopnia: rok I, semestr II

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Kierunek: Automatyka i Robotyka Studia stacjonarne I stopnia: rok I, semestr II SIECI KOPMPUTEROWE I TECHNOLOGIE INTERNETOWE (SKiTI) Wykład 10 Protokół HTTP Politechnika Gdańska Wydział Elektrotechniki i Automatyki Kierunek: Automatyka i Robotyka Studia stacjonarne I stopnia: rok

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 Globalna sieć Internet Koncepcja sieci globalnej Usługi w sieci Internet

Bardziej szczegółowo

ZESZYTY ETI ZESPOŁU SZKÓŁ W TARNOBRZEGU Nr 2 Seria: Teleinformatyka 2013

ZESZYTY ETI ZESPOŁU SZKÓŁ W TARNOBRZEGU Nr 2 Seria: Teleinformatyka 2013 ZESZYTY ETI ZESPOŁU SZKÓŁ W TARNOBRZEGU Nr 2 Seria: Teleinformatyka 2013 Zespół Szkół im. ks. S. Staszica w Tarnobrzegu PROTOKÓŁ I SERWER HTTP APACHE JAKO PRZYKŁAD SERWERA HTTP PRZYKŁADY KOMUNIKACJI Z

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

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

Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (http://www.amu.edu.pl/~mtanas)

Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (http://www.amu.edu.pl/~mtanas) Hosting WWW Bezpieczeństwo hostingu WWW Dr Michał Tanaś (http://www.amu.edu.pl/~mtanas) Protokoły WWW Protokoły transportowe HTTP HyperText Transfer Protocol HTTPS HTTP Secured Format adresów WWW URI Uniform

Bardziej szczegółowo

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

Sieci komputerowe. Wykład 8: Warstwa zastosowań: FTP i HTTP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski Sieci komputerowe Wykład 8: Warstwa zastosowań: FTP i HTTP Marcin Bieńkowski Instytut Informatyki Uniwersytet Wrocławski Sieci komputerowe (II UWr) Wykład 8 1 / 26 Przypomnienie: Internetowy model warstwowy

Bardziej szczegółowo

I.Wojnicki, Tech.Inter.

I.Wojnicki, Tech.Inter. , Przegladarki Katedra Automatyki Akademia Górniczo-Hutnicza w Krakowie 25 lutego 2009 Outline 1 2 3 Wybrane Definicje HTTP, RFC1945 I http://www.ietf.org/rfc/rfc1945.txt HTTP Made Really Easy: http://www.jmarshall.com/easy/http/

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

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar)

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar) Tworzenie witryn internetowych PHP/Java (mgr inż. Marek Downar) Hypertext Xanadu Project (Ted Nelson) propozycja prezentacji dokumentów pozwalającej czytelnikowi dokonywać wyboru Otwarte, płynne oraz ewoluujące

Bardziej szczegółowo

DOKUMENTACJA INTERFEJSU API - HTTPS

DOKUMENTACJA INTERFEJSU API - HTTPS DOKUMENTACJA INTERFEJSU API - HTTPS WERSJA 0.1 DATA PUBLIKACJI : 01.03.2014 SPIS TREŚCI Spis treści Wprowadzenie 1 Dostęp do usługi notowania online 2 Opis struktur danych 3 Kody błędów 5 Historia wersji

Bardziej szczegółowo

Laboratorium Sieci Komputerowych - 2

Laboratorium Sieci Komputerowych - 2 Laboratorium Sieci Komputerowych - 2 Analiza prostych protokołów sieciowych Górniak Jakub Kosiński Maciej 4 maja 2010 1 Wstęp Zadanie polegało na przechwyceniu i analizie komunikacji zachodzącej przy użyciu

Bardziej szczegółowo

Sprawozdanie Sieci komputerowe i bazy danych Laboratorium nr 4

Sprawozdanie Sieci komputerowe i bazy danych Laboratorium nr 4 03.04.2017r AGH, WIMIR, Inżynieria Mechatroniczna Dawid Furdzik Nr albumu: 279671 Sprawozdanie Sieci komputerowe i bazy danych Laboratorium nr 4 Po wywołaniu polecenia odpowiedź serwera wygląda następująco:

Bardziej szczegółowo

Źródła. cript/1.5/reference/ Ruby on Rails: http://www.rubyonrails.org/ AJAX: http://www.adaptivepath.com/publications/e ssays/archives/000385.

Źródła. cript/1.5/reference/ Ruby on Rails: http://www.rubyonrails.org/ AJAX: http://www.adaptivepath.com/publications/e ssays/archives/000385. Źródła CSS: http://www.csszengarden.com/ XHTML: http://www.xhtml.org/ XML: http://www.w3.org/xml/ PHP: http://www.php.net/ JavaScript: http://devedgetemp.mozilla.org/library/manuals/2000/javas cript/1.5/reference/

Bardziej szczegółowo

XML-RPC: Zdalne wykonywanie procedur

XML-RPC: Zdalne wykonywanie procedur XML-RPC: Zdalne wykonywanie procedur Bartłomiej Świercz Katedra Mikroelektroniki i Technik Informatycznych Łódź, 28 października 2005 roku Wstęp Internet dostarcza wiele możliwości programistą piszącym

Bardziej szczegółowo

HTTP W 5-CIU PYTANIACH MICHAŁ KOPACZ

HTTP W 5-CIU PYTANIACH MICHAŁ KOPACZ HTTP W 5-CIU PYTANIACH MICHAŁ KOPACZ 1 Co się dzieje po wpisaniu URL w przeglądarce? https://github.com/michalkopacz/zf-apigility/commits?page=4#start-of-content Uniform Resource Locator (ujednolicony

Bardziej szczegółowo

Protokół wymiany sentencji, wersja 1

Protokół wymiany sentencji, wersja 1 Protokół wymiany sentencji, wersja 1 Sieci komputerowe 2011@ MIM UW Osowski Marcin 28 kwietnia 2011 1 Streszczenie Dokument ten opisuje protokół przesyłania sentencji w modelu klientserwer. W założeniu

Bardziej szczegółowo

Sprawozdanie Sieci komputerowe i bazy danych Laboratorium nr 4 Wojciech Kaczmarski

Sprawozdanie Sieci komputerowe i bazy danych Laboratorium nr 4 Wojciech Kaczmarski Sprawozdanie Sieci komputerowe i bazy danych Laboratorium nr 4 Wojciech Kaczmarski Zad.2 GET /~s279680/ HTTP/1.1 Host: mts.wibro.agh.edu.pl HTTP/1.1 200 OK Date: Wed, 29 Mar 2017 08:15:01 GMT Server: Apache/2.4.7

Bardziej szczegółowo

Zadanie programistyczne nr 3 z Sieci komputerowych

Zadanie programistyczne nr 3 z Sieci komputerowych Zadanie programistyczne nr 3 z Sieci komputerowych 1 Opis zadania Celem tego zadania jest napisanie prostego serwera WWW, wyświetlającego strony z zadanego katalogu. W tym celu wykonaj następujące czynności

Bardziej szczegółowo

I.Wojnicki, JiTW. Języki i Technologie Webowe. Protokół HTTP, Przegladarki. Igor Wojnicki

I.Wojnicki, JiTW. Języki i Technologie Webowe. Protokół HTTP, Przegladarki. Igor Wojnicki Igor Wojnicki (AGH, KA) Języki i Technologie Webowe 16 października 2013 1 / 37 Języki i Technologie Webowe Protokół HTTP, Przegladarki Igor Wojnicki Katedra Informatyki Stosowanej Akademia Górniczo-Hutnicza

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

Sprawozdanie nr 4. Ewa Wojtanowska

Sprawozdanie nr 4. Ewa Wojtanowska Sprawozdanie nr 4 Ewa Wojtanowska Zad.1 Korzystając z zasobów internetu zapoznałam się z dokumentami: RFC 1945 i RFC 2616. Zad.2 Badanie działania protokołu http Zad.3 Zad.4 URL (ang. Uniform Resource

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

Referat z przedmiotu Technologie Internetowe SPIS TREŚCI

Referat z przedmiotu Technologie Internetowe SPIS TREŚCI SPIS TREŚCI 1.Dwie metody przekazu danych do serwera 2 2.Metoda GET przykład 3 3.Metoda POST przykład 4 4.Kiedy GET a kiedy POST 5 5.Szablony po co je stosować 7 6.Realizacja szablonu własną funkcją 8

Bardziej szczegółowo

Ćwiczenie: JavaScript Cookies (3x45 minut)

Ćwiczenie: JavaScript Cookies (3x45 minut) Ćwiczenie: JavaScript Cookies (3x45 minut) Cookies niewielkie porcje danych tekstowych, które mogą być przesyłane między serwerem a przeglądarką. Przeglądarka przechowuje te dane przez określony czas.

Bardziej szczegółowo

Kontrola sesji w PHP HTTP jest protokołem bezstanowym (ang. stateless) nie utrzymuje stanu między dwoma transakcjami. Kontrola sesji służy do

Kontrola sesji w PHP HTTP jest protokołem bezstanowym (ang. stateless) nie utrzymuje stanu między dwoma transakcjami. Kontrola sesji służy do Sesje i ciasteczka Kontrola sesji w PHP HTTP jest protokołem bezstanowym (ang. stateless) nie utrzymuje stanu między dwoma transakcjami. Kontrola sesji służy do śledzenia użytkownika podczas jednej sesji

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

Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (http://www.amu.edu.pl/~mtanas)

Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (http://www.amu.edu.pl/~mtanas) Hosting WWW Bezpieczeństwo hostingu WWW Dr Michał Tanaś (http://www.amu.edu.pl/~mtanas) Apache2 dyrektywy podstawowe Zajmują zawsze jedną linię tekstu Ogólna postać: Dyrektywa opcje Ich zasięg ogranicza

Bardziej szczegółowo

SIP Studia Podyplomowe Ćwiczenie laboratoryjne Instrukcja

SIP Studia Podyplomowe Ćwiczenie laboratoryjne Instrukcja SIP Studia Podyplomowe Ćwiczenie laboratoryjne Instrukcja Instytut Telekomunikacji Wydział Elektroniki i Technik Informacyjnych Politechnika Warszawska, marzec 2015 Wprowadzenie Ćwiczenie jest wykonywane

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

Aplikacje WWW. Wykład 4. Protokół HTTP. wykład prowadzi: Maciej Zakrzewicz. Protokół HTTP

Aplikacje WWW. Wykład 4. Protokół HTTP. wykład prowadzi: Maciej Zakrzewicz. Protokół HTTP Wykład 4 Protokół HTTP wykład prowadzi: Maciej Zakrzewicz Protokół HTTP 1 Plan wykładu Wprowadzenie do protokołu HTTP Struktura komunikatów żądania i odpowiedzi Specyfikacja MIME Uwierzytelnianie metodą

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

Laboratorium 3.4.2: Zarządzanie serwerem WWW

Laboratorium 3.4.2: Zarządzanie serwerem WWW Laboratorium 3.4.2: Zarządzanie serwerem WWW 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

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

Specyfikacja techniczna. mprofi Interfejs API

Specyfikacja techniczna. mprofi Interfejs API Warszawa 09.04.2015. Specyfikacja techniczna mprofi Interfejs API wersja 1.0.2 1 Specyfikacja techniczna mprofi Interfejs API wersja 1.0.2 WERSJA DATA STATUTS AUTOR 1.0.0 10.03.2015 UTWORZENIE DOKUMENTU

Bardziej szczegółowo

Laboratorium 1 Wprowadzenie do PHP

Laboratorium 1 Wprowadzenie do PHP Laboratorium 1 Wprowadzenie do PHP Ćwiczenie 1. Tworzenie i uruchamianie projektu PHP w Netbeans Tworzenie projektu Uruchom środowisko NetBeans. Stwórz nowy projekt typu PHP Application (File->New Project,

Bardziej szczegółowo

Ministerstwo Finansów

Ministerstwo Finansów Ministerstwo Finansów Departament Informatyzacji Rejestr Domen Służących do Oferowania Gier Hazardowych Niezgodnie z Ustawą Specyfikacja Wejścia-Wyjścia Wersja 1.1 Warszawa, 16.02.2017 r. Copyright (c)

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

Instrukcja programu Wireshark (wersja 1.8.3) w zakresie TCP/IP

Instrukcja programu Wireshark (wersja 1.8.3) w zakresie TCP/IP Instrukcja programu Wireshark (wersja 1.8.3) w zakresie TCP/IP I. Na początek Czym jest analizator sieciowy jakim jest Wireshark? Analizator sieciowy pozwala na przechwytywanie i analizę danych, które

Bardziej szczegółowo

TRX API opis funkcji interfejsu

TRX API opis funkcji interfejsu TRX Krzysztof Kryński Cyfrowe rejestratory rozmów seria KSRC TRX API opis funkcji interfejsu Kwiecień 2013 Copyright TRX TRX ul. Garibaldiego 4 04-078 Warszawa Tel. 22 871 33 33 Fax 22 871 57 30 www.trx.com.pl

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

ZABEZPIECZENIE KOMUNIKACJI Z SYSTEMEM E-PŁATNOŚCI

ZABEZPIECZENIE KOMUNIKACJI Z SYSTEMEM E-PŁATNOŚCI PROJEKT: ZAPROJEKTOWANIE, WYKONANIE I WDROŻENIE SYSTEMU INFORMATYCZNEGO OBSŁUGUJĄCEGO E-PŁATNOŚCI ZABEZPIECZENIE KOMUNIKACJI Z SYSTEMEM E-PŁATNOŚCI Strona 1 z 19 Informacje o Historia zmian Wprowadzenie

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

Ministerstwo Finansów

Ministerstwo Finansów Ministerstwo Finansów Departament Informatyzacji Specyfikacja Wejścia-Wyjścia Wersja 1.0 Warszawa, 16.02.2017 r. Copyright (c) 2017 Ministerstwo Finansów MINISTERSTWO FINANSÓW, DEPARTAMENT INFORMATYZACJI

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

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

Bezpieczeństwo WWW. Plan prezentacji. WWW a protokoły TCP/IP; URL. Czym jest WWW?

Bezpieczeństwo WWW. Plan prezentacji. WWW a protokoły TCP/IP; URL. Czym jest WWW? Plan prezentacji Bezpieczeństwo WWW Krzysztof Szczypiorski, Piotr Kijewski Instytut Telekomunikacji Politechniki Warszawskiej e-mail: {K.Szczypiorski,P.Kijewski}@tele.pw.edu.pl Secure 98 - Zegrze, 2-3

Bardziej szczegółowo

Wykład 2: Budowanie sieci lokalnych. A. Kisiel, Budowanie sieci lokalnych

Wykład 2: Budowanie sieci lokalnych. A. Kisiel, Budowanie sieci lokalnych Wykład 2: Budowanie sieci lokalnych 1 Budowanie sieci lokalnych Technologie istotne z punktu widzenia konfiguracji i testowania poprawnego działania sieci lokalnej: Protokół ICMP i narzędzia go wykorzystujące

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

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Ł INTERNET PROTOCOL (IP) INTERNET CONTROL MESSAGE PROTOCOL (ICMP) WSTĘP DO SIECI INTERNET Kraków, dn. 7 listopada 2016 r. PLAN IPv4: schemat nagłówka ICMP: informacje

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

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

Elektroniczna Skrzynka Podawcza

Elektroniczna Skrzynka Podawcza Elektroniczna Skrzynka Podawcza Instrukcja dla administratora Wersja 1.6.0 Przewodnik przeznaczony jest dla użytkowników, którzy administrują kontem urzędu w systemie Elektronicznej Skrzynki Podawczej.

Bardziej szczegółowo

Dokumentacja REST API v 3.0. Kraków, 7 marca FreshMail, ul. Fabryczna 20a, Kraków tel , freshmail.

Dokumentacja REST API v 3.0. Kraków, 7 marca FreshMail, ul. Fabryczna 20a, Kraków tel , freshmail. Dokumentacja REST API v 3.0 Kraków, 7 marca 2012 FreshMail, ul. Fabryczna 20a, 31-553 Kraków tel. +48 12 617 61 40, info@freshmail.pl, freshmail.pl Wersja dokumentu: 1.0 Autorzy: Tadeusz Kania ,

Bardziej szczegółowo

Specyfikacja instalacji usługi SMS Premium w Przelewy24.pl

Specyfikacja instalacji usługi SMS Premium w Przelewy24.pl Specyfikacja instalacji usługi SMS Premium w Przelewy24.pl wersja.2.9 data 2014-11-21 Opis usług: P24 KOD P24 KLUCZ P24 WAPA SEND SMS Strona 1 z 8 P24 KOD Przebieg transakcji Operacje po stronie Sprzedawcy

Bardziej szczegółowo

SIP: Session Initiation Protocol. Krzysztof Kryniecki 16 marca 2010

SIP: Session Initiation Protocol. Krzysztof Kryniecki 16 marca 2010 SIP: Session Initiation Protocol Krzysztof Kryniecki 16 marca 2010 Wprowadzenie Zaaprobowany przez IETF w 1999 (RFC 2543) Zbudowany przez Mutli Parry Multimedia Session Control Working Group : MMUSIC Oficjalny

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

Ataki na aplikacje WWW. Łomem, czy wytrychem? Jak dobrać się do aplikacji WWW

Ataki na aplikacje WWW. Łomem, czy wytrychem? Jak dobrać się do aplikacji WWW Ataki na aplikacje WWW Łomem, czy wytrychem? Jak dobrać się do aplikacji WWW Ataki na aplikację Ataki na przeglądarkę Ataki na serwer WWW/kontener, etc. Często kombinacja i wiele etapów Którędy do środka

Bardziej szczegółowo

UNIWERSYTET EKONOMICZNY WE WROCŁAWIU. Sprawozdanie. Analizator sieciowy WIRESHARK. Paweł Jarosz 2010-11-12 Grupa 20 IiE

UNIWERSYTET EKONOMICZNY WE WROCŁAWIU. Sprawozdanie. Analizator sieciowy WIRESHARK. Paweł Jarosz 2010-11-12 Grupa 20 IiE UNIWERSYTET EKONOMICZNY WE WROCŁAWIU Sprawozdanie Analizator sieciowy WIRESHARK Paweł Jarosz 2010-11-12 Grupa 20 IiE Sprawozdanie zawiera analizę pakietów sieciowych dla protokołów HTTP, HTTPS, TCP, ICMP,

Bardziej szczegółowo

Przekierowanie portów w routerze - podstawy

Przekierowanie portów w routerze - podstawy Przekierowanie portów w routerze - podstawy Wyobraźmy sobie, że posiadamy sieć domową i w tej sieci pracują dwa komputery oraz dwie kamery IP. Operator dostarcza nam łącze internetowe z jednym adresem

Bardziej szczegółowo

The OWASP Foundation http://www.owasp.org. Session Management. Sławomir Rozbicki. slawek@rozbicki.eu

The OWASP Foundation http://www.owasp.org. Session Management. Sławomir Rozbicki. slawek@rozbicki.eu The OWASP Foundation http://www.owasp.org Session Management Sławomir Rozbicki slawek@rozbicki.eu 28-07-2011 OWASP TOP 10 A1: Injection A2: Cross-Site Scripting (XSS) A3: Broken Authentication and Session

Bardziej szczegółowo

ZPKSoft WDoradca. 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja

ZPKSoft WDoradca. 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja ZPKSoft WDoradca 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja 1. Wstęp ZPKSoft WDoradca jest technologią dostępu przeglądarkowego do zasobów systemu ZPKSoft Doradca.

Bardziej szczegółowo

Laboratorium 6.7.2: Śledzenie pakietów ICMP

Laboratorium 6.7.2: Śledzenie pakietów ICMP Topologia sieci Tabela adresacji Urządzenie Interfejs Adres IP Maska podsieci Domyślna brama R1-ISP R2-Central Serwer Eagle S0/0/0 10.10.10.6 255.255.255.252 Nie dotyczy Fa0/0 192.168.254.253 255.255.255.0

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

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV Piotr Jarosik, Kamil Jaworski, Dominik Olędzki, Anna Stępień Dokumentacja wstępna TIN Rozproszone repozytorium oparte o WebDAV 1. Wstęp Celem projektu jest zaimplementowanie rozproszonego repozytorium

Bardziej szczegółowo

INSTRUKCJA obsługi certyfikatów

INSTRUKCJA obsługi certyfikatów INSTRUKCJA obsługi certyfikatów dla użytkownika bankowości internetowej Pocztowy24 z wybraną metodą autoryzacji Certyfikat Spis treści 1. Wstęp... 3 1.1 Wymagania techniczne... 3 2. Certyfikat jako jedna

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

Dokonaj instalacji IIS opublikuj stronę internetową z pierwszych zajęć. Ukaże się kreator konfigurowania serwera i klikamy przycisk Dalej-->.

Dokonaj instalacji IIS opublikuj stronę internetową z pierwszych zajęć. Ukaże się kreator konfigurowania serwera i klikamy przycisk Dalej-->. Dokonaj instalacji IIS opublikuj stronę internetową z pierwszych zajęć Ukaże się kreator konfigurowania serwera i klikamy przycisk Dalej-->. Następnie wybieramy Serwer aplikacji (IIS, ASP.NET) i klikamy

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

ARP Address Resolution Protocol (RFC 826)

ARP Address Resolution Protocol (RFC 826) 1 ARP Address Resolution Protocol (RFC 826) aby wysyłać dane tak po sieci lokalnej, jak i pomiędzy różnymi sieciami lokalnymi konieczny jest komplet czterech adresów: adres IP nadawcy i odbiorcy oraz adres

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

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar)

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar) Tworzenie witryn internetowych PHP/Java (mgr inż. Marek Downar) Rodzaje zawartości Zawartość statyczna Treść statyczna (np. nagłówek, stopka) Layout, pliki multimedialne, obrazki, elementy typograficzne,

Bardziej szczegółowo

Bazy Danych i Usługi Sieciowe

Bazy Danych i Usługi Sieciowe Bazy Danych i Usługi Sieciowe Ćwiczenia VI Paweł Daniluk Wydział Fizyki Jesień 2012 P. Daniluk (Wydział Fizyki) BDiUS ćw. VI Jesień 2012 1 / 19 Strona wykładu http://bioexploratorium.pl/wiki/ Bazy_Danych_i_Usługi_Sieciowe_-_2012z

Bardziej szczegółowo

pasja-informatyki.pl

pasja-informatyki.pl pasja-informatyki.pl Sieci komputerowe Protokoły warstwy aplikacji Damian Stelmach Wstęp 2018 Spis treści Wstęp... 3 Protokół HTTP... 4 Metoda GET... 5 Metoda POST... 8 Poczta elektroniczna... 10 Protokół

Bardziej szczegółowo

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska Programowanie aplikacji sieci Ethernet Przykład 1 Na podstawie: Monk S.: Arduino dla początkujących, HELION, Gliwice 2014 2 Arduino z nakładką

Bardziej szczegółowo

Sieci komputerowe - administracja

Sieci komputerowe - administracja Sieci komputerowe - administracja warstwa sieciowa Andrzej Stroiński andrzej.stroinski@cs.put.edu.pl http://www.cs.put.poznan.pl/astroinski/ warstwa sieciowa 2 zapewnia adresowanie w sieci ustala trasę

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

Programowanie w Sieci Internet Blok 2 - PHP. Kraków, 09 listopada 2012 mgr Piotr Rytko Wydział Matematyki i Informatyki

Programowanie w Sieci Internet Blok 2 - PHP. Kraków, 09 listopada 2012 mgr Piotr Rytko Wydział Matematyki i Informatyki Programowanie w Sieci Internet Blok 2 - PHP Kraków, 09 listopada 2012 mgr Piotr Rytko Wydział Matematyki i Informatyki Co dziś będziemy robić Podstawy podstaw, czyli małe wprowadzenie do PHP, Podstawy

Bardziej szczegółowo

Podstawy technologii WWW

Podstawy technologii WWW Podstawy technologii WWW Ćwiczenie 8 PHP, czyli poczatki nowej, dynamicznej znajomosci Na dzisiejszych zajęciach rozpoczniemy programowanie po stronie serwera w języku PHP. Po otrzymaniu żądania serwer

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

Wykład Nr 4. 1. Sieci bezprzewodowe 2. Monitorowanie sieci - polecenia

Wykład Nr 4. 1. Sieci bezprzewodowe 2. Monitorowanie sieci - polecenia Sieci komputerowe Wykład Nr 4 1. Sieci bezprzewodowe 2. Monitorowanie sieci - polecenia Sieci bezprzewodowe Sieci z bezprzewodowymi punktami dostępu bazują na falach radiowych. Punkt dostępu musi mieć

Bardziej szczegółowo

Bezpieczeństwo w M875

Bezpieczeństwo w M875 Bezpieczeństwo w M875 1. Reguły zapory sieciowej Funkcje bezpieczeństwa modułu M875 zawierają Stateful Firewall. Jest to metoda filtrowania i sprawdzania pakietów, która polega na analizie nagłówków pakietów

Bardziej szczegółowo

Płatności CashBill - SOAP

Płatności CashBill - SOAP Dokumentacja techniczna 1.0 Płatności CashBill - SOAP Dokumentacja wdrożenia systemu Płatności CashBill w oparciu o komunikację według protokołu SOAP CashBill Spółka Akcyjna ul. Rejtana 20, 41-300 Dąbrowa

Bardziej szczegółowo

SEO Audyt. Podsumowanie. 51/100 punktów. Masz 11 rzeczy, które możesz poprawić! Uzyskany wynik: Data przeprowadzenia: 2015-01-17 12:33:47

SEO Audyt. Podsumowanie. 51/100 punktów. Masz 11 rzeczy, które możesz poprawić! Uzyskany wynik: Data przeprowadzenia: 2015-01-17 12:33:47 SEO Audyt Podsumowanie Przeanalizowany adres URL: http://www.krn.org.pl Uzyskany wynik: Data przeprowadzenia: 015-01-17 1::7 51/100 punktów Masz 11 rzeczy, które możesz poprawić! 1.... 5. 6. 7. 8. 9. 10.

Bardziej szczegółowo

OBSŁUGA I KONFIGURACJA SIECI W WINDOWS

OBSŁUGA I KONFIGURACJA SIECI W WINDOWS OBSŁUGA I KONFIGURACJA SIECI W WINDOWS Jak skonfigurować komputer pracujący pod kontrolą systemu operacyjnego Windows 7, tak aby uzyskać dostęp do internetu? Zakładamy, że komputer pracuje w małej domowej

Bardziej szczegółowo