Wprowadzenie Optymalizacja robota Budowa robota Implementacja robota. Crawling the Web. Tomasz Tylenda. 27 lutego 2006 roku

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

Download "Wprowadzenie Optymalizacja robota Budowa robota Implementacja robota. Crawling the Web. Tomasz Tylenda. 27 lutego 2006 roku"

Transkrypt

1 27 lutego 2006 roku

2 Temat referatu Wprowadzenie O sieci Web Crawling Zajmiemy się zagadnieniem pobierania stron internetorych w celu ich dalszego przetwarzania. Program wykonujący to zadanie nazywa się robotem internetowym (ang. crawler, spider, robot, bot).

3 Sieć Web Wprowadzenie O sieci Web Crawling Sieć WWW (ang. World Wide Web) składa się z miliardów dokumentów napisanych w wielu różnych językach, mających zazwyczaj dlugość kilku tysięcy znaków, odnośników (ang. hyperlink) łączących dokumenty.

4 Sieć Web kilka liczb O sieci Web Crawling Internetu używa ponad miliard ludzi. Najczęściej używanie języki to angielski (32%), chiński (13%), japoński (8%), hiszpański (7%), niemiecki (6%) i francuski (4%). Archiwum stron internetowych działające od 1996 roku, zindeksowało 55 miliardów stron zajmujących 1000 TB. Co miesiąc pojawia się 20 TB nowych stron.

5 O sieci Web Crawling HTML i HTTP Strony w sieci Web są zazwyczaj napisane w języku HTML (ang. hypertext markup language). HTML opisuje strukturę i wygląd dokumentu. HTML pozwalana na umieszczanie odwołań do innych dokumentów za pomocą adresów URL (ang. uniform resource locator). Przykład <a href=" IIT Bombay Computer Science Departament</a>

6 HTML i HTTP (c.d.) Wprowadzenie O sieci Web Crawling W najprostszej postaci URL składa się z nazwy protokołu nazwy serwera scieżki do dokumentu Opcjonalnie można podać numer portu i parametry dla programu CGI. Do przesyłania dokumentów w HTMLu używa się protokołu HTTP. Używając narzędzia telnet, można zasymulować działanie przeglądarki.

7 O sieci Web Crawling HTML i HTTP (c.d.) Przykład $ telnet 80 Trying Connected to Escape character is ^]. GET / HTTP/1.1 Host: HTTP/ OK Date: Sun, 26 Feb :51:03 GMT Server: Apache/ (Unix) mod_python/3.1.4 Python/2.4 PHP/5.0.2 X-Powered-By: PHP/5.0.2

8 O sieci Web Crawling HTML i HTTP (c.d.) Przykład (c.d.) Transfer-Encoding: chunked Content-Type: text/html 1f55 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> (...) </html>

9 Podstawy crawlingu Wprowadzenie O sieci Web Crawling Struktura sieci doskonale nadaje się do przeglądania i przechodzenia ze strony na stronę, ale wyszukiwanie jest utrudnione. Zanim powstała sieć Web dokumenty (np. bibliogafie, streszczenia artykułów) były dostarczane do wyszukiwarki bezpośrednio np. na dyskach magnetycznych.

10 Podstawy crawlingu (c.d.) O sieci Web Crawling Aby robot mogł pobrać strony z sieci dostarcza się mu początkowy zbiór odnośników, robot przegląda strony i odnajduje nowe, nieznane strony. Adresy stron odnajdywane przez robota są zapisywane na dysku, aby zwolnić pamięć i urchronić się przed ich utratą. Praca robota nigdy się nie kończy ponieważ w sieci pojawiają się nowe strony stare strony są aktualizowane Oczywiście poza odnośnikami robot zapisuje także treść stron.

11 O sieci Web Crawling Wydajność robota wiadomości o sieci Połączenie sieciowe ma dwie podstawowe cechy: przepustowość określa ile bitów/bajtów można przesłać w ciągu sekundy, opóźnienie określa jak długo pakiet wędruje przez łącze, gdy pakiet podróżuje przez kilka serwerów może to być nawet kilka sekund.

12 O sieci Web Crawling Wydajność robota stos protokołów HTTP, gadu gadu, poczta, DNS,... DNS UDP prosty protokół bezpołączeniowy, wysyłamy pakiet i zapominamy o nim, nie ma gwarancji, że pakiet dotrze; TCP UDP TCP (ang. Transmission Control Protocol) zapewnia wirtualne IP Ethernet połączenie, mamy gwarancję, że pakiet dotrze, a przesłana informacja nie ulegnie zniekształceniu; połączenie TCP jest kosztowne. Zauważmy, że usługa DNS jest dostępna zarówno przez TCP jak i przez UDP.

13 Wydajność robota Wprowadzenie O sieci Web Crawling Firmy takie jak AltaVista, Northern Light, Inktomi, itd. publikują pewne dane dotyczące swojego oprogramowania, ale nie podają szczegółów. Najlepiej opisane są crawlery Mercator AltaVisty i pierwsza wersja Google Bota. Pobieranie stron wymaga: 1 pobrania z serwera DNS adresu IP serwera o danej nazwie, 2 utworzenia gniazda sieciowego i wysłania żądania do serwera, 3 odebrania strony. Dla małych stron dwa pierwsze etapy zajmują znaczną część czasu. Należy zauważyć, że na czas pobrania strony wpływa głównie czas przesłania pakietu, więc szybsze łącze nie pomoże.

14 Kiedy robot kończy pracę? O sieci Web Crawling Robot może zindeksować całą sieć typu intranet, ale w Internecie zadanie jest znacznie trudniejsze. Istnieją sposoby określenie liczby stron w Internecie, robot może kończyć pracę gdy pobrał określony procent stron. Innym oczywistym powodem do zakończenia pracy jest brak miejsca na dysku, lub przekroczenie limitów nałożonych na łacze sieciowe.

