Protokoły Internetowe



Podobne dokumenty
Sieci komputerowe. Wstęp

Wykład 3 / Wykład 4. Na podstawie CCNA Exploration Moduł 3 streszczenie Dr inż. Robert Banasiak

Wybrane działy Informatyki Stosowanej

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

Języki programowania wysokiego poziomu WWW

MODEL WARSTWOWY PROTOKOŁY TCP/IP

systemów intra- i internetowych Platformy softwarowe dla rozwoju Architektura Internetu (2) Plan prezentacji: Architektura Internetu (1)

PROTOKOŁY OBSŁUGI POCZTY ELEKTRONICZNEJ

Adres IP

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

Programowanie w Internecie

Technologie cyfrowe. Artur Kalinowski. Zakład Cząstek i Oddziaływań Fundamentalnych Pasteura 5, pokój 4.15 Artur.Kalinowski@fuw.edu.

TCP/IP. Warstwa aplikacji. mgr inż. Krzysztof Szałajko

Aplikacje WWW Wprowadzenie

Zaawansowane Techniki WWW (HTML, CSS i JavaScript)

Technologie cyfrowe semestr letni 2018/2019

Stos TCP/IP. Warstwa aplikacji cz.2

Sieci komputerowe i bazy danych

World Wide Web? rkijanka

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

Źródła. cript/1.5/reference/ Ruby on Rails: AJAX: ssays/archives/

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

Programowanie internetowe

