Technologia informacyjna Globalna sieć Internet Dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2016
Plan wykładu Koncepcja sieci globalnej Usługi w sieci Internet Format HTML Protokół HTTP Serwery i przeglądarki WWW Poczta elektroniczna Usługa FTP Komunikatory sieciowe
Definicja Internet (ang. InterNetwork) globalna otwarta sieć komputerowa zbudowana z wielu mniejszych podsieci połączonych za pomocą różnych kanałów informacyjnych, wykorzystująca do komunikacji protokół TCP/IP Ogólnoświatowy dostęp Nieograniczony dostęp Jednolity protokół Wsparcie wielu platform sprzętowych i systemów operacyjnych
Przesłanki powstania globalnej sieci Początek lat 60. XX wieku: Koncepcja ogólnoświatowej sieci Opracowanie założeń oraz projektu (bez implementacji) Rok 1969 praktyczna implementacja założeń sieci globalnej Brak centralnego serwera Odporność na awarie jednostki ARPANET sieć dla wojska Początek lat 80. XX wieku Jednolity protokół TCP/IP Zasady adresacji komputera w sieci - DNS
Pierwsze kroki 1989 projekt ARPANET udostępniono instytucjom badawczym WWW = Koncepcja sieci dokumentów hipertekstowych ( T. Berners-Lee z zespołem) 1990 format HTML jako forma zapisu dokumentu 1991 przeglądarka WWW (tekstowa) 1993 pierwsza przeglądarka graficzna Mosaic 1994 gwałtowny wzrost zainteresowania Internetem na całym świecie
Internet w Polsce Lata 80. XX wieku możliwość połączenia z FIDONET (sieć rozproszona przeznaczona do umieszczenia ogłoszeń, plików, wymiany danych etc.) 1990 zniesienie ograniczeń na transfer technologii zachodnich 1990 pierwszy e-mail do PL 1991 powstaje NASK 1992 początki komercyjnej dostawy Internetu 1993 pierwszy polski serwer WWW 1996 TPSA uruchamia bezpłatny numer dostępowy 1999 szybkie dostęp do Internetu (SDI)
Dostęp do sieci Internet ISP (ang. Internet Service Provider) organizacja świadcząca usługi dostępu do sieci Internet ISP nie jest właścicielem zasobów ani usług internetowych udostępnia on jedynie możliwość korzystania z nich (za określonych zasadach lista usług, prędkość, cena, zasięg itp.)
Metody podłączenia się do sieci Internet Linia telefoniczna zwykła (rozliczany czas połączenia lub transfer, brak kosztów doprowadzenia oraz utrzymania) Łącze dzierżawione łącze komunikacyjne w ramach istniejącej infrastruktury telekomunikacyjnej, np. telewizja kablowa (rozliczane jest "utrzymanie" łącza tj. abonament bez ograniczeń czasu korzystania) Łącze stałe (szerokopasmowe) łącze o dużej przepustowości doprowadzone do firm (wyższe koszty założenia, koszty utrzymania) Łącze GSM (opłaty abonamentowe, limitowany transfer)
Usługi w sieci Internet WWW sklepy internetowe portale informacyjne Usługi E-mail rozrywka bankowość Pliki czaty komunikatory Komunikacja dyskusje telefonia internetowa
Usługi w sieci Internet (c.d.) WWW (ang. World Wide Web) system informacyjny działający w sieci Internet w postaci zbioru dokumentów hipertekstowych powiązanych ze sobą E-mail poczta elektroniczna - system do wysłania, przechowania oraz pobierania wiadomości w postaci dokumentów elektronicznych Transfer plików (FTP, P2P, etc.) usługi zapewniające możliwość wymiany plików pomiędzy użytkownikami sieci Internet Komunikacja zbiór usług zapewniających komunikowanie się użytkowników sieci Internet w trybie natychmiastowym (online)
Architektura komunikacji w sieci Internet Usługi w sieci Internet są świadczone w technologii klient-serwer Każdy z użytkowników może pełnić rolę klienta (najczęściej), serwera (rzadko) lub obu jednocześnie Korzystanie z usług serwera wymaga uruchomienia po stronie klienta odpowiedniego oprogramowania: Przeglądarki internetowej (WWW) Programu pocztowego (Email) Komunikatora Etc.
Schemat komunikacji w Internet Nazwa i adres usługi Użytkownik Oprogra mowanie Adres IP Dostawca usług Protokół komunikacyjny TCP/IP Protokół aplikacji(np. WWW) Internet Protokół DNS Protokół aplikacji(np. WWW) Serwer DNS Dostawca usług Adres IP serwera DNS Dostawca usług Serwer usług Adres IP serwera usług
Adres URL URL (ang. Uniform Resource Locator) adres zasobu w sieci Internet Elementy struktury URL Nazwa protokołu Adres serwera w sieci Ścieżka dostępu do zasobu na serwerze protokół http:// adres serwera www.wp.pl ścieżka dostępu /pogoda
Przykłady adresów URL http://www.mojastrona.pl http://www.firma.com.pl http://microsoft.com/poland http://www.mojafirma.waw.pl/logo.jpg mailto:jan.nowak@warszawa.pl ftp://download.pl skype:jan.nowak?chat URL może również zawierać dodatkową informację np. dotyczącą parametrów wywołania zasobu internetowego: http://bank.com?login=admin&haslo=admin1
Domena internetowa Domena internetowa - część adresu URL wskazująca na serwer, na którym znajduje się strona WWW lub inna usługa internetowa Pojęcie domeny w sieciach komputerowych może dotyczyć również grupy użytkowników, komputerów oraz zasobów np. domena usługi Active Directory firmy Microsoft Nazwa domeny składa się z kilku członów oddzielonych kropką A. B. C. Z
Drzewo domen Domeny najwyższego (1) poziomu narodowe, ogólne, naukowe, etc. Domeny 2. poziomu Domeny 3. poziomu Domeny poziomu
Usługa WWW WWW (ang. World Wide Web) usługa w sieci Internet, zapewniająca dostęp do informacji hipertekstowych oraz multimedialnych Cel pierwotny usługi (rok 1990) koordynowanie wspólnej pracy naukowców nad projektami poprzez gromadzenie wspólnej wiedzy Koncepcja systemu informacyjnego publicznie dostępnego Konsorcjum W3C
Składniki architektury WWW Protokół HTTP komunikacja pomiędzy aplikacją klienta a usługą WWW świadczoną przez serwer Klient HTTP - przeglądarka internetowa (ang. Web Browser) Serwer HTTP - aplikacja działająca na komputerze zdalnym (lub lokalnie) Format dokumentu HTML sposób reprezentacji dokumentów WWW
Schemat działania usługi WWW Użytkownik http://www.wp.pl/pogoda adres zasobu URL Przeglądarka Internet Adres URL serwera http://www.wp.pl odp. serwera Internet Dokument HTML /pogoda
nawigacja Koncepcja hipertekstu ang. Hypertext tekst połączony z odnośnikami umożliwiającymi nawigację.................................[kotwica]................................ [odsyłacz 1]........................................................[odsyłacz 2] Dokument (hiper)tekstowy nawigacja Pomysł znany z lat 60. XX wieku
Format HTML ang. HyperText Markup Language hipertekstowy język znaczników Określa: strukturę dokumentu (nagłówek, treść, akapity) wygląd dokumentu (czcionki, kolory, style itp.) nawigację wewnątrz dokumentu oraz pomiędzy dokumentami (odnośniki, linki) Formularze do wprowadzania danych Załączniki (pliki multimedia, dokumenty itp.) Nie jest językiem programowania (!) Aktualna wersja standardu 5.0
Znaczniki HTML (tagi) Znacznik (ang. tag) element umieszczony w ostrokątnych nawiasach Przykład: <head> - znacznik nagłówka dokumentu Znaczniki są stosowane w parach: <title> Moja strona WWW </title> Dla niektórych znaczników dopuszczalna jest skrócona forma zapisu łącząca otwarcie oraz zamknięcie znacznika <znacznik />
Klasyfikacja znaczników HTML Strukturalne opisują strukturę tekstu Prezentacyjne opisują wygląd elementów w tekście dokumentu Hipertekstowe opisują powiazania (odnośniki) pomiędzy dokumentami
Wybrane edytory HTML Pajączek (PL) KompoZer Microsoft Web Developer Studio NetBeans HTML Editor Adobe DreamWeaver BlueFish Notepad++ itp.
Protokół HTTP ang. HyperText Transfer Protocol podstawowy protokół usługi WWW Protokół działa w warstwie aplikacji modelu sieciowego (p. poprzedni wykład) Prosty protokół tekstowy Zadaniem protokołu jest pobranie danych ze wskazanego URL lub przesłanie danych na serwer Protokół nie posiada tzw. stanu każde zapytanie nie jest związane z poprzednim / następnym
Wybrane metody protokołu HTTP GET [URL] zwraca klientowi zawartość znajdującą się pod wskazanym adresem URL Parametry są przekazywane w jawnej postaci Nie powinna powodować zmian w stanie aplikacji (np. rejestracji klienta w bazie danych na serwerze) http://www.poczta.pl?login=jan.nowak&haslo=123 POST [URL] wysyła na serwer dane formularza wypełnionego przez użytkownika Dane są ukryte Stosuje się wraz z innymi zabezpieczeniami połączenia Dwukrotne wykonanie może powodować odmienne efekty http://www.poczta.pl
Charakterystyki protokołu HTTP Zalety: Powszechność Łatwość implementacji Wady Rozmiar przesyłanych danych (tekst!) Nie wspiera systemów rozproszonych (wymaga dodatkowych protokołów) Brak stanu wymaga stosowania dodatkowych mechanizmów po stronie klienta ( ciasteczka ) lub serwera ( sesja )
Statyczne oraz dynamiczne dokumenty HTML Dokument statyczny plik HTML umieszczony na serwerze i pobierany w postaci niezmiennej Dokument dynamiczny plik HTML generowany przez serwer na żądanie użytkownika Szablon dokumentu dynamicznego generowanie Plik HTML przeglądanie uruchomienie Kod wykonywalny podstawianie obliczonych wartości 28
Technologie programowania dynamicznych stron WWW oraz wiele innych
Serwery WWW Serwer WWW aplikacja sieciowa działająca w systemie operacyjnym jako usługa (ang. service) Uruchamiany na komputerze pełniącym rolę serwera Realizuje protokół HTTP Działa na określonym porcie Port domyślny: 80 Porty niestandardowe głównie do testów Oczekuje na połączenie klienta (tryb nasłuchiwania) Obsługuje wielu klientów jednocześnie
Popularne serwery WWW Źródłó: http://w3techs.com/technologies/cross/web_server/ranking 31
Przeglądarki WWW Przeglądarka WWW aplikacja typu desktop uruchamiana w systemie operacyjnym i działająca w trybie klient-serwer Realizuje protokół HTTP Wysyła żądania do serwera WWW Odbiera odpowiedź serwera we postaci dokumentu HTML i wyświetla go w oknie Obsługuje skrypty itp.
Przeglądarka Mosaic Pierwsza przeglądarka z interfejsem graficznym (rok 1993) Z niej wywodzą się wcześniejsze wersje Microsoft Internet Explorer oraz Netscape Navigator
Microsoft Internet Explorer
Microsoft Internet Explorer (c.d.) Wersja 1.0 - rok 1995 Windows 95 w pierwszym wydaniu nie był zintegrowany z przeglądarką Wersja 6 Windows XP Wersja 11 (ostatnia) Windows 8.1 W Win 10 zastąpiona przez Microsoft Edge Działa tylko w systemie operacyjnym Windows Starsze wersje (do 9) są często krytykowane ze względu na niską kompatybilność ze standardem W3C
Netscape Navigator
Netscape Navigator (c.d.) Wersja 1 rok 1994 (przed IE!) Nazwa kodowa Mozilla W drugiej połowie lat 90. XX wieku - poważna konkurencja dla IE (do roku 1997 miał do 90% rynku) Działa w OS Windows, Unix, Linux, etc. Wersja 4 Netscape Communicator (przeglądarka, poczta e-mail, edytor HTML pt. Composer, komunikator AOL Messenger, etc. ) Wersja 5 nie ukazała się, 6 była ciężka oraz niestabilna W roku 2004 ukazała się ostatnia wersja NN Obecnie program istnieje jako odmiana przeglądarki FireFox
Przeglądarka Opera
Przeglądarka Opera Pierwsza przeglądarka pozwalająca przeglądać strony WWW w kilku oknach Debiut rynkowy w roku 1996 Najpierw jako shareware, następnie adware, dopiero po rok 2000 jako freeware Okno startowe z ikonami ulubionych stron W wielu zastosowaniach szybsza od konkurencji, aczkolwiek kosztem kompatybilności Płatna wersja (początkowo) dla urządzeń mobilnych Od wersji 12 przejście na kod zgodny z przeglądarką Chrome oznajmiło koniec rozwoju Opery jako oryginalnego oprogramowania
Mozilla Firefox
Mozilla Firefox Nowe czasy nowe technologie! Pierwsza wersja stabilna rok 2004 Otwarty kod źródłowy Działa na wielu platformach programowych Sprawdzenie pisowni, wbudowana obsługa multimediów, etc. Rozszerzenie funkcjonalności za pomocą systemu wtyczek (ang. Plug-ins) Współpraca z usługami Google ~ 20% rynku
Google Chrome
Google Chrome Pierwsza publiczna wersja rok 2008 Częściowo wykorzystywała kod źródłowy Mozilla Minimalistyczny interfejs Ścisła integracja z usługami Google, w tym: Translator, Słownik, Mail, kalendarz, etc. Tryb prywatny Wersja na platformę Android Bezpieczeństwo, szybkość Pluginy Obecnie ~50% rynku światowego
Popularność przeglądarek na świecie http://gs.statcounter.com/
Poczta elektroniczna (e-mail) E-mail usługa w sieci Internet polegająca na przekazywaniu wiadomości tekstowych od nadawcy do odbiorcy Pierwszy mail był wysłany w roku 1965! Usługa działa w architekturze klient-serwer Elementy usługi: Serwer poczty przychodzącej Serwer poczty wychodzącej Klient poczty (program) Adres odbiorcy /nadawcy
Dostarczenie poczty Schemat funkcjonowania e-mail Nadawca Wiadomość Program pocztowy Serwer poczty wychodzącej Wiadomość Program pocztowy Odbiorca Serwer poczty przychodzącej
Klient poczty e-mail Program za pomocą którego można edytować, nadawać oraz odbierać wiadomości e-mail Może posiadać interfejs graficzny lub tekstowy Coraz bardziej popularną usługą jest WebMail zarządzanie pocztą za pomocą strony WWW oraz przeglądarki internetowej Popularne programy pocztowe: Microsoft Outlook, Mozilla Thunderbird, The Bat!, Eudora, KMail, Pegasus Mail, etc.
Protokół poczty wychodzącej SMTP (ang. Simple Mail Transport Protocol) Polecenia w postaci tekstowej Domyślny port 25 Wymaga wskazania: Adresu odbiorcy (obowiązkowo) Wiadomości (opcja): nagłówek, treść, załączniki Poświadczeń nadawcy (opcja) Adres odbiorcy składa się z: Nazwy serwera poczty przychodzącej odbiorcy Nazwy użytkownika odbiorcy Przykład: jankowalski@inbox.poczta.pl
Protokół poczty przychodzącej POP3 (ang. Post Office Protocol) Polecenia w postaci tekstowej Sesja pracy polega na: Zalogowaniu się do serwera (login / hasło) Pobraniu listy wiadomości Pobraniu treści wybranej wiadomości Skasowaniu wiadomości odczytanych Obecnie coraz częściej jest wykorzystywany protokół IMAP będący rozszerzeniem POP3
Usługa transferu plików FTP FTP (ang. File Transfer Protocol) usługa w sieci Internet zapewniająca przekazywanie plików pomiędzy użytkownikiem a komputerem zdalnym (serwerem FTP) Domyślny port 21 Elementy usługi: Serwer FTP (przechowywanie plików, autoryzacja użytkowników) Klient FTP (program instalowany na stacji roboczej) Konto użytkownika + uprawnienia
Schemat funkcjonowania FTP Użytkownik Plik Program klient FTP Plik Serwer FTP Drzewo folderów Program klient FTP
Schemat funkcjonowania FTP Logowanie użytkownika na serwerze FTP (login, hasło lub inne poświadczenia) Pobranie listy folderów Wyświetlenie listy plików w wybranym folderze Ładowanie pliku na serwer (ang. Upload) Pobranie pliku z serwera na komputer lokalny (ang. Download) Wylogowanie
Komunikatory sieciowe Komunikator (ang. Messenger) program komputerowy zapewniający możliwość komunikacji pomiędzy użytkownikami w trybie online Komunikator może działać w trybie klient-serwer lub trybie bezpośredniego połączenia pomiędzy użytkownikami peer-to-peer (najczęściej) Elementy usługi: Protokół komunikacji Program klient Serwer (do przechowania listy użytkowników, nie bierze udziału w procesie wymiany danych)
Konwersacja Schemat funkcjonowania komunikatora internetowego Komunikat Komunikator Użytkownik 1 Komunikat Komunikator Serwer (lista kontaktów) Użytkownik 2