Zasady działania Internetu
Internet to sieć komputerowa o światowym zasięgu łącząca sieci lokalne, sieci rozległe i wszystkie komputery do nich podłączone. Internet nie jest jedną siecią, lecz związkiem wielu mniejszych sieci. Głównym założeniem było, aby każdy komputer pracujący w dowolnej części Internetu mógł nawiązać łączność z dowolnym innym użytkownikiem sieci. Kluczową rolę w takiej strukturze odgrywają tzw. "routery" czyli mechanizmy zajmujące się przesyłaniem pakietów danych z jednej części sieci do innej.
Routery mogą mieć postać sprzętową lub występować jako programy dla Linuxa, czy Windows. Router jest punktem, który łączy ze sobą dwie sieci i każda z tych sieci interpretuje go jako swój element. W każdej części Internetu zainstalowany jest co najmniej jeden router zbierający wszystkie pakiety danych, które nie mogą być dostarczone w ramach danej sieci lokalnej i przekazuje je dalej, po czym następny router sprawdza, czy dane adresowane są do jego sieci - jeśli tak, to przekazuje je do serwera, a jeśli nie, to przesyła kolejnemu routerowi i tak do skutku, aż dane dotrą do adresata. Jeżeli jedna z dołączonych podsieci ulegnie awarii lub będzie niedostępna z powodu przeciążenia, to pakiety mogą zostać skierowane do adresata (i dotrzeć do niego) inną drogą. W ten sposób Internet spełnia najważniejszy warunek, jaki pierwotnie narzuciła mu armia Stanów Zjednoczonych: może funkcjonować dalej, pomimo uszkodzenia poszczególnych podsieci. Inną ważną cechą jest to, że choć poszczególne podsieci różnią się od siebie sposobem komunikacji, rodzajem osprzętu mogą się one komunikować ze sobą bez przeszkód dzięki odpowiednim protokołom i standardom. Protokoły internetowe dbają o to, aby odmienne właściwości poszczególnych podsieci były niewidoczne dla aplikacji internetowych.
Podstawowym protokołem w sieci Internet jest protokół TCP/IP. Najniżej w hierarchii stoi protokół IP (Internet Protocol). Pakietowy sposób przesyłu danych wymaga, aby informacje przesyłaną podzielić na ściśle określone części - pakiety. Każdy z takich pakietów, dzięki protokołowi IP, otrzymuje nagłówek, który pełni rolę etykiety adresowej. Znajdują się tam takie informacje jak: adres nadawcy i odbiorcy, długość pakietu, suma kontrolna i inne. Z danych tych korzystają m.in. routery, aby właściwie dostarczyć dane do adresata. Jednak protokól IP "nie interesuje się" co się dzieje z pakietami po wysłaniu, dlatego potrzebny jest dodatkowy protokół TCP (Transmission Control Protocol), który jest nadrzędny wobec IP i dba o to, aby pakiety dotarły w całości do adresata. Do każdego pakietu dołącza on swoją część nagłówka, w której m.in. numeruje wszystkie wychodzące pakiety i oczekuje odpowiedzi od serwera adresata czy wszystkie przesyłki dotarły, jeżeli nie, ponawia wysyłanie zagubionych części. W nagłówku TCP znajduje się również nr portu, który identyfikuje określoną usługę w sieci. Po dotarciu do serwera docelowego, serwer właśnie po tym numerze stwierdza, który z programów ma zająć się obsługą otrzymanych danych.
Adresem każdego komputera w sieci Internet jest czteroliczbowy identyfikator - unikalny w skali światowej, zwany adresem IP (np. 195.164.188.161) - gdzie każda z liczb może przybierać wartość od 0 do 255. W związku z tym, że korzystanie z tak zapisanych adresów jest dość uciążliwe, wprowadzono sposób adresowania bardziej przystępny dla ludzi. Każdy z serwerów ma określoną nazwę (np. zszosw) oraz utworzono drzewiastą strukturę domen, w których serwery zostały umieszczone (np. zsosw.petex.com.pl) Poszczególne domeny oddzielone są od siebie kropkami, tak jak w adresie IP. Na samym szczycie tego systemu znajdują się "Domeny Najwyższego Poziomu" (Top-Level-Domains). Jest to ostatnia część adresu (z prawej strony). Do tej kategorii należą domeny grupujące serwery wg ich znaczenia (treści):
.com - instytucje komercyjne, np. sony.com (to w USA)
.edu - instytucje edukacyjne, np. fuw.edu.pl (w Polsce)
.gov - instytucje państwowe, agendy rządowe
.mil - organizacje wojskowe
.net - firmy oferujące usługi sieciowe
.org - organizacje niehandlowe
lub pochodzenia geograficznego np.:
.pl - Polska
.de - Niemcy
.it - Włochy
.fr - Francja
.au - Australia
.tw - Tajwan
.jp - Japonia
Domeny te zdefiniowane są na stałe i nie można do nich dodawać kolejnych elementów. Jeżeli więc ktoś chce utworzyć nową domenę musi umieścić ją w ramach jednej z domen TLD. Wtedy domena ta jest Domeną Drugiego Poziomu np. (com.pl, wp.pl, nasa.gov). W taki sam sposób tworzy się domeny trzeciego (petex.com.pl, agh.edu.pl), czwartego (zszosw.petex.com.pl, zeus.polsl.gliwice.pl) itd... poziomu. W związku z tym, że programy posługują się zapisem cyfrowym (adres IP), a ludzie zazwyczaj za pomocą adresów domenowych (tekstowych) potrzebne jest oprogramowanie, które potrafi zamienić - przetłumaczyć pierwszy zapis na drugi i odwrotnie. Rolę taką spełnia usługa zwana DNS (Domain Name System). Po wpisaniu np. do przeglądarki adresu w postaci domenowej program łączy się z serwerem DNS i pobiera z niego cyfrową wersję adresu. Dopiero wówczas przystępuje do połączenia z danym komputerem.
W przypadku adresowania poczty elektronicznej do adresu komputera dodajemy jeszcze identyfikator (login) użytkownika - adresata pracującego na danej maszynie, łącząc go z adresem komputera za pomocą znaku @ np. janek@zszosw.petex.com.pl, co jest oczywiście równoważne zapisowi janek@195.164.188.161
W celu nawiązania komunikacji z serwerem internetowym potencjalny klient musi znać nie tylko jego numer IP, ale również numer portu. Z tego względu poszczególne numery portów z przedziału do 0 do 1024 są na stałe przyporządkowane różnym usługom internetowym (takim jak FTP czy IRC).
Najpopularniejsze usługi i ich numery portów:
Port |
Protokół |
Zadanie |
20 i 21 |
FTP |
Transmisja danych |
23 |
Telnet |
Zdalne połączenie |
25 |
SMTP |
Wysyłanie listów e-mail |
80 |
HTTP |
Transmisja stron WWW |
110 |
POP3 |
Pobieranie przesyłek e-mail |
119 |
NNTP |
Usenet - listy dyskusyjne |
6667 |
IRC |
Internetowe rozmowy na żywo |
Danych tych nie trzeba pamiętać, gdyż programy same wiedzą, z jakim portem serwera mają się łączyć. Numer portu należy podać jedynie wtedy, gdy usługa uruchomiona jest na niestandardowym porcie. Metody takie stosuje się, aby ukryć określone usługi przed zwykłymi użytkownikami. W przypadku, gdy serwer WWW uruchomiony jest nie na 80 lecz np. na 7436 porcie, dostęp będą mieli tyko ci, którzy wskażą przeglądarce ten właśnie port wpisując np. : http://zszosw.petex.com.pl:7436.