Jak działa Internet

Internet, jak wiadomo, jest ogólnoświatową siecią komputerową, ale także jest jednym z wielu standardów sieci lokalnych. Oznacza to, że możemy mieć doskonałą sieć Internetową łączącą, np., tylko dwa komputery. Większość sieci, w których pracują komputery unix-owe jest oparta na Internecie, ale coraz częściej można spotkać również instalacje mieszane (UNIX+PC, UNIX+NOVELL), a nawet czysto pecetowe. Przyjrzyjmy się bliżej, jak to wszystko działa.

Internet, jak wiadomo, jest ogólnoświatową siecią komputerową, ale także jest jednym z wielu standardów sieci lokalnych. Oznacza to, że możemy mieć doskonałą sieć Internetową łączącą, np., tylko dwa komputery. Większość sieci, w których pracują komputery unix-owe jest oparta na Internecie, ale coraz częściej można spotkać również instalacje mieszane (UNIX+PC, UNIX+NOVELL), a nawet czysto pecetowe. Przyjrzyjmy się bliżej, jak to wszystko działa.

Kable, satelity, kuchenki mikrofalowe, telefony

Sieć, jak to sieć - składa się z wielkiej ilości węzłów i jeszcze większej - sznurków je łączących. Wszystko zaczyna się od uogólnionego kabla, łączącego poszczególne stanowiska. Kabel może być zwykłą parą skręconych drutów (UTP - Unshielded Twisted Pair), czymś podobnym do przewodu antenowego (Coax Cable), światłowodem. Stosuje się również łącza satelitarne (na obu końcach anteny, a pośrodku satelita retransmitujący przesyłane dane), linie mikrofalowe. W najprostszym przypadku może to być zwykłe połączenie telefoniczne i transmisja modemowa. Internet nie stawia ograniczeń co do rodzaju bądź prędkości łączy - można spotkać sieci potrafiące przesłać 155 Mb/s połączone z urządzeniami o szybkości 2,5 tys. b/s (60 tys. razy wolniej).

Jeśli mamy już łącza, musimy przekonać poszczególne komputery, by potrafiły się ze sobą porozumiewać.

IP (Internet Protocol) i routery

Te magiczne dwie litery oznaczają podstawowy standard, na którym opiera się cały Internet. Przesyłaniem danych zajmują się specjalne urządzenia (czasem zastępowane przez odpowiednie oprogramowanie) zwane routerami. Ich zadaniem jest odebrać pakiet danych, który nadszedł, sprawdzić adres przeznaczenia i odesłać go dalej w rozsądnym kierunku. Cała inteligencja routerów leży właśnie w umiejętności określania tego kierunku - tak, aby wszystko dotarło na miejsce bezpiecznie i możliwie szybko. Podstawową sprawą jest adres - każde urządzenie pracujące w sieci ma własny, unikalny numer, składający się z czterech liczb (np. 157.25.5.3). Struktura numeru odpowiada strukturze sieci - Internet składa się z wielu połączonych ze sobą sieci o różnej wielkości - całych państw, ośrodków akademickich, sieci miejskich, rozległych dużych sieci dużych firm, małych sieci lokalnych małych firm itd. Ostatnia część (3) identyfikuje pojedynczy komputer (host), kolejna (5) podsieć w większej sieci lokalnej, następna (25) jeszcze większą strukturę itd. Protokół IP potrafi przesłać pojedynczy, niewielki pakiet danych. Jeśli chcemy, a zazwyczaj tak właśnie jest, wysłać coś większego, musimy podzielić to na odpowiednio małe kawałki, poprawnie zaadresować i każdy z osobna wysłać. Jak widać musi istnieć mechanizm, który będzie potrafił tego dokonać, a na dodatek zapewni, że u adresata wszystko zostanie złożone w jedną całość.

TCP (Transmission Control Protocol)

Określa zasady, na jakich długie informacje dzielone są na mniejsze pakiety, numerowane, oznaczane kodami kontrolnymi (pozwalają one na sprawdzenie czy pakiet przy przesyłaniu nie uległ uszkodzeniu), a po dotarciu na miejsce ustawione w dobrej kolejności i sklejone w jedną całość. TCP kontroluje czy wszystkie pakiety doszły, a jeśli nie - żąda od nadawcy ponownego ich przesłania.

TCP/IP - tak przesyłamy informacje

