Sieci Komputerowe i Bazy Danych Laboratorium 04 Badanie Protokołów WWW Klaudia Hyjek IMT, rok III, L02 Data wykonania: 27.03.2019r.
1. Wyszukać w zasobach sieci dokumenty [RFC 1945] oraz [RFC 2616]. Zapoznać się z ich zawartością. Dokumenty [RFC 1945] oraz [RFC 2616] są to dokumenty RFC definiujące protokół HTTP, a więc protokół przesyłania dokumentów hipertekstowych to protokół sieci WWW (ang. World Wide Web). Obecną definicję HTTP stanowi RFC 2616. Za pomocą protokołu HTTP przesyła się żądania udostępnienia dokumentów WWW i informacje o kliknięciu odnośnika oraz informacje z formularzy. Zadaniem stron WWW jest publikowanie informacji natomiast protokół HTTP właśnie to umożliwia. Protokół HTTP jest użyteczny, ponieważ udostępnia znormalizowany sposób komunikowania się komputerów ze sobą. Określa on formę żądań klienta (tj. np. przeglądarki www) dotyczących danych oraz formę odpowiedzi serwera na te żądania. 2. Badanie działania protokołu http a. Odpowiedź serwera na prawidłowo zapisane polecenie Serwer połączył się. b. Odpowiedź serwera na błędnie wpisany nagłówek Serwer nie połączył się-błąd 403. c. Odpowiedź serwera na niepoprawny adres hosta Serwer połączył się-prawidłowy host został ustawiony wcześniej.
d. Odpowiedź serwera na niepoprawny adres strony Serwer nie połączył się-błąd 404. 3. Pod adresami: http://tools.pingdom.com/, http://test.watchscript.pl można znaleźć narzędzia do testowania szybkości pobierania stron www. Sprawdzić na kilku (co najmniej pięciu) przykładach dowolnych stron ich szybkość ładowania. Zaobserwuj jak zachowują się i jak są pobierane strony wyposażone w grafikę, arkusze CSS, dołączone skrypty, itp. Skomentuj wyniki obserwacji. Facebook
http://149.156.115.209/~s292481 http://149.156.115.209/~s292508
YouTube Strony, które wyposażone są w grafikę, arkusze CSS, dołączone skrypty, dużo zajmują miejsca i wolno się ładują.
4. Zdefiniować pojęcie URL. Wymienić i wskazać na przykładach jego podstawowe składniki. Podać w jaki sposób odnieść się do: o grafiki umieszczonej na stronie o odnieść się do wybranego elementu (zakładki) na stronie o odnieść się do programu pocztowego. URL (Uniform Resource Locator) oznacza ujednolicony format adresowania (określania lokalizacji) zasobów (informacji, danych, usług) stosowany w Internecie i w sieciach lokalnych. Budowa: prosty adres URL rozbudowany adres URL Sposób odnoszenia się do: grafiki umieszczonej na stronie http://adres_strony/nazwa_grafiki.rozszerzenie_obrazu przykład: https://pl.wikipedia.org/wiki/jpeg#/media/file:phalaenopsis_jpeg.jpg wybranego elementu (zakładki) na stronie http://adres_strony/nazwa_zakładki przykład: http://www.imir.agh.edu.pl/pl/wydzial/o_wydziale/ programu pocztowego identyfikator_użytkownika@nazwa_domeny_serwera_pocztowego przykład: kurowski@agh.edu.pl 5. Wyjaśnić co to znaczy że protokół HTTP jest bezstanowy. Jak objawia się jego bezstanowość w trakcie wykonywania punktu 2 (sprawdzić zachowanie putty ego po dokonaniu zmian Close window on exit: na Always). Protokół http jest bezstanowy, tzn. ani serwer (ani klient) nie przechowuje informacji o tym, jakie były wcześniej zapytania pomiędzy określonym serwerem i klientem oraz nie posiada stanu wewnętrznego. Powoduje to, że każde zapytanie do serwera traktowane jest jako nowe, z punktu widzenia serwera aplikacji niemożliwe do powiązania z informacjami np. o zalogowanym użytkowniku. 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. Po dokonaniu zmian Close window on exit: na Always Putty zamyka się po przesłaniu strony. 6. Wyjaśnić termin pliki cookie oraz celowość ich użycia. Na przykładzie kilku stron zaobserwować czy i jak pliki cookies są używane. Zaobserwować jak zmienią się zachowania stron po wyłączeniu akceptacji plików cookie. Pliki cookies to niewielkie informacje, wysyłane przez serwis internetowy, który odwiedzamy i zapisywane na urządzeniu końcowym (komputerze, laptopie, smartfonie), z którego korzystamy podczas przeglądania stron internetowych. W cookies, składających się z szeregu liter i cyfr, znajdują się różne informacje niezbędne do prawidłowego funkcjonowania serwisów internetowych, np. tych wymagających autoryzacji m.in. podczas logowania do konta pocztowego czy sklepu internetowego. Cookies : umożliwiają zapamiętywanie naszych odwiedzin na stronie i naszych preferencji dotyczących tej strony (m.in. język strony, jej kolor, układ, rozmieszczenie treści); pozwalają sklepom internetowym polecać nam produkty związane z tymi, które zazwyczaj wybieramy, które mogą nas potencjalnie zainteresować; pomagają przechowywać towary wrzucone przez nas do zakupowego koszyka w sklepach online; umożliwiają korzystanie z kont w serwisach; pozwalają być zalogowanym do serwisu na każdej z dostępnych w danej witrynie podstron; sprawiają, że nie widzimy wciąż i wciąż tej samej reklamy czy ankiety do wypełnienia; pozwalają na prezentację nam reklam w sposób uwzględniający nasze zainteresowania czy miejsce zamieszkania w ten sposób reklamy, dzięki którym korzystanie z wielu serwisów internetowych może być bezpłatne, mogą informować nas o potencjalnie interesujących nas produktach i usługach; pozwalają tworzyć anonimowe statystyki odwiedzalności serwisów Po wyłączeniu akceptacji plików cookie: Koszyk w jakimkolwiek sklepie nie pamięta przedmiotów, jakie zostały wybrane. Formularze logowania oraz pola haseł nie pamiętają danych. Strony internetowe nie zapamiętają preferencji co do rozdzielczości ekranu. Większość reklam jest niedopasowana do zainteresowań, zwyczajów czy preferencji. 7. Na bazie wybranych kryteriów wyszukiwania przetestować kilka (co najmniej 5 np: Google, DuckDuckGo, Bing, Yahoo, Ask) serwisów wyszukiwawczych. Skomentować poprawność zwracanych rezultatów, ilość trafień, szybkość działania. Porównać możliwości dodatkowe (np. wykorzystanie Google jako kalkulatora, przelicznika walut itp.).
Ilość wyników i czas wyszukiwania hasła weather krakow Google 11 000 000 wyników (0,43 s) 36 800 000 wyników (0,31 s) (dla hasła: pogoda kraków ) DuckDuckGo Brak informacji Bing wyniki: 4 760 000 Yahoo 197,000 results Ask Brak informacji Dodatki: Kalkulator: Google DuckDuckGo Bing
Yahoo Ask Pogoda Google DuckDuckGo Bing
Yahoo Ask Wyszukiwarki Google, Bing i Yahoo bezpośrednio po wyszukaniu wyświetlają informację o liczbie wyników. Ponadto Google informuje o czasie jego trwania. Najwięcej wyników dostarczył Google w liczbie 11 000 000. Duże znaczenie ma to, w jaki sposób formułujemy nasze zapytanie. Dla hasła weather krakow otrzymałam 11 000 000 wyników, a dla pogoda kraków ponad 3 razy więcej - 36 800 000. Wyszukiwarki: Google, DuckDuckGo i Bing posiadają dodatkowe funkcje jak kalkulator czy pogoda. 8. Skomentować celowość wykorzystania serwerów proxy. Serwer proxy (pośredniczący) oprogramowanie lub serwer z odpowiednim oprogramowaniem, które dokonuje pewnych operacji (zwykle nawiązuje połączenia) w imieniu użytkownika. Często utożsamiany z pośrednikiem HTTP (HTTP proxy). Użytkownik zleca pośrednikowi zadania za pomocą odpowiedniego klienta. W przypadku usług FTP i HTTP jest to klient FTP i przeglądarka internetowa. Obok tych popularnych rozwiązań znane są także inne, jak np. pośredniki (proxy) aplikacyjne, transferujące zapytania aplikacji, w istocie pełni ono funkcję oprogramowania pośredniczącego i realizuje trasowanie zależne od danych. Inne rodzaje pośredników mogą obsługiwać np. sieciowe protokoły transmisji głosu i innych usług. Zalety stosowania: dużo krótszy czas oczekiwania na załadowanie się strony WWW serwer proxy ma lepsze łącza, niż bezpośrednie korzystanie z docelowego serwera jeśli jest on wolny; zmniejszenie przepływu danych na dalekich dystansach (odciążenie słabszych łączy Internetu); jeśli ktoś przed nami pobierał te same strony lub inne zasoby przez dany serwer proxy, to nasz komputer ściągnie ją z proxy od razu; ukrywanie adresu IP komputera na którym pracujemy.
9. Na bazie materiałów znalezionych w internecie porównać działanie protokołów HTTP oraz HTTPS [RFC 2818]. Https, oznaczający połączenia szyfrowane, pozwala na przesłanie danych w taki sposób, że są one trudniejsze do przechwycenia, i co za tym idzie niemożliwe do zmiany jeszcze w trakcie ich transferowania. Z kolei przy wykorzystaniu połączenia nieszyfrowanego, a więc strony, której protokół to http, istnieje spore prawdopodobieństwo, że nasze dane dostaną się w niepowołane ręce. Dużą różnicę pomiędzy protokołami http a https stanowi wykorzystywany przez nie port domyślny. W przypadku protokołu https jest to port 80. Dla szyfrowanego https portem właściwym jest ten o numerze 443.