15 Co należy wziąć pod uwagę? Problemy DNS Równoległe pobieranie stron Pobieranie strony jest związane z opóźnieniem (nawet kilka sekund), więc należy pobierać wiele (setki, tysiące) stron na raz. Potrzeby jest wydajny serwer DNS, a nawet kilka. Wielowątkowość udostępniana przez system operacyjny nie nadaje się dla robota (zużywa za dużo zasobów), lepiej zrobić to samodzielnie. W sieci robot natknie się na pułapki, np. dziwne adresy URL, nieskończone strony, itd. trzeba sobie z tym radzić. Robot musi być grzeczny i nie przeciążać serwerów.

16 Czym jest DNS? Wprowadzenie Problemy DNS Równoległe pobieranie stron DNS (ang. Domain Name System) to rozproszona baza danych, która tłumaczy adresy symboliczn na adresy IP, tym skrótem określa się również używany protokół i serwery. Serwery DNS mają ograniczona wiedzę i zapytania często są kierowane do innych serwerów. Protokół DNS zazwyczaj korzysta z UDP (ponieważ starcza przesłanie po jednym pakiecie w każdą stronę), TCP używa się rzadko, ale jest możliwe wysyłanie wszystkich żądań przez TCP (np. system HP-UX). Serwery DNS utrzymują wyniki zapytań w pamięci podręcznej (lokalność odwołań).

17 Optymalizacja dostępu do DNS Problemy DNS Równoległe pobieranie stron Zwykły serwer DNS może działać na komputerze PC i zapewniać usługi dla setek stacji roboczych. Ale robot jest innych: generuje mnóstwo zapytań, żądania robota nie mają własności lokalności (z uwagi na możliwość przeciążenia serwera), więc pamięć podręczna DNSa się nie przydaje. Wniosek: robot musi posiadać własny DNS. Na serwer DNS starcza komputer z 256MB RAM i kilkoma GB miejsca na dysku, czasem lepiej mieć kilka takich. W przeciwieństwie do zwykłego serwera DNS, ten obsługujący robota nie musi się ściśle stosować do czasu wygaśnięcia adresu.

18 Problemy DNS Równoległe pobieranie stron Optymalizacja dostępu do DNS (c.d.) API do obsługi DNSa dostarczane przez system operacyjny (uniksowe gethostbyname) nie jest dobrym wyborem: nie obsługuje równoległych zapytań i nie pozwala na asynchroniczną obsługę DNS, nie ma sposobu, aby zapytania rozłożyć na kilka serwerów. Dzięki zastosowaniu własnego komponentu DNS w robocie Mercator (AltaVista), zredukowano czas tracony na odwołania z 87% do 25%.

19 Problemy DNS Równoległe pobieranie stron Optymalizacja dostępu do DNS (c.d.) prefetching Kolejnym sposobem przyspieszenia dostępu do DNS jest prefetching. Często zdarza się, że lokalna serwer nie zna pewnych adresów i musi o nie zapytać inny serwer DNS. Zapytanie może być przesłane przez wiele serwerów, co istotnie spowolni robota. Aby uniknąć takiej sytuacji, tuż po odebraniu nowej strony wybiera się adresy serwerów i wysyła się do lokalnego DNSa informację, że będziemy potrzebować adresów IP tych serwerów. Dzieki temu lokalny DNS ma czas na ewentualne zapytanie innych serwerów.

20 Problemy DNS Równoległe pobieranie stron Równoległe pobieranie stron możliwości Robot musi pobierać setki lub nawet tysiące stron na sekunde. Można wybrać jeden z dwóch mechanizmów, aby zrealizowac to zadanie: wielowątkowość (ang. multithreading), nieblokujące gniazda (ang. nonblocking sockets) i obsługa zdarzeń. Zauważmy też, że wydajność robota jest ograniczona przez szybkość pamięci dyskowej i sieci, więc maszyny wieloprocesorowe nie są potrzebne.

21 Wielowątkowość Wprowadzenie Problemy DNS Równoległe pobieranie stron Sposób implementacji: Używa się wątków udostępnianych przez system operacyjny (np. pthreads). Wątki tworzą gniazda sieciowe i pobierają strony używając blokujących wywołań systemowych. Nie tworzy się wątku dla każdej strony, ale używa się puli wątków, działających w pętli. Czasem, ze względu na bezpieczeństwo, używa się procesów zamias wątków.

22 Wielowątkowość problemy Problemy DNS Równoległe pobieranie stron Problemy wynikające z uzycia wątków: Synchronizacja dostępu do dzielonych struktur danych, takich jak kolejka stron do odwiedzenia, jest kosztowna. Wątki powodują skakanie po dysku przez co obniża się wydajność wejścia-wyjścia.

23 Nieblokujące gniazda Wprowadzenie Problemy DNS Równoległe pobieranie stron Funkcje odpowiedzialne komunikację przez sieć mogą być używane w sposób nie blokujący pracy programu, zamiast czekać na zakończenie operacji można zlecić jej wykonanie i za jakiś czas zapytać czy już się skończyła (wywołanie systemowe select lub poll). Robot używający gniazd nieblokujących posiada zbiór gniazd sieciowych wraz ze strukturą opisującą stan każdego gniazda (etap pobierania) i odpowiednią fukcją wybiera takie, w którym zakończyła się zlecona operacja.

24 Nieblokujące gniazda zalety Problemy DNS Równoległe pobieranie stron Zalety stosowania nieblokujących gniazd: Unika się rywalizacji o zasoby i wywłaszczania wątków. Dostęp do dysku nie jest chaotyczny.

25 Zarządzanie odnośnikami Pułapki czyhające na roboty Polityka działania robota Składowanie tekstu Odświeżanie stron Ekstrakcja i normalizacja odnośników Jedna strona może mieć wiele adresów, ale robot nie powinien pobierać jej wielokrotnie. Aby temu zapobiec stosuje się normalizację adresów.