Ważną zaletą tandemu TCP/IP jest bezpieczeństwo przesyłania danych. System zawsze wie czy informacje poprawnie dotarły do odbiorcy, wie co robić w przypadku błędów. Oczywiście, zawsze może zdarzyć się, że adresat po prostu nie jest chwilowo włączony do sieci lub odmawia przyjęcia jakichkolwiek danych - w tym przypadku nadawca dostaje przynajmniej zawiadomienie o problemach.

"157.25.5.3" czy "ikp.atm.com.pl" - nazwy mówią więcej!

Umiemy już przesłać informację z jednego komputera pracującego w Internecie do drugiego. Jak wspomniałem wyżej, każdy z nich ma numer - ale kto chciałby pamiętać tyle cyfr? Jak poznać czy 198.233.15.6 to serwis informacyjny w Holandii, czy nasz kolega w Stanach? Internet, równolegle z numerami posługuje się systemem nazw komputerów - również budowanych w oparciu o pewne zasady. Analizując adres ikp.atm.com.pl możemy domyśleć się, że chodzi o maszynę pracującą w Polsce (pl), której zasosowania zaliczają się do dziedziny komercyjnej (com), pracującej w sieci firmy ATM (atm), a konkretnie jest to serwer Internetu Komercyjnego w Polsce (ikp). Nazwy w Internecie mają co prawda stałą tendencję do wydłużania się, ale mimo to znacznie łatwiej je zapamiętać niż suche numery.

edu, com, gov, waw ...od razu wiem, z kim mówię

W powyższym przykładzie zwróćmy uwagę na przedostatni człon nazwy. Powszechnie przyjętym zwyczajem w Internecie jest zaznaczanie w tym miejscu rodzaju działalności. Najczęściej używane skróty to edu (edukacja), com (biznes), gov (administracja rządowa), net (ważniejsze maszyny obsługujące samą sieć), mil (wojsko). Czasem stosuje się inne, "geograficzne" zasady, określając w przybliżeniu, gdzie znjduje się komputer (waw, czyli warszawa). Podział nazw nie musi odpowiadać podziałowi numerów Internetowych. Ważne jest natomiast, by każda nazwa i każdy numer były unikalne, tak aby nie występowały konflikty przy przesyłaniu danych.

NIC (Network Information Center)

Światowym koordynatorem przyznawanych numerów jest organizacja o sympatycznym skrócie NIC, sugerującym, że w ogóle jej nie ma. Wbrew nazwie NIC zajmuje się rozdawaniem wielkiej ilości dóbr i to za darmo. Organizacja lub firma, która potrzebuje dostać większą liczbę numerów zgłasza się do NIC-u, który sprawdza czy w danym rejonie nie istnieje jakiś zapas wolnych numerów i, jeśli go nie znajdzie - przyznaje pulę odpowiedniej wielkości. Podobnie dzieje się w przypadku nazw - zawsze istnieje ktoś, kto zajmuje się rejestrowaniem i sprawdzaniem unikalności poszczególnych fragmentów nazwy komputera.

Komputery w łączności między sobą posługują się numerami - nazwy służą wyłącznie ludziom, a co więcej powodują wiele kłopotów - jak powiązać numer z nazwą, jak trafić do adresata?

Domain Name Server (DNS) zna wszystkie adresy

Początkowo każdy komputer Internetu musiał przechowywać listę wszystkich istniejących nazw. Po przejęciu sieci przez środowisko akademickie i później, gdy stała się powszechnie dostępna, sposób ten stracił rację bytu. 20 mln nazw w każdym komputerze - to przecież absurd - wystarczy sobie tylko wyobrazić, ile kosztowałoby rozsyłanie nazw nowych użytkowników. Rozwiązanie problemu było proste - jeśli istnieją lokalni administratorzy nazw, mogą również istnieć lokalne spisy nazw komputerów pracujących w małych fragmentach sieci. Name Serwer po otrzymaniu jakiejś nazwy sprawdza najpierw czy ma ją w swoim spisie. Jeśli nie, sprawdza dalej czy jakiś inny komputer nie żądał ostatnio "rozwiązania" tej nazwy (są one przechowywane, na wypadek powtórnej transmisji). Jeśli i tu nic nie znajdzie - zaczynamy szukanie od podstaw (a w zasadzie od prawej strony nazwy). Każdy DNS zna listę największych domen (ostatni człon nazwy - np. .com, .edu, .pl) i wie, który DNS za nie odpowiada. Ten z kolei wie, gdzie znaleźć informacje o mniejszych domenach (np. com.pl, indiana.edu) itd. Widzimy, że proces rozwiązywania nazwy nie jest prosty - bywa, że musi zostać odpytanych kilka Name Serwer'ów, a to wymaga nawiązania kilku sesji łączności i może potrwać nawet kilkanaście sekund. Na szczęście (patrz wyżej), przy powtórnym wywołaniu tej samej maszyny odpowiedź dostajemy natychmiast.

