Usługi sieciowe Labolatorium Numer 9

Transkrypt

Usługi sieciowe Labolatorium Numer 9
Usługi sieciowe Labolatorium Numer 9
Usługi sieciowe to wszystkie usługi moŜliwe poprzez sieć komputerową.
Wymieniając usługi internetowe nie moŜemy przejść obojętnie obok takich jak: poczta
elektroniczna, transmisja danych, usługi terminalowe, serwisy informacyjne czy teŜ np.
dostęp do informacji o uŜytkownikach. Opis dotyczyć będzie paru z nich. Na początku
zajmiemy się bardzo znaną usługą jaką jest poczta elektroniczna.
Celem istnienia usługi poczty elektronicznej jest umoŜliwienie uŜytkownikom
systemu komputerowego przesyłania wiadomości drogą elektroniczną. Początków
przekazywania informacji między uŜytkownikami komputerów moŜna się doszukać jeszcze
przed powstaniem moŜliwości przekazania prostej informacji w sieci ARPANet w 1971 roku.
Jako pierwsi komendę MAIL zaproponowali Louis Pouzin, Glenda Schroeder i Pat Crisman.
Na początku komenda mail miała słuŜyć do informowania uŜytkowników o zakończeniu prac
nad odzyskiwaniem zagubionych plików z taśm. Pierwsza wersja komendy MAIL powstał
latem 1965 roku. W póŜniejszym czasie komendę tą zmodyfikowano tak aby kaŜdy
uŜytkownik mógł wysłać informacje do drugiej osoby. Komenda MAIL dopisywała
informację do prywatnego pliku (mail-box) odbiorcy, a następnie wyświetlała komunikat
YOU HAVE MAIL BOX lub YOU HAVE URGENT MAIL podczas logowania. Z początku
obawiano się Ŝe US Post Office będący monopolistą na rynku komunikacji pocztowej będzie
domagał się wykupienia znaczka na kaŜdą przesłana w ten sposób informacje. MIT dostał
zapewnienie ze strony serwisu pocztowego, Ŝe taka sytuacja nie będzie miała miejsca
Pierwszy program pozwalający na przesyłanie informacji w sieci ARPAnet nosił nazwę
SNDMSG. Został on stworzony przez Raya Tomlinsona w 1971 roku dla uŜytkowników
ARPANET korzystających z sieci komputerowej (Digital PDP-10s) w celu przekazywania
informacji między sobą.
SNDMSG był lokalnym programem komunikacyjnym i pozwalał pozostawić wiadomość
drugiej osobie pracującej na tym samym komputerze. W celu umoŜliwienia wysyłania
informacji do innych komputerów w sieci ARPANET, Tomlinson zastosował protokół
transferu danych CYPNET nad którym pracował.
Dla określenia danego uŜytkownika pracującego na konkretnym komputerze wybrano symbol
„@”. @ jest wstawiana pomiędzy loginem uŜytkownika a nazwą serwera.
Pierwszy email został przesłany pomiędzy dwoma sąsiadującymi komputerami, ale
połączonymi w sieć ARPANET. Pierwszą wiadomością email było "QWERTYUIOP".
W 1975 roku Jon Postal napisał RFC 0706, „On the junk mail problem” [1]
Oficjalny standard poczty elektronicznej RFC 0733 został przyjęty w 1977 roku.
RFC 0772 “Mail Transfer Protocol” napisany przez S. Sluizer i J. Postel datowany na 1
września 1980 roku zainaugurował serię dokumentów RFC opisujących cechy internetowego
protokołu mailowego. Doprowadziło to w końcu stworzenia protokołu SMTP uŜywanego
obecnie.
Poczta elektroniczna była do lat 90-tych wewnętrznym środkiem komunikacji
amerykańskich naukowców i studentów. W połowie lat 90-tych email utracił status
uniwersyteckiej ciekawostki, by stać się dostępnym dla "zwykłych ludzi". Wtedy teŜ, na
początku lat 90-tych, poczta elektroniczna dotarła do Polski. Poczta elektroniczna była do lat
90-tych wewnętrznym środkiem komunikacji amerykańskich naukowców i studentów. W
połowie lat 90-tych email utracił status uniwersyteckiej ciekawostki, by stać się dostępnym
dla "zwykłych ludzi". Wtedy teŜ, na początku lat 90-tych, poczta elektroniczna dotarła do
Polski. [2]
Celem istnienia usługi poczty elektronicznej jest umoŜliwienie uŜytkownikom
systemu komputerowego przesyłania wiadomości drogą elektroniczną. UŜytkownicy, zamiast
korzystać z usług tradycyjnej poczty, tworzą wiadomość, a następnie przy pomocy narzędzi
sytemu operacyjnego umieszczają ją w skrzynce pocztowej adresata. Skrzynka pocztowa
(mailbox) to plik umieszczony na lokalnym komputerze lub serwerze, do którego dostęp
posiada
system operacyjny i
uŜytkownik będący jej właścicielem. Wysłanie listu
elektronicznego polega więc na przeniesieniu pliku z wiadomości od nadawcy do skrzynki
pocztowej adresata (zadanie to wykonuje system operacyjny, lub specjalny program zwany
demonem poczty elektronicznej). W systemach unikso podobnych najpopularniejszym
programem tego typu jest sendmail, w systemach operacyjnych firmy Microsoft jako program
do obsługi poczty elektronicznej moŜe posłuŜyć Exchange 2000 Server.
wp.pl
onet.pl
[email protected]
Serwer uŜytkownika domeny A i B
Komputer uŜytkownika A
MUA
Nadawca
przygotowuje
wiadomość i
przekazuje ja
protokołem SMTP
do serwera, z
którego ma prawo
korzystać
Serwer domeny
uŜytkownika C
poczta.onet.pl
smtp.wp.pl
MTA serwer odbiera
wiadomość od nadawcy
protokołem SMTP
MTA
Serwer odbiera
wiadomość od MTA
nadawcy protokołem
SMTP
pop3.wp.pl
TAK
Czy odbiorca
jest
uŜytkownikiem
lokalnym
NIE
[email protected]
Komputer uŜytkownika B
MUA
Adresat odbiera
wiadomość
Bibliograf
protokołem POP3
lub IMAP
MDA
Wiadomość
jest
dostarczana do
skrzynki
uŜytkownika
MTA
Wiadomość jest kolejkowana
do wysłania, a następnie
wysyłana protokołem SMTP
do serwera odpowiedzialnego
za przyjmowanie poczty dla
domeny odbiorcy
MDA
Wiadomość jest dostarczana
do skrzynki uŜytkownika
Komputer uŜytkownika C
[email protected]
MUA
Adresat odbiera
wiadomość
protokołem POP3 lub
IMAP
poczta.onet.pl
Rys. Schemat przekazywania poczty elektronicznej [3]
Poczta elektroniczna, w większym stopniu niŜ inne usługi sieciowe, współdziała zarówno
z sieciami róŜnego typu, jak i róŜnego rodzaju systemami operacyjnymi. Większość
informacji przesyłanych za pośrednictwem poczty elektronicznej jest w formie tekstu. Jednak
wraz z rozwojem przepustowości sieci, coraz częściej przesyłane są zarówno dźwięk, jak
i obraz. Pozwala na to konwencja MIME (Multipurpose Internet Mail Extension). Standard
ten polega na wysyłaniu wiadomości zawierającej tekst, obraz i dźwięk jako pliku tekstowego
tak, aby mógł on być odczytany w kaŜdym systemie operacyjnym. Przesyłanie informacji
graficznej z wykorzystaniem poczty elektronicznej jest obecnie tańsze i wygodniejsze ni przy
pomocy faksu.[4] [5]
Cechami, dzięki którymi maile zyskały przewagę nad tradycyjnymi listami są:
a) szybkość - list na drugi koniec świata dociera w ciągu kilkunastu sekund
b) niski koszt uŜytkowania - porównanie kosztu wysyłki listu tradycyjną pocztą, faksem i
e-mailem zdecydowanie wypada na korzyść tego ostatniego
c) załączniki - do listu moŜesz dołączyć dowolny plik (np. dokument Worda, Excela,
obraz, dźwięk)
d) dostępność - postęp technologiczny powoduje, Ŝe z konta e-mail moŜna korzystać
w praktycznie dowolnym miejscu
e) przyjazność - oprogramowanie słuŜące do obsługi poczty elektronicznej to aplikacje
proste
w uŜytkowaniu, często bezpłatne i dostępne w wielu wersjach językowych
Do najpopularniejszych programów pocztowych naleŜą: Outlook Express z pakietu
Internet Explorer - dostępny w systemach operacyjnych Windows 95 i wyŜszych,
Netscape Mail&Newsgroups z pakietu Netscape Communicator, TheBat,
Microsoft
Outlook, Eudora i Mozilla. [4]. Niestety wraz z rozwojem tej usługi sieciowej wzrosło
zagroŜenie odnośnie tej drogi komunikacji.
Opis protokołów [6]
Standardy internetowe obejmują Post Office Protocol (POP), Internet Message Access
Protocol (IMAP) oraz Multipurpose Internet Mail Extension (MIME). IMAP wypiera POP;
większość oprogramowania dla protokołu IMAP jest dostępna jako freeware i
wykorzystywana przez pocztę elektroniczną i grupy dyskusyjne. Czołowymi dostawcami
internetowych systemów rozpowszechniania komunikatów są Sun i DEC.
Wschodzący standard IMAP4 kontynuuje ewolucję systemu rozpowszechniania
komunikatów typu klient-serwer, uŜywając wywołań procedur odległych. Serwer IMAP ma
większe moŜliwości niŜ serwer POP jeśli chodzi o obsługę klientów. Programy klienta IMAP
pozwalają uŜytkownikowi zdecydować, jakie kategorie wiadomości pobrać z serwera, gdzie
je przechowywać i co serwer powinien zrobić z przeczytanymi wiadomościami
poszczególnych kategorii.
Funkcją nowych klientów IMAP jest MIME (Multipurpose Internet Mail Extensions).
Funkcja MIME daje uŜytkownikom poczty internetowej moŜliwość załączania plików do
wiadomości. Większość zaawansowanych rozszerzeń MIME pomaga klientom PC wybrać
odpowiednią aplikację do wyświetlenia lub uruchomienia pliku. W połączeniu z protokołem
IMAP specyfikacja MIME pozwala tworzyć bogatsze i uŜyteczne wiadomości.
Standardy internetowe umoŜliwiają współpracę produktów, ich wymienialność oraz
niezaleŜność od dostawcy. Z drugiej strony – oparte wyłącznie na standardach produkty dla
poczty internetowej nie mają takich funkcji jak programy zastrzeŜone.
Standardy internetowe to dziedzina zupełnie podstawowa. Nie ma wśród nich standardów dla
bogatych funkcji oprogramowania do pracy zespołowej, takich jak prowadzenie kalendarzy i
replikacje.
Produkty pocztowe w pełni zgodne z internetowymi standardami są nieco opóźnione
względem innych programów. Muszą bowiem oferować wiele funkcji dla uŜytkowników.
UŜytkownicy chcą produktów, które korzystają ze standardowych katalogów ogólnego
przeznaczenia, a nie zmuszają do tworzenia własnych. Podstawowymi wymaganiami w
zakresie bezpieczeństwa stanie się pewne niebawem uwierzytelnianie, podpis cyfrowy i
szyfrowanie wiadomości. Klienci korporacyjni chcą ponadto zintegrowanej obsługi kalendarzy
i planowania, grup dyskusyjnych na bazie folderów publicznych
i lepszych moŜliwości w zakresie zarządzania. Podobnie usługi katalogowe muszą być bogatsze
niŜ ksiąŜka adresowa, która kiedyś została przyjęta za wzór dla systemów wymiany
komunikatów.
O ile składy wiadomości poczty były kiedyś udostępnianymi plikami, obecnie serwery
muszą uŜywać pojedynczego egzemplarza składu. Innymi słowy – systemy pocztowe
powinny utrzymywać jedną kopię wiadomości przeznaczonej dla wielu odbiorców. Wiele
współczesnych składów wiadomości oferuje moŜliwości transakcyjne, które pozwalają
administratorom przywrócić system do poprzedniego stanu w przypadku odtwarzania po
awarii. Dostawcy tacy jak Lotus, Microsoft i Novell mają bogate
w funkcje produkty oparte o własne, zamknięte protokoły. Wybór zaawansowanych, ale
zastrzeŜonych produktów oznacza poświęcenie takich cech, jak współpraca i wymienialność
produktów oraz niezaleŜność od dostawców. Lotus, Microsoft i Novell mają moduły
programowe zgodne ze standardami takimi, jak IMAP4. s
a) Protokół prostego transferu poczty elektronicznej (SMTP)
Protokół SMTP, zdefiniowany w dokumencie RFC 821, jest zaprojektowany do
niezawodnego
i wydajnego przesyłania poczty elektronicznej. Jest on niezaleŜny od zastosowanego
protokołu transmisji i wymaga jedynie niezawodnego kanału uporządkowanego strumienia
danych. Oznacza to, Ŝe SMTP będzie działał poprzez (na przykład) usługę transportu
protokołu kontroli sieci (NCP), czy niezaleŜną od sieci usługę transportu (NITS), jak równieŜ
poprzez TCP. A zatem protokół SMTP moŜe przekazywać pocztę w obrębie róŜnych
środowisk usług transportu.
Usługa transportu zapewnia środowisko komunikacji międzyprocesowej (IPCE), mogące
obejmować jedną sieć, kilka sieci, lub podsieć. Poczta elektroniczna to komunikacja
międzyprocesowa, mogąca wysyłać pocztę pomiędzy hostami w róŜnych systemach
transportowych, przekazując za pomocą procesu połączonego z dwoma (lub więcej) IPCE.
Kiedy uŜytkownik zgłasza Ŝądanie poczty elektronicznej (tj. wysyła wiadomość poczty
elektronicznej), ma miejsce następujący ciąg zdarzeń:
•
Nadawca SMTP ustanawia dwukierunkowy kanał transmisyjny do odbiorcy SMTP,
który moŜe być albo celem ostatecznym, albo pośrednim.
•
Nadawca SMTP wysyła polecenie MAIL, wskazujące nadawcę poczty.
•
JeŜeli odbiorca SMTP moŜe przyjąć pocztę, to reaguje odpowiedzią OK.
•
Nadawca SMTP wysyła polecenie RCPT, identyfikujące adresata poczty.
•
JeŜeli odbiorca SMTP moŜe przyjąć pocztę dla tego adresata, to reaguje odpowiedzią
OK; jeŜeli nie, to reaguje odpowiedzią odrzucającą tego adresata (ale nie całą
transakcję pocztową, poniewaŜ nadawca i odbiorca mogą wynegocjować kilku
adresatów).
•
Kiedy adresaci zostaną wynegocjowani, nadawca SMTP wysyła dane pocztowe.
•
JeŜeli odbiorca SMTP przetworzy dane pomyślnie, to reaguje odpowiedzią OK.
JeŜeli host wysyłający i odbierający są połączeni z tą samą usługą transportu, to SMTP
moŜe transmitować pocztę bezpośrednio od nadawcy do odbiorcy. W przeciwnym razie
wiadomość transmitowana jest poprzez jeden lub więcej serwerów przekazujących. W takim
przypadku serwer przekazujący SMTP musi otrzymać nazwę ostatecznego hosta docelowego,
jak równieŜ nazwę docelowej skrzynki pocztowej.
SMTP moŜe implementować usługę przekazywania, która jest wykorzystywana, kiedy
ścieŜka określona przez polecenie RCPT jest niewłaściwa, ale odbiorca SMTP zna właściwe
miejsce docelowe. W tym przypadku wysyłana jest jedna z następujących odpowiedzi, w
zaleŜności od toŜsamości nadawcy i odbiorcy oraz od tego, czy odbiorca SMTP moŜe wziąć
na siebie odpowiedzialność za przekazanie wiadomości:
•
251 uŜytkownik nielokalny; przekaŜę do ścieŜki przekazywania
•
551 uŜytkownik nielokalny; spróbuj wykorzystać ścieŜkę przekazywania
b) Protokół odbierania poczty (POP)
Serwery POP działają w ekonomicznym trybie przyjmowania przekazu. Serwery
wymieniają pocztę w Internecie i przechowują pocztę przychodzącą dla swoich klientów.
Oprogramowanie klienta inicjuje połączenie z serwerem i loguje się. Po uwierzytelnieniu
serwer POP przesyła wszystko ze swojej kolejki pod adres klienta, następnie większość
serwerów POP usuwa przekazane klientowi wiadomości z kolejki. Kontakt z serwerem jest
szybki i skuteczny, ale nie jest elastyczny, ani powtarzalny. Utrata dysku twardego na
komputerze klienta oznacza utratę wszystkich wiadomości pocztowych. Nie moŜna równieŜ
przejrzeć otrzymanych wcześniej wiadomości z innego komputera. Niektórzy dostawcy
oprogramowania oferują rozwiązania, w których moŜna skonfigurować serwer, aby nie usuwał
wiadomości.
Protokół POP3, zdefiniowany w dokumencie RFC 1939 uaktualnionym przez RFC
1957 oraz 2449, pozwala klientowi, który moŜe mieć ograniczone zasoby, na dynamiczny
dostęp do skrzynki pocztowej na serwerze i (przewaŜnie) na pobieranie poczty, którą serwer
dla niego przechowuje. Protokół ten wymaga niewielkich zasobów i ma ograniczone
moŜliwości. Zazwyczaj poczta jest pobierana,
a następnie usuwana, ale nie jest manipulowany Ŝaden inny sposób.
Klient, który chce skorzystać z usługi POP3, ustanawia połączenie z portem TCP 110
na serwerze POP3. Kiedy połączenie zostanie ustanowione, serwer POP3 wysyła komunikat
powitalny. Wtedy klient i serwer wymieniają polecenia i odpowiedzi (odpowiednio), dopóki
połączenie nie zostanie zamknięte lub przerwane. Działanie POP3 wykorzystuje stany i
przebiega w następujący sposób: [6]
Połączenie TCP zostaje otworzone, a klient otrzymuje komunikat powitalny.
Sesja wchodzi w stan AUTORYZACJI.
Klient pozwala się zidentyfikować serwerowi, który następnie pozyskuje zasoby
związane ze skrzynką pocztową klienta.
Sesja wchodzi w stan TRANSAKCJI.
Klient Ŝąda, aby na serwerze zostały przeprowadzone działania.
Klient wydaje polecenie QUIT.
Sesja wchodzi w stan UAKTUALNIANIA.
Serwer POP3 uwalnia wszelkie zasoby pozyskane podczas w stanie
TRANSAKCJI i wysyła komunikat poŜegnalny.
Połączenie TCP zostaje zamknięte.
Usługi związane z transmisją danych. [7]
Jednymi z najbardziej znanych są: FTP, NFS, SCP nie sposób omówić wszystkie. Opiszmy
choć FTP.
Przesyłanie plików przez uŜytkowników jest jedną z najczęściej wykonywanych
operacji. Stanowią one znaczną część ruchu w sieciach komputerowych. Protokoły do tego
uŜywane zapewniają dostęp do plików na innych komputerach dwiema drogami: albo przez
kopiowanie (FTP, SCP) albo jako dostęp zintegrowany z systemem operacyjnym, gdzie
operacje dostępu do zdalnych plików są dla uŜytkownika niewidoczne (NFS, CIFS). W obu
jednak przypadkach protokoły muszą uwzględniać prawa dostępu do pliku (nie zawsze
zapisywane w ten sam sposób jak w systemie lokalnym), róŜnice w nazwach plików, róŜnice
w reprezentacjach binarnych (choć czasami konwersja formatów powodowałaby utratę
danych i jest niemoŜliwa). FTP (ang. File Transfer Protocol) był pierwszym z protokołów
przeznaczonych specjalnie do transferu plików. Aby z niego korzystać, uŜytkownik musi
mieć program klienta. Program klienta oferuje uŜytkownikowi dostęp interakcyjny. Program
ten łączy się ze wskazanym serwerem FTP, próbując otworzyć sesję TCP na porcie 21. Przed
wykonaniem jakichkolwiek operacji przesłania danych do lub z serwera, uŜytkownik musi
podać identyfikator w postaci nazwy uŜytkownika i hasła. Serwer i klient FTP uŜywają
odrębnego połączenia do przesyłania danych sterujących oraz odrębnych połączeń do
transmisji kaŜdego z czytanych lub zapisywanych plików z osobna. Połączenie sterujące jest
otwarte tak długo jak trwa sesja FTP. Wszystkie komendy wysyłane do serwera oraz jego
odpowiedzi są przesyłane w kodzie ASCII (tak samo jak w przypadku SMTP, POP3, IMAP).
Do transmisji danych wykorzystywany jest protokół UDP. Klient lokalnie uŜywa dowolnego,
numeru portu niezajętego przez inną aplikację. Wysyła do serwera jego numer i czeka, aŜ
serwer wybierze swój port. Następnie klient otwiera połączenie ze wskazanym portem i
transmituje dane. Jest to tzw. tryb active pracy klienta. Serwer moŜe równieŜ do tego celu
uŜyć zastrzeŜonego numeru portu TCP - 20. Alternatywą trybu active jest passive. W trybie
tym to serwer pracuje tylko i wyłącznie na porcie 20. W trakcie pracy z serwerem uŜytkownik
moŜe specyfikować format zapisywanych lub odczytywanych danych (dane binarne, w kodzie
ASCII). Oprócz tego moŜe wydawać serwerowi cały szereg dodatkowych komend. Ich listę
moŜna uzyskać przez uruchomienie klienta ftp i wydaniu komendy help. Oprócz protokołu
FTP istnieje TFTP (ang. Trivial FTP). W odróŜnieniu od FTP protokół ten nie ma
wbudowanych mechanizmów autoryzacji i nie ma moŜliwości pracy w trybie interakcyjnym z
uŜytkownikiem. Dzięki temu pliki binarne klienta TFTP oraz serwera zajmują niewiele
miejsca w pamięci. Korzystają z tego producenci urządzeń sieciowych, którzy na kliencie
TFTP opierają moŜliwości instalowania nowszych wersji oprogramowania, bezdyskowe
stacje robocze, które przy pomocy TFTP pobierają z serwera pliki z obrazem jądra.
Usługi związane z serwisami informacyjnymi [7]
Sieć Internet z całą pewnością nie byłaby tak atrakcyjna dla uŜytkowników, gdyby nie
zgromadzone w niej informacje i , co waŜniejsze, moŜliwość łatwego dotarcia do nich.
Oczywiście moŜliwość wymiany danych np. poczty elektronicznej, plików jest duŜym
ułatwieniem w pracy, bez którego dzisiaj trudno się obejść. Czasami jednak rozsyłanie tych
samych plików do setek uŜytkowników lub opisywanie pewnych rzeczy jest znacznie
trudniejsze niŜ np. po prostu narysowanie ich. Oczywiście rysunek trzeba zaprezentować
innym uŜytkownikom sieci. Tu z pomocą przychodzi protokół HTTP (ang. Hypertext
Transfer Protocol) oraz usługa WWW (ang. World Wide Web). Dzięki nim oraz językowi
słuŜącemu do tworzenia stron WWW - HTML (ang. Hypertext Markup Language)
uŜytkownicy mogą łatwo przedstawiać wyniki swoich prac, poglądy, firmy przedstawiać
produkty itd. W zasadzie moŜna powiedzieć, Ŝe rozwój sieci Internet w ostatnich latach był
motywowany przez rosnącą popularność serwisów WWW oraz wykorzystywanie protokołu
HTTP do przesyłania danych przez inne aplikacje niŜ tylko przeglądarki stron WWW. Oprócz
HTTP, nieco wcześniej powstał inny protokół NNTP (ang. Network News Transfer Protocol).
Dzięki niemu uŜytkownicy mogą wymieniać poglądy i opinie przy pomocy tekstowych
wiadomości. Podobnie jak w przypadku WWW są one umieszczane na serwerach i czytane
przy pomocy programów-klientów.
Reasumując moŜemy wymienić nie parę ale ogromne ilości usług sieciowych. Podobnie jak
inne usługi związane z sieciami komputerowymi jest to dziedzina bardzo rozwojowa i ciągle
modernizująca się. Celem i rozwojem takich usług zapewne będzie jeszcze lepsze jak i
szybsze udostępnienie informacji poprzez Internet jak i sieci.
[1] www.inventors.about.com
[2] www.multicians.org
[3] www.telekomunikacjapolska.pl
[4] www.komputerswiat.pl
[5] Hermanowska G. Hermanowski W.: 2004 Technologia informacyjna, Wyd. Operon,
Gdynia
[6] Martin W. Murhammer, Orcun Atakan, Stefan Bretz, Larry R. Pugh, Kazunari Suzuki,
David. H. Wood 1998 TCP/IP Tutorial and Technical Overview International Technical
Support Organization
[7] http://wazniak.mimuw.edu.pl/
Opracował: Adam Kaltenbek