26 Adres IP, a nazwa hosta Zarządzanie odnośnikami Pułapki czyhające na roboty Polityka działania robota Składowanie tekstu Odświeżanie stron Relacja między IP, a nazwą hosta jest typu wiele-do-wielu. Przyczyny: Równoważenie obciążenia (ang. load balancing) żądania mogą być przekierowywane na różne komputery ze względu na wydajność. Host wirtualne np. zamiast adresów wolimy mieć adresy użytkownik.serwer.pl DNS wraz adresem IP zwraca nazwę kanoniczną hosta. Może być ona przydatna do normalizacji linków.

27 URL Wprowadzenie Zarządzanie odnośnikami Pułapki czyhające na roboty Polityka działania robota Składowanie tekstu Odświeżanie stron URL może być: bezwzględny (ang. absolute) np. względny (ang. relative) np. /~gst/ lub gst.jpg URL może zawierać także numer portu, na którym działa serwer HTTP, domyśnie jest to numer 80 i jest pomijany. Pełny URL to np. Scieżka może nie być znormalizowana, np. /books/../papers//sig.ps, po normalizacji otrzymujemy /papers/sig.ps.

28 URL (c.d.) Wprowadzenie Zarządzanie odnośnikami Pułapki czyhające na roboty Polityka działania robota Składowanie tekstu Odświeżanie stron Kanoniczny URL jest tworzony następująco: 1 używa się nazwy protokołu 2 dodawana jest kanoniczna nazwa hosta 3 dodawany jest numer portu, jeśli jest niezbędny 4 dodawana jest znormalizowana ścieżka

29 Informacje dla robotów Zarządzanie odnośnikami Pułapki czyhające na roboty Polityka działania robota Składowanie tekstu Odświeżanie stron Serwer może komunikowac się z robotami poprzez plik robots.txt umieszczony w katalogu głównym. Plik ten jest przeznaczony tylko dla automatów (nie dla zwykłych przeglądarek). Zawiera on informacje, których stron robot nie powinien pobierać. Więcej o plikach robots.txt można dowiedzieć się ze strony Komunikacja z robotem powinna być możliwa w dwie strony dlatego, gdy piszemy własnego robota powinniśmy umieścić swój w polu User-agent żądania http.

30 Informacje dla robotów przykład Zarządzanie odnośnikami Pułapki czyhające na roboty Polityka działania robota Składowanie tekstu Odświeżanie stron Przykład User-agent: webcrawler Disallow: User-agent: lycra Disallow: / User-agent: * Disallow: /tmp Disallow: /logs

31 Zarządzanie odnośnikami Pułapki czyhające na roboty Polityka działania robota Składowanie tekstu Odświeżanie stron Sprawdzanie czy strona została odwiedzona Sprawdzanie czy strona zostala odwiedzona musi być szybkie. Można przehaszować kanoniczne adresy URL (np. funkcją MD5), i sprawdzać kody. Pojawia się problem: 8B/adres * 10 9 adresów = 8GB + struktura danych. Dodatkowo funkcja haszująca rozrzuca adresy równomiernie po całej dziedzinie, więc tracimy lokalność odwołań i każde pytanie o stronę będzie nas kosztować odczyt z dysku. Rozwiązaniem powyższego problemu jest dwupozimowe haszowanie, część bitów kodu zależy od nazwy hosta, a część od ścieżki (np ). Kody możemy przechowywać w B-drzewie zapisanym na dystku, a potrzebne strony możemy trzymać w pamięci.

32 Pułapki Wprowadzenie Zarządzanie odnośnikami Pułapki czyhające na roboty Polityka działania robota Składowanie tekstu Odświeżanie stron Na robota czekają rózne pułapki, przypadkowe i celowe: źle uformowane adresy URL skrypty CGI generujące nieskończone strony przykład z książki: adres URL zawierał 68KB znaków NULL różne inne Dobrym sposobem obrony przed takimi problemami jest sporządzanie statystyk pracy robota, jeśli poświęca on za wiele pracy jednej stronie to wiemy, że mamy problem. Można używać strażników, aby robot nie pobierał zawartości generowanej przez CGI oraz plików które nie zawierają tekstu.

33 Zarządzanie odnośnikami Pułapki czyhające na roboty Polityka działania robota Składowanie tekstu Odświeżanie stron Unikanie wielokrotnego analizowania stron Załóżmy, że strona zawierająca link do strony v jest dostępna jako u 1 i u 2 : strona jest analizowana dwukrotnie, co zajmuje troche czasu, co gorsze wydaje się nam, że odnośniki do strony v są na dwóch stronach, a nie na jednej. Taka systuacja może się zdarzyć gdy tworzone są kopie lustrzane strony (ang. mirroring).

34 Zarządzanie odnośnikami Pułapki czyhające na roboty Polityka działania robota Składowanie tekstu Odświeżanie stron Unikanie wielokrotnego analizowania stron (c.d.) Aby uniknąć powyższych problemów możemy przechowywać skróty MD5 (albo jakieś podobne) stron i sprawdzać czy znamy już daną stronę. Poważniejszym problemem są strony które rożnią się tylko nieznacznie, np. datą utworznie kopii, em administratora, itp., wtedy zwykła funkcja haszująca nie pomoże, ale znane są sposoby jak radzić sobie także z tym problemem.

35 Monitorowanie pracy robota Zarządzanie odnośnikami Pułapki czyhające na roboty Polityka działania robota Składowanie tekstu Odświeżanie stron Dwie istotne części robota to monitor obciążenia (ang. load monitor) i zarządca wątków (ang. thread manager) pobierających strony. Monitor obciążenie kontroluje wydajność połączenia z Internetem (przepustowość i opóźnienia) liczbę otwartych połączeń (operator robota lub ISP określa maksymalną liczbę) Powyższe statystyki służą do planowania pracy systemu.