Jeśli z takim trudem szukaliśmy pełnej nazwy i numeru komputera, to pewnie chcieliśmy tam coś wysłać - być może pocztę elektroniczną.

SMTP (Simple Mail Transfer Protocol) - jak przesyła się pocztę

Poczta jest kolejnym, wyższym szczebelkiem w drabinie przesyłania danych (pamiętamy: kable, IP, TCP, SMTP). Dostajemy do ręki dobrze zdefiniowany zestaw zasad: jak adresować korespondencję, który fragment listu jest nagłówkiem, który adresem zwrotnym, co trzeba zrobić, by dostać od adresata potwierdzenie doręczenia przesyłki. Dodatkowo poczta elektroniczna daje nam jeszcze wyższy poziom bezpieczeństwa i pewności przesyłania danych. Przy "zwykłej" transmisji, jeśli adresat nie odebrał informacji, nie mogliśmy nic zrobić. Poczta przesyłana jest na zasadzie podobnej, jak listy polecone - od poczty do poczty, za każdym razem z potwierdzeniem, że przesyłkę przekazano dalej. Jeżeli w danej chwili nie można tego zrobić, to komputer będzie powtarzał próbę transmisji co jakiś czas - do skutku. Dopiero, gdy w ciągu dłuższego czasu (najczęściej trzy dni) nie uda się wysłać przesyłki, zostanie ona odesłana z powrotem do nadawcy z odpowiednią adnotacją o porażce.

Adres poczty elektronicznej składa się z dwóch, a czasem nawet z większej liczby części. Najczęściej ma on postać użytkownik@komputer, gdzie komputer jest dobrze nam znaną nazwą Internetową (taką, jak ikp.atm.com.pl), a użytkownik - nazwą konta na tym komputerze, konta którego właścicielem jest adresat listu.

Jeśli nazwa komputera była podana poprawnie, ale nie istnieje na niej konto o wskazanej nazwie, to list nie tylko odsyłany jest do nadawcy, ale również przekazywany do lokalnego administratora systemu, z nadzieją, że będzie potrafił odtworzyć lub wymyśleć prawidłową nazwę konta użytkownika.

UNIX, PC, Mac, Amiga - bez różnicy

Internet powstał jako sieć łącząca komputery pracujące pod kontrolą systemu operacyjnego UNIX, a TCP/IP jest jednym z podstawowych jego składników. Nie oznacza to, że z Internetu mogą korzystać jedynie użytkownicy UNIX-a. W końcu, komputer nie może sprawdzić, co tak naprawdę wisi na drugim końcu kabla - musi opierać się na zachowaniu tej maszyny i sygnałach, które od niej odbiera. Jeśli PC lub Macintosh potrafi dostatecznie dobrze posługiwać się protokołami takimi jak TCP/IP czy SMTP - nie ma żadnej przeszkody, by mógł pracować w Internecie. Pewną trudność mogą sprawić niejednolite zasady dotyczące, np., nazywania plików (długość nazwy, dopuszczale znaki itp), ale odpowiednie oprogramowanie i z tym potrafi sobie poradzić obcinając co nadmiarowe i zastępując to, co nielegalne. Do każdego typu komputera można dostać programy obsługujące Internetową pocztę elektroniczną, pozwalające włączyć się bezpośrednio do sieci, a w najprostszym przypadku pracować jako terminal maszyny unixowej. Często spotyka się rozwiązania łączące w jednej sieci lokalnej komputery z różnymi systemami operacyjnymi, "poważne" maszyny unixowe mogą wtedy służyć jako serwery plików, centra łączące całą sieć ze światem i zarządzające pocztą elektroniczną. Wszystkie narzędzia Internetu, w tym e-mail, gopher, WWW, telnet, ftp mają swoje odpowiedniki pracujące na innych platformach sprzętowych, a często, ze względu na graficzny interfejs użytkownika, są one znacznie atrakcyjniejsze i wygodniejsze w użyciu niż oryginały.

Internet jest siecią demokratyczną, ze sporym odchyleniem w stronę anarchii, a jedną z jego zasad jest to, że każdy jest oceniany na podstawie swojej aktywności w sieci - obyczajów i kultury jaką prezentuje, a nie na podstawie typu, mocy czy ceny komputera na którym pracuje.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200