Dr Michał Tanaś(

Model sieci OSI, protokoły sieciowe, adresy IP

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

Protokół HTTP. 1. Protokół HTTP, usługi www, model request-response (żądanie-odpowiedź), przekazywanie argumentów, AJAX.

Sieci komputerowe. Wykład dr inż. Łukasz Graczykowski

Plan wykładu. 1. Sieć komputerowa 2. Rodzaje sieci 3. Topologie sieci 4. Karta sieciowa 5. Protokoły używane w sieciach LAN 6.

1 Technologie Informacyjne WYKŁAD I. Internet - podstawy

Kurs HTML 4.01 TI 312[01]

System komputerowy. Sprzęt. System komputerowy. Oprogramowanie

Protokoły internetowe

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

Plan wykładu. 1. Protokół FTP. 2. Protokół HTTP, usługi www, model request-response (żądanie-odpowiedź), przekazywanie argumentów, AJAX.

Wykład 5: Najważniejsze usługi sieciowe: DNS, SSH, HTTP, . A. Kisiel,Protokoły DNS, SSH, HTTP,

Java wybrane technologie

Zadanie1: Odszukaj w serwisie internetowym Wikipedii informacje na temat protokołu http.

Zaawansowana Pracownia Komputerowa - Ćwiczenia. Krzysztof Miernik

Laboratorium nr 4 - Badanie protokołów WWW

Technologie informacyjne (6) Zdzisław Szyjewski

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

Bazy Danych i Usługi Sieciowe

Jarosław Kuchta Administrowanie Systemami Komputerowymi. Internetowe Usługi Informacyjne

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

Wprowadzenie do programowania www

WITRYNY I APLIKACJE INTERNETOWE

STRONY INTERNETOWE mgr inż. Adrian Zapała

1. Model klient-serwer

Internet to sieć komputerowa o zasięgu globalnym łącząca ze sobą setki tysięcy małych i dużych sieci lokalnych oraz pojedyncze komputery.

Java Enterprise Edition spotkanie nr 1 (c.d.) JavaMail

Protokół sieciowy Protokół

Dr Michał Tanaś(

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

O stronach www, html itp..

Instrukcja konfiguracji funkcji skanowania

Ministerstwo Finansów

Odnośniki jeszcze do niedawna odróżniały strony WWW od wszystkich innych dokumentów elektronicznych. Możliwość deklarowania odnośników do innych

Protokoły sieciowe - TCP/IP

Technologie internetowe

5-6. Struktura dokumentu html. 2 Określenie charakteru i tematyki strony. Rodzaje witryn. Projekt graficzny witryny. Opracowanie skryptów

Technologia informacyjna

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone

Sprawozdanie nr 4. Ewa Wojtanowska

13. Konfiguracja proxy http, smtp, pop3, ftp, ssl

Plan prezentacji. Wprowadzenie Przesyłanie Informacji w Internecie Funkcjonowanie stron internetowych Działanie narzędzi internetowych.

Zdalne logowanie do serwerów

Sieci komputerowe. Wykład 1: Podstawowe pojęcia i modele. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski

Po zakończeniu rozważań na temat World Wide Web, poznaniu zasad organizacji witryn WWW, przeczytaniu kilkudziesięciu stron i poznaniu wielu nowych

System operacyjny UNIX Internet. mgr Michał Popławski, WFAiIS

MINISTERSTWO FINANSÓW PLAN INTEGRACJI SYSTEMU ZAŁĄCZNIK NR 6 SEAP SPECYFIKACJA KANAŁ DLA PODMIOTÓW ZEWNĘTRZNYCH PL PROJEKT ECIP/SEAP

SIECI KOMPUTEROWE. Podstawowe wiadomości

Lab5 - Badanie protokołów pocztowych

Referat z przedmiotu Technologie Internetowe SPIS TREŚCI

Bazy danych i strony WWW

Sieci równorzędne, oraz klient - serwer

rk HTML 4 a 5 różnice

SIECI KOMPUTEROWE mgr inż. Adam Mencwal Katedra Informatyki Stosowanej

Programowanie Sieciowe 2 Protokoły komunikacyjne: HTTP

Tomasz Greszata - Koszalin

Sieci VPN SSL czy IPSec?

2 Podstawy tworzenia stron internetowych

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV

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

Komunikacja i wymiana danych

Wybrane działy Informatyki Stosowanej

Sieci Komputerowe. Protokół POP3. Protokół IMAP4 Internet Mail Access Protocol version 4. dr Zbigniew Lipiński

Wykład 1 TINT. Wprowadzenie do XHTML. Zofia Kruczkiewicz

Cel wykładu. Literatura. WyŜsza Szkoła MenedŜerska w Legnicy. Wykład 1. Informatyka w zarządzaniu Zarządzanie, zaoczne, sem. 3

Serwer SSH. Wprowadzenie do serwera SSH Instalacja i konfiguracja Zarządzanie kluczami

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

Adresy w sieciach komputerowych

Zakres treści Czas. 2 Określenie charakteru i tematyki strony. Rodzaje witryn. Projekt graficzny witryny. Opracowanie skryptów

Sieci komputerowe. Zajęcia 3 c.d. Warstwa transportu, protokoły UDP, ICMP

Przesyłania danych przez protokół TCP/IP

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

Programowanie Sieciowe 1

Wydział Informatyki, Elektroniki i Telekomunikacji Katedra Telekomunikacji

1. FTP 2. SMTP 3. POP3

Instrukcja obsługi serwera FTP v

Transkrypt:

Protokoły Internetowe

Podstawy Internetu Historia Internetu Definicja Internetu WWW Protokół HTTP Trochę o HTML Dynamiczne strony WWW Protokoły pocztowe Protokoły transmisji danych (ftp)

Internet Internet (dosł. międzysieć; od ang. inter między i ang. net sieć) to sieć komputerowa o światowym zasięgu łącząca sieci lokalne, sieci rozległe i wszystkie komputery do nich podłączone. Standardy internetu regulowane przez agencję Internet Engineering Task Force (IETF) i publikowane w dokumentach RFC. Definicja słowa internet oznacza globalny system informacyjny spełniający następujące warunki: jest logicznie połączony w jednorodną sieć adresową opartą na protokole IP (Internet Protocol), jest w stanie zapewnić komunikację przy użyciu TCP/IP (Transmission Control Protocol/Internet Protocol), dostarcza lub wykorzystuje publicznie usługi wyższego poziomu oparte na komunikacji i związanej z nią infrastrukturze.

Internet historia Początki Internetu - sieć ARPANET (projekt DARPA ang. Deffence Advanced Research Project Agency) Początkowo 4 komputery Protokół NCP (Network Control Protocol) 1974 Opracowanie TCP i IP (problemy NCP z obsługą dużego ruchu) 1980 Włączenie do ARPANET sieci akademickich i korporacji 1983 - TCP/IP zostaje Standardem Wojskowym, popularyzacja określenia Internet 1989 - Internet przejmują uniwersytety i organizacje naukowe, koniec projektu ARPANET (zakaz zastosowań komercyjnych) 1991 koniec z ograniczeniami dla Internetu (zastosowania komercyjne), popularyzacja rozwiązania

WWW World Wide Web (w skrócie określany jako WWW lub Web) jest hipertekstowym, multimedialnym, sieciowym (TCP/IP) systemem informacyjnym opartym na publicznie dostępnych, otwartych standardach IETF, W3C i ISO. Pierwotnym i w chwili obecnej nadal podstawowym zadaniem WWW jest publikowanie informacji za pomocą stron internetowych. Zawartość strony internetowej jest hipertekstem, znaczy to, że użytkownik oglądając stronę internetową może podążać za hiperłączami, które przenoszą go do innych stron internetowych w ramach tego samego serwera internetowego lub innych dostępnych w ramach sieci. World Wide Web został zapoczątkowany na początku lat dziewięćdziesiątych w CERN jako system dostępu do danych, informacji (w tym graficznych) w heterogenicznym środowisku dużej organizacji naukowej. Tim Berners-Lee, nazywany twórcą WWW, zbudował prototyp systemu, który później został przekształcony w to czym WWW jest dzisiaj.

HTTP i URL HTTP (ang. Hypertext Transfer Protocol) to bezstanowy (stan obecny nie zależy od stanu poprzedniego) protokół warstwy aplikacji, służący transmisji stron WWW. Definicja HTTP standard - RFC 2616. Służy do przesyłania żądania udostępnienia dokumentów WWW, przekazywania informacji z formularzy. Zadaniem stron WWW jest publikowanie informacji - natomiast protokół HTTP właśnie to umożliwia, natomiast HTML językiem opisującym wygląd stron WWW. URI (ang. Uniform Resource Identifier) Uniwersalny identyikator zasobów. Służy do identyfikacji zasobu. W strukturze hierarchicznej URI jest rodzicem dla URL URN URL (ang. Uniform Resource Locator) - Uniwersalny lokalizator zasobów określa położenie zasobu. W świecie Internetu najczęściej przyjmuje się URI = URL gdyż identyfikator jest jednocześnie lokalizatorem danego zasobu. Schemat: <schemat> : <autoryzacja> : <port> / <ścieżka>? <zapytanie> # <fragment> URN (ang. Unified Resource Name) zunifikowana nazwa zasobu określa zunifikowaną nazwę, która może być składowana w różnych miejscach (dla jednego URN mamy kilka URL). URN imię i nazwisko osoby, URL adres zamieszkania Przykład: urn:isbn:8371976682 - URN książki TCP/IP Biblia http://helion.pl/ksiazki/tcpipb.htm - URL książki TCP/IP Biblia URL: http://lmetet.polsl.pl/~mblachnik/doku.php?id=nauka:publikacje#rok_year_2006 Schemat (protokół) autoryzacja (adres hosta) Ścierzka zapytanie Referencja do fragmentu na stronie

Protokół HTTP Fazy transakcji HTTP: 1. Połączenie klient (przeglądarka) usiłuje połączyć się z serwerem, który odpowiada nawiązując połączenie (Połączenie TCP/IP) 2. Żądanie klient wysyła do serwera żądanie określając protokół komunikacyjny i zasób (plik do pobrania) oraz parametry określające obsługiwane typy danych 3. Odpowiedź Po odebraniu przez serwer żądania, serwer wysyła wymagany zasób lub zwraca błąd 4. Zamknięcie Zamknięcie połączenia z serwerem przez jedną ze stron

Polecenia HTTP Metody zapytań GET każe serwerowi pobrać dane znajdujące się pod danym URL HEAD To samo co GET ale zwracany jest tylko nagłówek dokumentu POST przesyła dane do przetworzenia (np. z formularza HTML) do określonego zasobu. Dane są zawarte w treści zapytania. Efektem jest stworzenie nowego zasobu lub aktualizacja jednego z obecnych zasobów PUT uploaduje reprezentacje określonego zasobu (przyjęcie pliku od klienta do serwera) DELETE usuwa określony zasób TRACE zwraca echo odebranego zapytania, tak że klient może widzieć co pośrednie serwery dodają lub zmieniają w zapytaniu OPTIONS- wraza metodę http którą serwer HTTP wspiera dla danego URL. Może być użyta do sprawdzenia funkcjonalności serwera poprzez zapytanie * zamiast konkretnego zasobu CONNECT przekształca zapytanie do przeźroczystego tunelu TCP/IP, zwykle w celu umożliwienia zaszyfrowanej komunikacji (SSL, HTTPS) przez niezaszyfrowany HTTP - proxy (serwery pośredniczące).

HTML - historia HTML (ang. HyperText Markup Language, hipertekstowy język znaczników) Wzorowany na SGML (Standard Generalized Markup Language) Język składający się ze znaczników (ang. tags) stosowany do tworzenia stron WWW. Pomysłodawca Tima Berners-Lee w 1989/1991 roku, pracownik CERN. Pierwotna budowa - kilkanaście znaczników umożliwiających wyświetlanie tekstu wraz z odsyłaczami do innych tekstów. (idea: przeskakując do innego tekstu za pomocą linku użytkownik nie musiał wiedzieć gdzie fizycznie znajduje się interesujący go tekst. Była to tzw. ( zerowa wersja HTML) Dalszy rozówj - potrzeba dołączania do tekstów tabel, grafiki i plików multimedialnych, rezultat: kolejne wersje HTML-a. Problemy z HTML brak standaryzacji, nowe znaczniki definiowane przez producentów przeglądarek Rezultat brak kompatybilności wersji HTML-a zaimplementowanych w przeglądarkach różnych producentów. Rozwiązanie: Stworzenie W3C czyli World Wide Web Consortium, i standaryzacja HTML-a. Ostatnią wersją HTML-a jest wersja 4.01, która próbuje wydzielić zarządzanie wyglądem strony do kaskadowych arkuszy stylów (CSS).

Wersje HTML HTML 2.0 Pierwsza ustalona wersja HTML (większość stosowanych obecnie znaczników, brak tabel i możliwości justowania) HTML 3.2 Zaimplementowanie możliwości tworzenia tabel, grafiki i atrybutów justowania HTML 4.0 Wprowadzenie ramek HTML 4.01 Wprowadzenie arkuszy stylów itp..

HTML cd. Przejście na HTML zgodny ze stamdardem XML XHTML XHTML (3 wersje + wersja przyszłościowa) Kierunek rozwoju to: XHTML 5.0/HTML 5.0 to przyszłość HTML a

XHTML XHTML 1.0, (2000) rekomendacja W3C; (2002) drugie wydanie XHTML 1.0. XHTML 1.0 Strict odmiana ścisła, zalecana przez W3C, przeznaczona do tworzenia dokumentów z oddzieloną warstwą semantyki od prezentacji; nie zawiera prawie żadnych elementów prezentacyjnych XHTML 1.0 Transitional odmiana przejściowa, obok elementów odmiany ścisłej zawiera wiele elementów prezentacyjnych XHTML 1.0 Frameset zawiera wszystkie elementy wersji przejściowej, a dodatkowo także elementy przeznaczone do wyświetlania ramek. XHTML 1.1, (2001) rekomendacja W3C. Bazuje na XHTML 1.0 Strict, Możliwość dostosowywania przez użycie modułów opisanych w Modularyzacji XHTML, XHTML 2.0 (szkic). XHTML 2.0 brak kompatybilności z XHTML 1.x, - nowy język powstały z inspiracji XHTML-em, a nie aktualizacja starego XHTML 5 (szkic), aktualizacja XHTML-a 1.x, jest zdefiniowany wraz z HTML-em 5 Żródło (wikipedia)

HTML - struktura <html>. Element główny zawierający dwa kolejne elementy: <head> (nagłówek dokumentu) i <body> (zasadnicza treść dokumentu). <head> zawiera tytuł strony oraz informacje dodatkowe niewidoczne w dokumencie, takie jak autor, data, słowa kluczowe, itp. <body> zawiera wszystkie wyświetlane elementy: tekst, grafikę, itp. Na początku dokumentu, poza elementem <html> powinna się znaleźć informacja o zastosowanym typie dokumentu, wskazująca użytą wersję HTML. <!DOCTYPE html PUBLIC... > - deklaracja typu dokumentu <html> </html> <head>... </head> - nagłówek <body>... </body> - zawartość strony

HTML struktura cd. Elementy składają się z trzech części: znacznika początkowego (w formie <znacznik>) zawartości elementu (tekst i/lub inne elementy) znacznika końcowego (w formie </znacznik>) Elementy mogą mieć przypisane atrybuty precyzujące znaczenie danego elementu. Atrybuty wraz z ich wartościami wpisuje się wewnątrz znacznika początkowego (<znacznik atrybut="wartość">). Niektóre elementy nie muszą, a niektóre nie mogą posiadać znacznika końcowego (np. element <br> służący do rozpoczęcia nowego wiersza tekstu).

Przykład <html lang="pl"> - definicja języka <head> <meta http-equiv="content-type" content="text/html; charset=utf-16"> <title>tytuł strony w HTML-u</title> </head> <body> <h1>nagłówek strony pierwszego stopnia</h1> <p> Oto trochę tekstu<br> i jeszcze trochę tekstu w następnym wierszu<br> <a href="http://pl.wikipedia.org" target=_blank> a to link do Wikipedii w nowym oknie</a> </p> </body> </html>

Dynamiczne tworzenie stron Po stronie klienta JavaScript, Aplety, DHTML Flesh itp. Po stronie serwera CGI Servlety JSP ASP PHP PERL

Dynamiczna treść po stronie klienta

CGI - Comon Gateway Interface Żródło : www.wdvl.com/authoring/scripting/webware/server/

Źródło: www.cs.colorado.edu/.../lectures/06/index.html CGI vs. Servlets Porównanie CGI i servletów CGI Servlets

Poczta Protokół SMTP Protokół POP3 Protokół IMAP

SMTP Ang. Simple Mail Transfer Protocol Odpowiedzialny za przesyłanie poczty z jednego systemu pocztowego do drugiego (np. od nas klientów na serwer SMTP) Działa na porcie 25 Sposób działania Odebrana przez serwer wiadomość trafia do bufora Co określony czas kontrola stanu bufora. Jeśli bufor pełny Nawiązanie połączenia z serwerem docelowym. Jeśli gotów do współpracy przesyła komunikat o gotowości. Przy braku gotowości dostajemy specjalny komunikat. Gdy brak łączności z serwerem SMTP ponowienie nawiązania połączenia do upływu określonego czasu Gdy serwer docelowy dostępny, serwer nadawca wysyła komunikat HELLO. Odpowiedź nazwa domeny (weryfikacja czy poprawne połączenie) Rozpoczęcie transmisji Komunikat MAIL FROM (od kogo wiadomość) Określenie odbiorców RCP TO: adresy odbiorców Serwer nadawca wysyła komunikat DATA informacja o wysłaniu wiadomości Wysyłanie trwa aż do pojawienia się komunikatu. kończącego transmisję SMTP to dostawy dwupunktowe (end to end) przy braku adresata wiadomość przesyłana do nadawcy.

SMTP - przykład Źródło: http://en.wikipedia.org/wiki/simple_mail_transfer_protocol

Wady SMTP Brak weryfikacji adresata (duża łatwość podmiany) W wersji podstawowej brak transmisji danych binarnych (standard ASCII) Konieczność stosowania MIME SMTP- Auth próba dodania uwierzytelniania

MIME Ang Multipurpose Internet Mail Extension Rozszerzenie możliwości przesyłania danych binarnych Budowa MIME: nagłówek + treść Nagłówek MIME: Definicja wersji (MIME-version) Definicja typów zawartości (content-type) text image audio video application Sposób kodowania wiadomości czyli kodowanie transportowe (Content-transfer-encoding) Dodatkowy opis zawartości wiadomości (Content-ID i Content- Description) UWAGA SMTP obsługuje ASCII które są 7 bitowe, więc konieczność zamiany danych 8 bitowych na 7 bitowe tzw. Kodowanie transportowe

POP Ang. Post Office Protocol Port 110 RFC: RFC 1939, RFC 2449,RFC 1734,RFC 2222,RFC 3206 Obecna wersja POP3 (brak komatybilności z POP2) Protokół transmisji wiadomości pocztowych ze skrzynki do klienta Architektura Klient Server Wady: połączenie tylko na okres pobrania poczty, Możliwość podłączenia jednego użytkownika do jednej skrzynki Listy muszą być pobrane w całości razem z załącznikami (komenda top pozwala na pobranie tylko n pierwszych lini ) Odebrane wiadomości trafiają do jednej skrzynki POP3 nie pozwala przeszukiwać kolejki listów do pobrania W oryginale obsługiwał uwierzytelnianie zwykłym tekstem (podatność na kradzież informacji) Zalety: Prosty do implementacji Popularny

Sesja POP3 Obsługa POP Nawiązanie połączenia przez klienta z Serwerem POP Serwer wysyła komunikat do klieta wejście w stan uwierzytalniania Uwierzytelnienie klienta (polecenie USER i PASS) i przejście w stan transakcji Pobranie listy wiadomości (polecenie LIST) Pobranie wiadomości (polecenie RETR) Usunięcie odebranej wiadomości (polecenie DELE) Po odebraniu wiadomości przez klienta kończenie sesji (polecenie QUIT)

Przykładowa sesja

IMAP Internet Mail Access Protocol RFC3501 Port 143 TCP Stany sesji IMAP Stan nie uwierzytelniony Stan uwierzytelniony Stan wybrany Stan wylogowania Koncepcja udostępnienie dla programów pocztowych możliwości zdalnego przeglądania katalogów z pocztą Możliwość zdalnej edycji poczty

Protokół FTP File Transfer Protocol RFC 959 Służy transmisji danych Wykorzystuje dwa porty i dwa tryby pracy Tryb aktywny Klient inicjuje połączenie na port 21. Port wykorzystywany do wymiany poleceń (Protocol Interpreter) Po nawiązaniu połączenia na porcie 21 serwer nawiązuje połączenie zwrotne na porcie 20 (wymiana danych) (Data Transfer Protocol) Problem komunikacji przez firewall, NAT Tryb pasywny Klient inicjuje połączenie na porcie 21 (port do wymiany poleceń) Klient inicjuje połączenie na porcie >1024

FTP cd Tryby transmisji: ASCII Przesyłanie dokumentów tekstowych (kontrola zakończeń plików UNIX LF, Windows CR, LF) Binarny zwykłe kopiowanie

Koniec na dzisiaj