36 Ataki DoS Wprowadzenie Zarządzanie odnośnikami Pułapki czyhające na roboty Polityka działania robota Składowanie tekstu Odświeżanie stron Serwery internetowe są narażone na ataki typu DoS (ang. denial of service), aby się przed nimi bronić ustawia się limit połączeń w jednostce czasu z jednego adresu IP. Robot może łatwo przeciążyć serwer, aby tego uniknąć utrzymywana jest kolejka połączeń do danego IP. Pomaga to również uniknąć omawianych wcześniej pułapek, np. nieskończonych stron. Protokół HTTP/1.1 umożliwia też uzywanie jednego połączenia do obsługi wielu żądań, to kolejny sposób na zmiejszeni zużycia zasobów.

37 Składowanie tekstu Wprowadzenie Zarządzanie odnośnikami Pułapki czyhające na roboty Polityka działania robota Składowanie tekstu Odświeżanie stron Praca robota kończy się zazwyczaj na zapisaniu strony na dysku. Inne części wyszukiwarki zajmują się analizowaniem zawartości tych stron, analizowaniem grafu odnośników i dostarczaniem użytkownikowi skrótów stron. Strony składają się z: metadanych typ zawartości, data utworzenia, długości, itd., zawartości.

38 Składowanie tekstu (c.d.) Zarządzanie odnośnikami Pułapki czyhające na roboty Polityka działania robota Składowanie tekstu Odświeżanie stron Indeks stron może być uporządkowaną listą słów wraz ze wskaźnikami na strony na których występują. Słowa na liście są znormalizowane, tj. usunięte są znaki przestankowe, występują tylko małe litery, usuwane są spójniki i inne nieznaczące wyrazy. Najprostsze wyszukiwanie może polegać na binarnym przeszukiwaniu listy słów. Bardziej skomplikowane zadania takie jak wyszukiwanie słów wpisanych z błędami, czy wyrażeń regularnych wymaga czasu liniowego (czyli trwa długo, np. pół minuty).

39 Składowanie tekstu (c.d.) Zarządzanie odnośnikami Pułapki czyhające na roboty Polityka działania robota Składowanie tekstu Odświeżanie stron Jak składować tekst? relacyjne bazy danych służą do innych zastosowań typowa strona ma około 10KB, po skompresowaniu 2 4KB Zazwyczaj stosuje się jakiś komponent, który umożliwia dodawanie nowych stron oraz równoległa pracę innych części wyszukiwarki (indeksowanie stron).

40 Składowanie tekstu (c.d.) Zarządzanie odnośnikami Pułapki czyhające na roboty Polityka działania robota Składowanie tekstu Odświeżanie stron Do składowania tekstu często używa się Berleley DB: przechowuje bazę danych w pojedynczym pliku dane mogą być składowane w B-drzewie lub w tablicy haszującej (uporządkowanych po URL), aktualizacja danych powoduje straty 15-25% na fragmentację, można też użyć Berkeley BD jako logu do którego dopisujemy nowe strony Duże systemy mogą składować dane na kilku serwerach przeznaczonych do tego celu.

41 Odświeżanie stron Wprowadzenie Zarządzanie odnośnikami Pułapki czyhające na roboty Polityka działania robota Składowanie tekstu Odświeżanie stron Chcemy aby wiedza wyszukiwarki była aktualna. Obserwacje wskazują, że 2-9% adresów zwróconych przez wyszukiwarkę jest nieprawidłowych, natomiast wiek stron to od jednego dnia do dwóch miesięcy. Nowe strony pojawiają się w wyszukiwarkach w ciągu kilku tygodni. W najprostszym przypadku po poobraniu wszystkich stron z internetu (trwa to kilka tygodni), zaczynamy od nowa. Ale to nie jest dobry pomysł: niektóre strony zmieniają się rzadko, inne strony zmieniaja się codziennie, albo nawet częściej.

42 Odświeżanie stron (c.d.) Zarządzanie odnośnikami Pułapki czyhające na roboty Polityka działania robota Składowanie tekstu Odświeżanie stron możemy wykorzystać możliwości protokołu HTTP i zapytać serwer czy strona się zmieniła, ale to nie pomoże bo i tak zestawienie połączenia zajmie mnóstwo czasu. Czasem (bardzo rzadko) wiemy z nagłówka http Expires kiedy strona się zmieni. Możemy na podstawie poprzednich zmian przewidzieć czy strona znów się zmieni. Problem: jeśli oglądamy stronę co tydzień to nie potrafimy stwierdzić, że zmienia się ona codziennie. Większość wyszukiwarek w trakcie jednego pełnego cyklu, wielokrotnie sprawdza strony które zmieniają się często.

43 Schemat robota Wprowadzenie Schemat w3c-libwww Przykład implementacji Serwer DNS DNS prefetch klient DNS indeksowanie Tekst Ekstrakcja odnosnikow kolejka do serwera pobierz IP polaczenie dane ispageknown? robots.txt pulapki Dane monitor obciazenia i menedzer watkow pula adresow robota isurlvisited? zatwierdzenie URL

44 Biblioteka w3c-libwww Schemat w3c-libwww Przykład implementacji World Wide Web Consortium (W3C) opublikowało implementację klienta http w postaci biblioteki w3c-libwww. API tej biblioteki jest dość skomplikowane, ale nadaje się ona do napisania robota o dobrej wydajności. Biblioteka w3c-libwww jest napisna w C i działa pod większością systemów operacyjnych. Dalej przedstawiona zostanie prosta klasa w C++, która przybliża sposób działania w3c-libwww.

45 Schemat w3c-libwww Przykład implementacji Przykład w C++ Klasa Crawler pobiera strony z podanych adresów URL. Przykład class Crawler { void setdnstimeout(int miliseconds); void sethttptimeout(int miliseconds); void fetchpush(const string& url);

46 Przykład w C++ (c.d.) Schemat w3c-libwww Przykład implementacji Przykład (c.d.) } //ponizsza funkcje nadpisujemy virtual void fetchdone( const string& url, //informacje o ewentualnych bledach const ReturnCode retcode, const int httpstatus, //np. Content-type = text/html const hash_map<string, string>& mimeheader, const char* pagebody, const size_t pagesize );

47 Przykład w C++ (c.d.) Schemat w3c-libwww Przykład implementacji Klasa DNS komunikuje się z serwerem DNS, Fetch reprezentuje żądanie skierowane do DNS. Przykład (c.d.) class DNS { list<fetch*> waitfordns; //... }

48 Przykład w C++ (c.d.) Schemat w3c-libwww Przykład implementacji Klasa Crawler zawiera następujące struktury danych: kolejkę żądań do serwera DNS, kolejkę zadań oczekujących na utworzenie połączenia http, gniazda do obsługi http.

49 Przykład w C++ (c.d.) Schemat w3c-libwww Przykład implementacji Główną funkcją programu jest Crawler::start(). Robot działa w pętli sterowanej zdarzeniami. Żądania są przetwarzane następująco: zadanie trafia do kolejki waitfordns i czeka na otrzymanie adresu IP serwera; po otrzymaniu IP serwera zadanie trafia do bufora waitforhttp, gdzie czeka na utworzenie gniazda sieciowego i dołączenie do httpsocket;

50 Przykład w C++ (c.d.) Schemat w3c-libwww Przykład implementacji przez gniazdo jest wysyłane nieblokujące żądanie http, robot oczekuje na odpowiedź; gdy nadejdzie odpowiedź jest wywoływana metoda fetchdone, która musi być nadpisana przez klienta klasy Crawler; wewnątrz tej metody odbywa się przetwarzanie treści strony, tj. zapisywanie tekstu strony, ekstrakcja odnośników i zgłaszanie kolejnych żądan do klasy Crawler (metodą fetchpush()).

51 Schemat w3c-libwww Przykład implementacji Koniec

World Wide Web? rkijanka

World Wide Web? rkijanka World Wide Web? rkijanka World Wide Web? globalny, interaktywny, dynamiczny, wieloplatformowy, rozproszony, graficzny, hipertekstowy - system informacyjny, działający na bazie Internetu. 1.Sieć WWW jest

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

156.17.4.13. Adres IP

156.17.4.13. Adres IP Adres IP 156.17.4.13. Adres komputera w sieci Internet. Każdy komputer przyłączony do sieci ma inny adres IP. Adres ten jest liczbą, która w postaci binarnej zajmuje 4 bajty, czyli 32 bity. W postaci dziesiętnej

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

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

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

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

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

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

Badanie struktury sieci WWW

Badanie struktury sieci WWW Eksploracja zasobów internetowych Wykład 1 Badanie struktury sieci WWW mgr inż. Maciej Kopczyński Białystok 214 Rys historyczny Idea sieci Web stworzona została w 1989 przez Tima BernersaLee z CERN jako

Bardziej szczegółowo

Bazy danych 2. Wykład 1

Bazy danych 2. Wykład 1 Bazy danych 2 Wykład 1 Sprawy organizacyjne Materiały i listy zadań zamieszczane będą na stronie www.math.uni.opole.pl/~ajasi E-mail: standardowy ajasi@math.uni.opole.pl Sprawy organizacyjne Program wykładu

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

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

Autorytatywne serwery DNS w technologii Anycast + IPv6 DNS NOVA. Dlaczego DNS jest tak ważny?

Autorytatywne serwery DNS w technologii Anycast + IPv6 DNS NOVA. Dlaczego DNS jest tak ważny? Autorytatywne serwery DNS w technologii Anycast + IPv6 DNS NOVA Dlaczego DNS jest tak ważny? DNS - System Nazw Domenowych to globalnie rozmieszczona usługa Internetowa. Zapewnia tłumaczenie nazw domen

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

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

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

Informatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java

Informatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java Informatyka I Standard JDBC Programowanie aplikacji bazodanowych w języku Java dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2017 Standard JDBC Java DataBase Connectivity uniwersalny

Bardziej szczegółowo

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

Mechanizmy pracy równoległej. Jarosław Kuchta Mechanizmy pracy równoległej Jarosław Kuchta Zagadnienia Algorytmy wzajemnego wykluczania algorytm Dekkera Mechanizmy niskopoziomowe przerwania mechanizmy ochrony pamięci instrukcje specjalne Mechanizmy

Bardziej szczegółowo

Tomasz Boiński: 1. Pozycjonowanie stron i zastosowanie mod_rewrite

Tomasz Boiński: 1. Pozycjonowanie stron i zastosowanie mod_rewrite Tomasz Boiński: 1 Pozycjonowanie stron i zastosowanie mod_rewrite Pozycjonowanie stron Promocja strony odbywa się poprzez umiejscowienie jej jak najwyżej w wynikach wyszukiwania Wyszukiwarki indeksują

Bardziej szczegółowo

Co to jest NODE.JS? Nowoczesne środowisko programistyczne

Co to jest NODE.JS? Nowoczesne środowisko programistyczne Node.js Co to jest NODE.JS? Nowoczesne środowisko programistyczne Środowisko programistyczne w sensie zestawu gotowych klas i metod których można używać do przygotowania własnych skalowalnych i wydajnych

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

KATEGORIA OBSZAR WIEDZY

KATEGORIA OBSZAR WIEDZY Moduł 7 - Usługi w sieciach informatycznych - jest podzielony na dwie części. Pierwsza część - Informacja - wymaga od zdającego zrozumienia podstawowych zasad i terminów związanych z wykorzystaniem Internetu

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

Win Admin Replikator Instrukcja Obsługi

Win Admin Replikator Instrukcja Obsługi Win Admin Replikator Instrukcja Obsługi Monitoring Kopie danych (backup) E-mail Harmonogram lokalne i zewnętrzne repozytorium Logi Pamięć Procesor HDD Administracja sprzętem i oprogramowaniem (automatyzacja

Bardziej szczegółowo

5. Model komunikujących się procesów, komunikaty

5. Model komunikujących się procesów, komunikaty Jędrzej Ułasiewicz str. 1 5. Model komunikujących się procesów, komunikaty Obecnie stosuje się następujące modele przetwarzania: Model procesów i komunikatów Model procesów komunikujących się poprzez pamięć

Bardziej szczegółowo

Laboratorium - Obserwacja procesu tłumaczenia nazw DNS

Laboratorium - Obserwacja procesu tłumaczenia nazw DNS Laboratorium - Obserwacja procesu tłumaczenia nazw DNS Cele Część 1: Obserwacja konwersji DNS nazwy URL na adres IP. Część 2: Obserwacja procesu przeszukiwania nazw DNS, przy pomocy polecenia Nslookup

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

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

Laboratorium - Używanie programu Wireshark do obserwacji mechanizmu uzgodnienia trójetapowego TCP

Laboratorium - Używanie programu Wireshark do obserwacji mechanizmu uzgodnienia trójetapowego TCP Laboratorium - Używanie programu Wireshark do obserwacji mechanizmu uzgodnienia trójetapowego Topologia Cele Część 1: Przygotowanie Wireshark do przechwytywania pakietów Wybór odpowiedniego interfejsu

Bardziej szczegółowo

Instrukcja do panelu administracyjnego. do zarządzania kontem FTP WebAs. www.poczta.greenlemon.pl

Instrukcja do panelu administracyjnego. do zarządzania kontem FTP WebAs. www.poczta.greenlemon.pl Instrukcja do panelu administracyjnego do zarządzania kontem FTP WebAs www.poczta.greenlemon.pl Opracowanie: Agencja Mediów Interaktywnych GREEN LEMON Spis treści 1.Wstęp 2.Konfiguracja 3.Konto FTP 4.Domeny

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

Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi

Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi 1 Rozdział 1 Wprowadzenie do PHP i MySQL Opis: W tym rozdziale kursanci poznają szczegółową charakterystykę

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

Narzędzia diagnostyczne protokołów TCP/IP

Narzędzia diagnostyczne protokołów TCP/IP Narzędzia diagnostyczne protokołów TCP/IP Polecenie ipconfig pozwala sprawdzić adresy przypisane do poszczególnych interfejsów. Pomaga w wykrywaniu błędów w konfiguracji protokołu IP Podstawowe parametry

Bardziej szczegółowo

Trojan bankowy Emotet w wersji DGA

Trojan bankowy Emotet w wersji DGA Trojan bankowy Emotet w wersji DGA Warszawa 17/11/2014 CERT Orange Polska Strona 1 z 7 Trojan bankowy Emotet został zauważony kilka miesięcy temu. Od tej pory zdaje się być cyklicznie wykorzystywany w

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

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

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

Tworzenie i obsługa wirtualnego laboratorium komputerowego

Tworzenie i obsługa wirtualnego laboratorium komputerowego Uniwersytet Mikołaja Kopernika Wydział Fizyki, Astronomii i Informatyki Stosowanej Michał Ochociński nr albumu: 236401 Praca magisterska na kierunku informatyka stosowana Tworzenie i obsługa wirtualnego

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

Informatyka I. Programowanie aplikacji bazodanowych w języku Java. Standard JDBC.

Informatyka I. Programowanie aplikacji bazodanowych w języku Java. Standard JDBC. Informatyka I Programowanie aplikacji bazodanowych w języku Java. Standard JDBC. dr hab. inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2019 Standard JDBC Java DataBase Connectivity

Bardziej szczegółowo

instrukcja INSTALACJI www.piersa.pl APi_proxy

instrukcja INSTALACJI www.piersa.pl APi_proxy instrukcja INSTALACJI 1 1. Instalacja Proces instalacji jest prosty wgrywamy pliki na serwer nadajemy prawa chmod 777 lub 755 dla katalogu w którym znajduje się aplikacja przeważnie będzie to katalog public_html

Bardziej szczegółowo

Działanie komputera i sieci komputerowej.

Działanie komputera i sieci komputerowej. Działanie komputera i sieci komputerowej. Gdy włączymy komputer wykonuje on kilka czynności, niezbędnych do rozpoczęcia właściwej pracy. Gdy włączamy komputer 1. Włączenie zasilania 2. Uruchamia

Bardziej szczegółowo

Internet, jako ocean informacji. Technologia Informacyjna Lekcja 2

Internet, jako ocean informacji. Technologia Informacyjna Lekcja 2 Internet, jako ocean informacji Technologia Informacyjna Lekcja 2 Internet INTERNET jest rozległą siecią połączeń, między ogromną liczbą mniejszych sieci komputerowych na całym świecie. Jest wszechstronnym

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

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

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

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

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) Najgroźniejsze ataki na serwer WWW Najgroźniejsze ataki na serwer WWW Cross-site scripting (XSS) SQL injection Denial

Bardziej szczegółowo

Technologie internetowe

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

Bardziej szczegółowo

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

Instalacja SQL Server Express. Logowanie na stronie Microsoftu Instalacja SQL Server Express Logowanie na stronie Microsoftu Wybór wersji do pobrania Pobieranie startuje, przechodzimy do strony z poradami. Wypakowujemy pobrany plik. Otwiera się okno instalacji. Wybieramy

Bardziej szczegółowo

Seminarium Bazy Danych I. BigTable. Piotr Świgoń Uniwersytet Warszawski

Seminarium Bazy Danych I. BigTable. Piotr Świgoń Uniwersytet Warszawski Seminarium Bazy Danych I BigTable Piotr Świgoń Uniwersytet Warszawski Rzędy wielkości Miliardy URL'i i linków, wiele wersji stron Setki milionów użytkowników Tysiące zapytań na sekundę 2.7 3.3 GB rozmiar

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

SERWER AKTUALIZACJI UpServ

SERWER AKTUALIZACJI UpServ upserv_pl 02/14 SERWER AKTUALIZACJI UpServ SATEL sp. z o.o. ul. Schuberta 79 80-172 Gdańsk POLSKA tel. 58 320 94 00 serwis 58 320 94 30 dz. techn. 58 320 94 20; 604 166 075 info@satel.pl www.satel.pl SATEL

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

Wprowadzenie do programowania www

Wprowadzenie do programowania www Wprowadzenie do programowania www Niezbędne elementy klient kontra programista Internet Przeglądarka Wyszukiwarka Szybki Internet Hosting Domena Program graficzny (projekt) Klient FTP Edytor HTML CMS Przeglądarki

Bardziej szczegółowo

Tematyka i rozwiązania metodyczne kolejnych zajęć lekcyjnych wraz z ćwiczeniami.

Tematyka i rozwiązania metodyczne kolejnych zajęć lekcyjnych wraz z ćwiczeniami. Tematyka i rozwiązania metodyczne kolejnych zajęć lekcyjnych wraz z ćwiczeniami. Zagadnienie tematyczne (blok tematyczny): Internet i sieci (Podr.cz. II, str.37-69) Podstawa programowa: Podstawowe zasady

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

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

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

Polityka prywatności Spółdzielni Mieszkaniowej Słoneczny Stok

Polityka prywatności Spółdzielni Mieszkaniowej Słoneczny Stok Polityka prywatności Spółdzielni Mieszkaniowej Słoneczny Stok Spółdzielnia Mieszkaniowa Słoneczny Stok szanuje prawo do prywatności Użytkowników serwisu sm-slonecznystok.pl. W szczególności dba o ochronę

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

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

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

I. Informacje ogólne. Jednym z takich systemów jest Mambo.

I. Informacje ogólne. Jednym z takich systemów jest Mambo. MAMBO (CMS) I. Informacje ogólne CMS, Content Management System ("system zarządzania treścią") jest to jedna lub zestaw aplikacji internetowych pozwalających na łatwe utworzenie oraz późniejszą aktualizację

Bardziej szczegółowo

Aplikacja Sieciowa wątki po stronie klienta

Aplikacja Sieciowa wątki po stronie klienta Aplikacja Sieciowa wątki po stronie klienta Na ostatnich zajęciach zajmowaliśmy się komunikacją pomiędzy klientem a serwerem. Wynikiem naszej pracy był program klienta, który za pomocą serwera mógł się

Bardziej szczegółowo

Sieci Komputerowe i Bazy Danych

Sieci Komputerowe i Bazy Danych 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ć

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

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Język programowania prosty bezpieczny zorientowany obiektowo wielowątkowy rozproszony przenaszalny interpretowany dynamiczny wydajny Platforma

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

Popularne dostępne rozwiązania. Najpopularniejsze środowiska programistyczne:

Popularne dostępne rozwiązania. Najpopularniejsze środowiska programistyczne: Popularne dostępne rozwiązania Najpopularniejsze środowiska programistyczne: Popularne dostępne rozwiązania Najpopularniejsze środowiska programistyczne: oraz systemy CMS (Content Menager System): Dlaczego

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: 9 Temat ćwiczenia: Aplikacje klient-serwer. 1. Wstęp teoretyczny.

Bardziej szczegółowo

Programowanie współbieżne Wykład 2. Iwona Kochańska

Programowanie współbieżne Wykład 2. Iwona Kochańska Programowanie współbieżne Wykład 2 Iwona Kochańska Miary skalowalności algorytmu równoległego Przyspieszenie Stały rozmiar danych N T(1) - czas obliczeń dla najlepszego algorytmu sekwencyjnego T(p) - czas

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

OMNITRACKER Wersja testowa. Szybki przewodnik instalacji

OMNITRACKER Wersja testowa. Szybki przewodnik instalacji OMNITRACKER Wersja testowa Szybki przewodnik instalacji 1 Krok 1:Rejestracja pobrania (jeżeli nie wykonana dotychczas) Proszę dokonać rejestracji na stronieomninet (www.omnitracker.com) pod Contact. Po

Bardziej szczegółowo

ECDL/ICDL Web Editing Moduł S6 Sylabus - wersja 2.0

ECDL/ICDL Web Editing Moduł S6 Sylabus - wersja 2.0 ECDL/ICDL Web Editing Moduł S6 Sylabus - wersja 2.0 Przeznaczenie Sylabusa Dokument ten zawiera szczegółowy Sylabus dla modułu ECDL/ICDL Web Editing. Sylabus opisuje zakres wiedzy i umiejętności, jakie

Bardziej szczegółowo

Komunikacja za pomocą potoków. Tomasz Borzyszkowski

Komunikacja za pomocą potoków. Tomasz Borzyszkowski Komunikacja za pomocą potoków Tomasz Borzyszkowski Wstęp Sygnały, omówione wcześniej, są użyteczne w sytuacjach błędnych lub innych wyjątkowych stanach programu, jednak nie nadają się do przekazywania

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

Zaawansowane Techniki WWW (HTML, CSS i NODE.JS)

Zaawansowane Techniki WWW (HTML, CSS i NODE.JS) Zaawansowane Techniki WWW (HTML, CSS i NODE.JS) Dr inż. Marcin Zieliński Środa 15:30-17:00 sala: A-1-04 WYKŁAD 8 Wykład dla kierunku: Informatyka Stosowana II rok Rok akademicki: 2014/2015 - semestr zimowy

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

OMNITRACKER Wersja testowa. Szybki przewodnik instalacji

OMNITRACKER Wersja testowa. Szybki przewodnik instalacji OMNITRACKER Wersja testowa Szybki przewodnik instalacji 1 Krok 1:Rejestracja pobrania (jeżeli nie wykonana dotychczas) Proszę dokonać rejestracji na stronieomninet (www.omnitracker.com) pod Contact. Po

Bardziej szczegółowo

Ataki na serwery Domain Name System (DNS Cache Poisoning)

Ataki na serwery Domain Name System (DNS Cache Poisoning) Ataki na serwery Domain Name System (DNS Cache Poisoning) Jacek Gawrych semestr 9 Teleinformatyka i Zarządzanie w Telekomunikacji jgawrych@elka.pw.edu.pl Plan prezentacji Pytania Phishing -> Pharming Phishing

Bardziej szczegółowo

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone Typy przetwarzania Przetwarzanie zcentralizowane Systemy typu mainfame Przetwarzanie rozproszone Architektura klient serwer Architektura jednowarstwowa Architektura dwuwarstwowa Architektura trójwarstwowa

Bardziej szczegółowo

Programowanie Komponentowe WebAPI

Programowanie Komponentowe WebAPI Programowanie Komponentowe WebAPI dr inż. Ireneusz Szcześniak jesień 2016 roku WebAPI - interfejs webowy WebAPI to interfejs aplikacji (usługi, komponentu, serwisu) dostępnej najczęściej przez Internet,

Bardziej szczegółowo

Autor: inż. Wojciech Zatorski Opiekun pracy: dr inż. Krzysztof Małecki

Autor: inż. Wojciech Zatorski Opiekun pracy: dr inż. Krzysztof Małecki Autor: inż. Wojciech Zatorski Opiekun pracy: dr inż. Krzysztof Małecki Cel Konfiguracja i testowanie serwera WWW Apache w celu optymalizacji wydajności. 2/25 Zakres Konfigurowanie serwera Apache jako wydajnego

Bardziej szczegółowo

OPTYMALIZACJA SERWISÓW INTERNETOWYCH >>>WIĘCEJ<<<

OPTYMALIZACJA SERWISÓW INTERNETOWYCH >>>WIĘCEJ<<< INTERNETOWYCH. Wszystko O Pozycjonowaniu I Marketingu. >>>POZYCJONOWANIE STRON BYDGOSZCZ OPTYMALIZACJA SERWISÓW INTERNETOWYCH >>>WIĘCEJ

Bardziej szczegółowo

Obiektowy PHP. Czym jest obiekt? Definicja klasy. Składowe klasy pola i metody

Obiektowy PHP. Czym jest obiekt? Definicja klasy. Składowe klasy pola i metody Obiektowy PHP Czym jest obiekt? W programowaniu obiektem można nazwać każdy abstrakcyjny byt, który programista utworzy w pamięci komputera. Jeszcze bardziej upraszczając to zagadnienie, można powiedzieć,

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

UMOWY CYWILNOPRAWNE Instalacja, rejestracja i konfiguracja programu

UMOWY CYWILNOPRAWNE Instalacja, rejestracja i konfiguracja programu UMOWY CYWILNOPRAWNE Instalacja, rejestracja i konfiguracja programu 1. Wersje i warianty programu Nr wersji programu składa się z trzech liczb oddzielonych kropkami: człon pierwszy oznacza główny nr wersji

Bardziej szczegółowo

Narzędzia do diagnozowania sieci w systemie Windows

Narzędzia do diagnozowania sieci w systemie Windows Narzędzia do diagnozowania sieci w systemie Windows Polecenie ping Polecenie wysyła komunikaty ICMP Echo Request w celu weryfikacji poprawności konfiguracji protokołu TCP/IP oraz dostępności odległego

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

Protokół sieciowy Protokół

Protokół sieciowy Protokół PROTOKOŁY SIECIOWE Protokół sieciowy Protokół jest to zbiór procedur oraz reguł rządzących komunikacją, między co najmniej dwoma urządzeniami sieciowymi. Istnieją różne protokoły, lecz nawiązujące w danym

Bardziej szczegółowo

Analiza malware Remote Administration Tool (RAT) DarkComet BeSTi@

Analiza malware Remote Administration Tool (RAT) DarkComet BeSTi@ Analiza malware Remote Administration Tool (RAT) DarkComet BeSTi@ 24 marzec, 2014 Wstęp Tydzień temu do wielu skrzynek pocztowych w Polsce trafił email z linkiem do pliku podszywającego się pod nową aktualizację

Bardziej szczegółowo

Zadanie1: Odszukaj w serwisie internetowym Wikipedii informacje na temat usługi DHCP.

Zadanie1: Odszukaj w serwisie internetowym Wikipedii informacje na temat usługi DHCP. T: Konfiguracja usługi DHCP w systemie Windows. Zadanie1: Odszukaj w serwisie internetowym Wikipedii informacje na temat usługi DHCP. DHCP (ang. Dynamic Host Configuration Protocol) protokół komunikacyjny

Bardziej szczegółowo

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

RPC. Zdalne wywoływanie procedur (ang. Remote Procedure Calls ) III RPC Zdalne wywoływanie procedur (ang. Remote Procedure Calls ) 1. Koncepcja Aplikacja wywołanie procedury parametry wyniki wykonanie procedury wynik komputer klienta komputer serwera Zaletą takiego

Bardziej szczegółowo

Laboratorium nr 4 - Badanie protokołów WWW

Laboratorium nr 4 - Badanie protokołów WWW Data ćwiczenia: 29.03.2017 Prowadzący: dr inż. Piotr Kurowski Przedmiot: Sieci komputerowe i bazy danych Wykonawca: Klaudia Gurbiel Kierunek: Inżynieria mechatroniczna Rok III, Semestr VI Laboratorium

Bardziej szczegółowo

Programowanie internetowe

Programowanie internetowe Programowanie internetowe Wykład 1 HTML mgr inż. Michał Wojtera email: mwojtera@dmcs.pl Plan wykładu Organizacja zajęć Zakres przedmiotu Literatura Zawartość wykładu Wprowadzenie AMP / LAMP Podstawy HTML

Bardziej szczegółowo