Tekst ten zostal opublikowany w 64 i 64 tygodnika sieciowego "Spojrzenia".
_______________________________________________________________________
Eric Behr
PAJECZYNY
=========
Apel Jurka Krzystka o materialy do "Spojrzen" zawieral m.in. prosbe o
artykuly poswiecone sieciom komputerowym. Nie doczekalem sie odzewu,
wiec w wolnych chwilach sam sklecilem z trudem elementarzyk dla
poczatkujacych. Trudnosc polega m. in. na tym, ze nie znam polskiej
terminologii komputerowej, a ta, ktora znam, wydaje mi sie juz nieco
sztuczna i smieszna. Na zyczenie nastapi ciag dalszy.
I. Kilka ogolnikow
Do komunikacji miedzy dwoma komputerami teoretycznie wystarczy kawalek
drutu. Podobnie jest z telefonami -- kiedys kazdy telefon polaczony byl
z centrala osobnym przewodem, a telefonistka na zadanie laczyla dwa
takie druty tworzac bezposrednie polaczenie. Wspolczesne sieci
(telefoniczne czy komputerowe) sa duzo bardziej skomplikowane dlatego,
ze po drodze trzeba bylo rozwiazac nastepujace problemy: niezawodnosc i
szybkosc przekazu, rownolegla transmisja wielu danych jednym przewodem,
itp.
Wszystko to zalatwiane jest w swiecie komputerow przez tzw. protokoly
komunikacyjne, czyli systemy sygnalow i odpowiedzi, dzieki ktorym
`rozmawiajace' komputery upewniaja sie nawzajem, ze wszystko jest OK,
albo ze cos gdzies nawalilo i trzeba dane przekazac jeszcze raz.
Gdy laczymy sie przez modem z komputerem kolegi trzy ulice dalej,
protokol musi martwic sie tylko o bledy w przekazie. Wspolczesne sieci
komputerowe skladaja sie z tysiecy polaczen miedzy milionami komputerow
na calym swiecie, wiec protokoly uzywane na nich sa naturalnie duzo
bardziej skomplikowane. Zaczynaja wchodzic w gre kwestie `adresowania'
(skad niby ten drut czy wlokno szklane ma wiedziec, dla ktorego
komputera przeznaczona jest dana informacja?), opoznien w przekazie
(niektore protokoly rozbijaja dane na mniejsze kawalki, i moga one
przybyc w miejsce przeznaczenia w innej kolejnosci, niz zostaly
wyslane), funkcjonalnosci (komputery powinny moc wspolpracowac na wiele
rozmaitych sposobow), efektywnosci (rozne metody przekazu nadaja sie
najbardziej do roznych zadan), itd. Wszystkim tym martwia sie
specjalisci, ktorzy projektuja i pisza programy uzywane przez nas,
smiertelnikow. Ale kazdy uzytkownik sieci powinien choc metnie zdawac
sobie sprawe ze zlozonosci tego, co dzieje sie w kuluarach.
II. Odrobina historii
Wspolczesne sieci maja swoje poczatki we wczesnych latach 70- tych.
Wtedy wlasnie powstaly zalazki dwoch najwiekszych: BITNET'u i ARPANet'u.
Funkcjonalnosc BITNETu jest dosc ograniczona -- komunikacja sprowadza
sie glownie do poczty elektronicznej i przekazu wiekszych plikow w
specjalnym formacie. Skupimy sie wiec na tej drugiej. ARPANet (nazwa
jest skrotem od `Advanced Research Projects Agency Network') zaczal
dzialac w 1969 roku jako eksperymentalna siec finansowana przez
amerykanski Departament Obrony. Tworcy jej wybrali inne podejscie,
zarowno filozoficzne, jak organizacyjne i techniczne. Rozwoj ARPANetu
byl od poczatku wynikiem eksperymentow i prob prowadzonych przez
uzytkownikow; nie bylo wielu narzuconych z gory regul. Udane
doswiadczenia przyjmowano przez aklamacje jako obowiazujace standardy, a
niewypaly szly na smietnik historii. Zawsze kojarzy mi sie tu metafora
o parkach: sciezki na Polach Mokotowskich zaprojektowal ze szczegolami
urbanista, ktory nigdy chyba tam nie byl; natomiast rozklad brytyjskich
parkow powstaje podobno tak, ze najpierw na pustym placu sieje sie
trawe, a dopiero po kilku miesiacach robi alejki tam, gdzie spacerowicze
ja wydeptali.
Podstawa ARPANet'u jest grupa wypracowanych w ten sposob protokolow
komunikacyjnych. Kazdy komputer, ktory `rozumie' te protokoly, moze
wspolpracowac z innymi wezlami sieci. Protokoly te skonstruowane sa tez
tak, zeby stanowily cos w rodzaju uniwersalnych klockow, z ktorych
budowac mozna zlozone struktury -- protokoly sluzace nowym
zastosowaniom. Rozwoj ARPANet'u byl wykladniczy. Jego pionierzy
sadzili, ze nie warto zapewniac na sieci miejsca na wiecej, niz kilkaset
wiekszych wierzcholkow; w tej chwili jest ich ponad milion. Gdyby nie
elastycznosc projektu i ciagle przyjmowanie nowatorskich rozwiazan,
ARPANet bylby w tej chwili anachronizmem.
W latach 80-tych ARPANet podzielil sie na czesc scisle wojskowa,
oddzielona bariera tajemnicy, oraz publiczna, laczaca glownie
uniwersytety. Kazda nowopowstala siec, ktorej komputery znaly jezyk
ARPANet'u, i ktora fizycznie podlaczyla sie do juz istniejacej czesci,
stawala sie fragmentem tej sieci, okreslana ogolna nazwa `Internet'.
Nie ma ona struktury organizacyjnej. Nad sprawami technicznymi czuwaja
grupy ochotnikow obarczone odpowiedzialnoscia za nowe rozwiazania.
Infrastruktura utrzymywana jest przez rozmaite firmy i organizacje
wynajete w tym celu przez sponsorow typu National Science Foundation.
Jedna z zelaznych regul ARPANet'u a pozniej Internet'u bylo to, ze ta
publicznie fundowana siec nie moze sluzyc komercjalnym interesom
jednostek. W miare przejmowania segmentow sieci przez organizacje nie
zwiazane z rzadem, ograniczenie to jest coraz bardziej oslabiane.
Istnieja juz firmy, ktorych dochod wywodzi sie w calosci ze sprzedazy
klientom dostepu do Internetu. Mozemy spodziewac sie tego, ze w
bliskiej przyszlosci polaczenie z Internetem mozna bedzie wykupic na
poczcie tak, jak abonament telefoniczny.
III. Funkcje sieci
Jednym z najbardziej prymitywnych zadan sieci laczacej komputery jest
przekazywanie poczty elektronicznej. W ogromnej wiekszosci wypadkow
polega to na przeslaniu z jednego komputera do drugiego tekstu w
standardowym formacie ASCII. Standard ten, opracowany bardzo dawno
temu, zawiera podstawowe litery, cyfry, znaki, i niewiele poza tym.
Niedawno zakonczyly sie prace (i klotnie) nad nowymi systemami
pocztowymi takimi, jak ISO X.400, pozwalajacymi na przekazywanie
bogatszych informacji: plikow z dzwiekami lub obrazami, skomplikowanych
alfabetow, itp. Poczekamy kilka lat zanim te nowe umowy znajda szerokie
zastosowanie. Dopoki to nie nastapi, na Internecie panowac bedzie
protokol zwany SMTP (Simple Mail Transfer Protocol).
Poczta nie jest zbyt dobrze dostosowana do przekazu duzych zbiorow
danych. Przesylki dluzsze niz kilkanascie kilobajtow sa rzadkoscia.
Niektore systemy w ogole nie potrafia sobie z nimi poradzic. Do
przesylania duzych zbiorow danych uzywane sa inne metody. Maja one
zwykle dodatkowa zalete -- potrafia przekazac dane o bogatszej
strukturze, niz zwykle ASCII. Zapewnia to m.in. kolejny popularny
protokol, FTP (File Transfer Protocol).
Siec moze tez byc uzyta do tego, aby jeden komputer podlaczyc do
drugiego tak, jak podlacza sie terminal. Bedac na wakacjach w Honolulu
mozna skontaktowac sie ze swoim komputerem w Australii tak, jakby laczyl
je zwyczajny drut. Mozna w ten sposob korzystac tez z publicznych
zbiorow danych, jak np. niektore katalogi bibliotek uniwersyteckich.
Zapozyczajac nazwe od najbardziej popularnej implementacji tej funkcji
(znow na Internecie), okreslac ja bedziemy jako `Telnet'.
Poza wspomnianymi podstawowymi rodzajami polaczen, istnieja tuziny
innych, bardziej wyspecjalizowanych protokolow, o ktorych nie bedziemy
szczegolowo pisac. Dobrym przykladem jest tu FSP, zastepujacy w
niektorych sytuacjach ftp, albo gopher, ktory szybko staje sie
standardowa metoda rozpowszechniania informacji wszelkiego rodzaju:
adresow pocztowych, dostepu do baz danych, nawet dzwiekow i obrazow.
Nieocenionym zrodlem informacji sa tez grupy dyskusyjne, ktore
rozpowszechniane sa czesciowo przy pomocy protokolu NNTP ("Network News
Transfer Protocol").
Eric Behr
[dokonczenie w nastepnym numerze "Spojrzen"]
_______________________________________________________________________
Eric Behr
PAJECZYNY (dokonczenie)
=========
IV. Adresy
Wspominalismy juz, ze kazda siec komputerowa musi poslugiwac sie jakas
metoda jednoznacznej identyfikacji poszczegolnych komputerow. Internet
posluguje sie systemem, w ktorym kazdy wezel sieci jest oznaczony
symbolem skladajacym sie z czterech `oktetow', czyli osmiobitowych slow.
W tlumaczeniu na normalny system dziesietny, wyglada to np. tak:
138.87.132.21.
Poniewaz komputery sa mimo wszystko dla ludzi, nie musimy zwykle
pamietac tych liczb. Dobrze dzialajacy system umie tez poslugiwac sie
nazwami symbolicznymi, np. spider.math.ilstu.edu. Symbole takie mozna
dosc latwo odcyfrowac, czytajac je od tylu. Ostatni fragment oznacza
bardzo szeroka kategorie wezlow (tzw. `top-level domain'): np. `edu'
zarezerwowane jest dla uniwersytetow, `gov' oznacza instytucje rzadowa,
`com' -- jednostke komercjalna, `mil' -- wezel wojskowy. Od kiedy
Internet rozrosl sie poza granice USA, istnieja tez kategorie
oznaczajace kraje, np. `pl' przydzielono Polsce.
Pozostala czesc adresu symbolicznego zwykle reprezentuje coraz to nizsze
poziomy hierarchicznej struktury Internetu: ilstu.edu znaczy Illinois
State University, math.ilstu.edu to komputery na naszym wydziale
matematyki, a wreszcie spider.math.ilstu.edu jest nazwa nadana
komputerkowi czuwajacemu nad wydzialowa siecia.
W praktyce musimy czasem poslugiwac sie adresami liczbowymi. Nazwy
symboliczne rozpoznawane sa dzieki mechanizmowi zwanemu DNS, czyli
`Domain Name System'; polega on na tym, ze maszyna, ktora nie wie co
oznacza spider.math.ilstu.edu, usiluje zdobyc te informacje od kilku
wiekszych pobliskich komputerow; jesli one tez nie znaja adresu
liczbowego, to pytaja o to swoich sasiadow, itd, na zasadzie sztafety.
Jasne jest, ze system taki bedzie funkcjonowal prawidlowo tylko wtedy,
gdy polaczenia sa szybkie i stabilne, bo wszystko to musi sie dziac w
ciagu kilku sekund; no i oczywiscie wtedy, gdy administratorzy
sasiadujacych systemow znaja sie na rzeczy i wspolpracuja ze soba.
Wszystko to czesto zawodzi w przypadku polaczen z nowymi sieciami.
Dlatego warto miec w zapasie nie tylko adresy symboliczne, ale tez
liczbowe. Mozna je znalezc na wiele sposobow; np. uzywajac Unix'owych
programow arp i nslookup, albo korzystajac z bazy danych WHOIS na wezle
nic.ddn.mil (192.112.36.5) i innych.
V. Dzungla systemow
Od lat producenci komputerow mieli za punkt honoru wyposazenie swojego
produktu w najlepszy, najszybszy, najpotezniejszy system operacyjny.
Mamy w zwiazku z tym VMS i Ultrix; SunOS i Solaris; KRONOS i SCOPE;
Mach, MS DOS, OS-2, Xenix, System 7 i A/UX; VM, MVS i AIX; Unicos i
HPUX. Komputery oparte sa tez na rozmaitych procesorach: od takich za
cene skarpetek, do tych chlodzonych freonem i pozerajacych kilowaty
energii elektrycznej. Wszystkie te systemy znalezc mozna na Internecie,
bo na kazdym mozna zainstalowac specyficzna wersje protokolu TCP/IP.
W najlepszej sytuacji sa ci, ktorzy uzywaja ktorejs z wariacji systemu
Unix, bo prawie kazda ma TCP/IP wbudowany w standardowe oprogramowanie.
W innych przypadkach niezbedny jest albo wysilek (instalacja darmowych
implementacji TCP/IP), albo (czesto pokazny) wydatek.
Bardzo chcialbym dac nowicjuszom gotowy przepis na uzywanie Internetu,
ale nie jestem oczywiscie w stanie opisac wszystkich sytuacji i
procedur. Tam, gdzie Unix wymaga wstukania `ftp', DOS zazyczy sobie
najpierw inicjalizacji `miedzymordzia' sieciowego i pakietu TCP/IP, a
posiadacz Macintosha bedzie musial pstryknac dwa razy mysza w obrazek
programu XferIt... Opiszemy wiec wspolny mianownik -- jak poslugiwac
sie tymi programami w najbardziej prymitywnym wcieleniu, tj. przy pomocy
wystukiwanych na klawiaturze rozkazow (`command line interface').
Do przeprowadzenia ponizszych doswiadczen trzeba miec oczywiscie dostep
do Internetu: miec wlasne konto na jakims wiekszym komputerze bedacym
wezlem na tej sieci, albo mikrokomputer wyposazony w TCP/IP i podlaczony
do swiata zewnetrznego, itd. Niezbedne jest tez naturalnie odpowiednie
oprogramowanie.
VI. Do dziela
Opiszemy teraz bardziej szczegolowo jak korzystac z telnetu i ftp.
Podstawowa znajomosc tych dwoch funkcji pozwala na zdobycie innych
informacji i szczegolowych instrukcji dotyczacych innych protokolow,
wiec bedzie to dla nas dobry poczatek.
-- *** --
Przypomnijmy, ze telnet sluzy do polaczenia sie z innym komputerem tak,
jakby moj byl po prostu terminalem (`koncowka'). W wiekszosci wypadkow
ta druga maszyna bedzie chciala przeprowadzic normalny `login', czyli
zapyta o nazwe konta i haslo. Skazani wiec jestesmy na eksperymenty z
nielicznymi komputerami, ktore pozwalaja na publiczny dostep przy pomocy
telnetu.
Przyklad: maszyna e-math.ams.com, prowadzona przez Amerykanskie
Towarzystwo Matematyczne, akceptuje fikcyjnego uzytkownika e-math, z
haslem e-math. Piszemy `telnet e-math.ams.com'; po chwili pojawi sie
notatka o nawiazanym polaczeniu. Odpowiadamy `e-math' na pytanie o
login, `e-math' na pytanie o haslo. Nastepnie pilnie czytajac
instrukcje na ekranie uzeramy sie z antycznym systemem, ktory pozwala
nam na obejrzenie informacji o kolegach-matematykach, sciagniecie numeru
Biuletynu AMS, itd. Wreszcie przerywamy polaczenie wg. instrukcji na
ekranie, a w niektorych systemach piszac `logout', `exit', `signoff',
`logoff', albo jedna z jeszcze stu wariacji, ktorymi pokarali nas
programisci systemowi.
Po tym przezyciu jasne dla kazdego bedzie to, jak wazna jest emulacja
(`udawanie'?) odpowiedniego terminala. Maszyny wymieniaja miedzy soba
ciag prostych informacji, ktore musza zostac poprawnie interpretowane.
Niektore z tych sygnalow musza zamienic sie w znaki wyswietlane na
ekranie, inne musza przesunac w odpowiednie miejsce kursor, itd.
Porozumiewajace sie maszyny musza `dogadac sie' na temat tego, jaki
terminal udaja. Najbardziej popularnym typem jest obecnie `vt100',
dawno temu zdefiniowany przez Digital Equipment Corporation. Na pytanie
o rodzaj terminala najbezpieczniej jest podac wlasnie ten.
Niektore wieksze komputery produkowane przez IBM uzywaja zupelnie innego
rodzaju terminala, a mianowicie rodziny 3270. Zwykly telnet nie poradzi
sobie z ta emulacja; potrzebna jest jego odmiana, wystepujaca zazwyczaj
pod nazwa tn3270. Wiele dostepnych na sieci katalogow bibliotecznych
wymaga wlasnie tego typu emulacji.
-- *** --
Zabieramy sie teraz za ftp, czyli `file transfer protocol'. Jak juz
wspomnielismy, sluzy on na Internecie do szybkiego i niezawodnego
przesylania duzych plikow tekstowych lub binarnych. Dla przecietnego
smiertelnika najciekawsze jest tu korzystanie z publicznych archiwow, do
ktorych mozna podlaczyc sie przy pomocy `anonimowego ftp'. Wielu
operatorow systemow na Internecie tworzy fikcyjnego uzytkownika zwanego
`ftp', i nie zabezpiecza dostepu do jego plikow specjalnym haslem. Do
takiego konta moze podlaczyc sie przy pomocy ftp kazdy uzytkownik sieci.
Podkreslmy tu od razu jedna z podstawowych zasad kurtuazji sieciowej:
archiwa te sa czesto prowadzone na komputerach, na ktorych jednoczesnie
pracuja lokalni uzytkownicy, wiec nie nalezy ich obciazac w czasie
normalnych godzin pracy.
Przyklad: jedno z najwiekszych archiwow, zawierajace programy dla
rozmaitych komputerow i dokumenty na wiele tematow, prowadzone jest
przez Washington University w St. Louis. Otwieramy polaczenie piszac
`ftp wuarchive.wustl.edu' i po chwili widzimy pytanie o uzytkownika
(`ftp' albo `anonymous'), i o haslo. Niektore systemy zadowola sie tu
dowolna odpowiedzia, a inne wymagaja prawdziwego adresu pocztowego. Ja
na przyklad podaje haslo `behr@math.ilstu.edu', albo skrocona forme
`behr@'.
Po zaakceptowaniu polaczenia, `server' ftp oczekuje naszych polecen.
Zawartosc archiwum mozna obejrzec wstukujac `dir', co wyswietli liste
zwyklych plikow i kartotek (`directories') nizszego poziomu. Na
przyklad `cd usenet' i `dir' pokaze m.in.:
drwxrwxr-x 12 root archive 512 Jun 25 1992 bionet.molbio
drwxrwxr-x 8 root archive 512 Jan 8 02:04 comp.archives
drwxrwxr-x 3 root archive 512 Jun 25 1992 comp.benchmarks
drwxrwxr-x 6 root archive 512 Jan 18 1992 rec.food.recipes
Przenosimy sie teraz do innej kartoteki przy pomocy komendy `cd
rec.food.recipes/recipes/misc', i znow robimy `dir', albo `ls'.
Organizacja archiwow przypomina odwrocone drzewo z wieloma galeziami.
Czesto dotarcie do interesujacych nas informacji wymaga przejscia
kilkunastu takich rozgalezien. Mozemy zawsze zorientowac sie gdzie
jestesmy piszac `pwd', przeniesc sie o poziom wyzej (`cd ..' albo
`cdup'), lub skoczyc szybko do najwyzszego poziomu: `cd /'. Gdy
wreszcie mamy przed soba upragniony plik, np. `pierogi', sciagamy go na
nasz wlasny dysk piszac `get pierogi'.
Pliki komputerowe wystepuja w wielu postaciach; m.in. sa pliki tekstowe
(ASCII), w ktorych osmy bit kazdego `bajtu' (litery) nie ma znaczenia.
Normalnie ftp przekazuje pliki obcinajac wlasnie ten bit. Sa tez jednak
pliki `binarne', w ktorych osmy bit sie liczy. Przed przesylaniem
takiego pliku musimy kazac ftp odpowiednio sie zachowac, piszac
`binary', albo w skrocie `bin'. Gdy z kolei mamy do czynienia z
nieznanym systemem, i zamierzamy przeslac plik tekstowy, lepiej jest
wylaczyc przekaz binarny piszac `ascii'. Rozpoznawanie, ktory plik w
archiwum jest ASCII, a ktory jest binarny, wymaga nieco doswiadczenia.
Bezpieczniej jest zawsze uzywac przekazow binarnych. Wlasciciel systemu
zwykle daje nam wskazowki na temat typu pliku przy pomocy pewnych
standardowych skrotow dodawanych do nazwy:
.txt -- zwykly tekst (ASCII)
.bin -- plik binarny (program, itp.)
.Z -- plik poddany kompresji, glownie pod Unixem (binarny)
.tar -- `tape archive', kilka plikow zgrupowanych przy pomocy
Unix'owego programu tar (binarny)
.arc -- spakowane archiwum pochodzace zapewne z PC (binarny)
.zip -- jak wyzej
.zoo -- jak wyzej; dostepne takze na Atari i innych maszynach
.hqx -- plik z Macintosha zakodowany przez BinHex (ASCII)
.sit -- archiwum sporzadzone na Macintoshu przez program
`StuffIt' (binarny)
.ps -- program w jezyku drukarek, PostScript (ASCII)
.gif -- plik graficzny w formacie GIF (binarny)
.jpg -- plik graficzny w formacie JPEG (binarny)
Na przyklad `ftpd.tar.Z' to `scisniete' archiwum, ktore musi byc
przekazane binarnym ftp, a nastepnie odkodowane przez `uncompress' i
odpakowane przy pomocy `tar'. Natomiast `bbedit.sit.hqx' to archiwum
pochodzace z Macintosha, ktore mozna przeslac przy pomocy zwyklego ftp,
a pozniej odkodowac `BinHex'em' i odpakowac programem `StuffIt'.
Jak widac permutacji jest bardzo duzo; powyzsza lista jest tez bardzo
niekompletna. Czytelnik powinien sie tu zainteresowac szczegolnie
waznymi plikami, ktore mozna znalezc w setkach archiwow, a mianowicie
`FAQ' czyli `Frequently Asked Questions'. Listy takich podstawowych
pytan na rozmaite tematy sa zbierane przez ochotnikow i publikowane na
sieci wieloma metodami, m.in. jako pliki dostepne przez anonimowe ftp.
VII. Szukajcie, a znajdziecie
Zlokalizowanie konkretnego pliku w sieciowym oceanie informacji nie jest
proste. Jesli wiemy, ze nazywa sie on FTP.FAQ i jest na komputerze
tirana.berkeley.edu w kartotece /pub/VARIA/polish, to oczywiscie nie ma
problemu. Co innego, gdy np. szukamy `jakiegos programu, dzialajacego
pod MS-DOS, do sterowania klawiatura MIDI'...
Nieocenionym narzedziem jest tu `archie', czyli program, ktory laczy sie
z `serwerami archie'; te z kolei co kilka dni zbieraja dane o zawartosci
tysiecy archiwow. Archie przeszukuje te bazy danych wg. podanych slow
kluczowych, i wyswietla rezultaty na ekranie. Do uzywania archie nalezy
zainstalowac ten program na lokalnym komputerze (istnieja wersje
dzialajace pod wieloma systemami), albo podlaczyc sie przy pomocy
telnetu do jednego z `serwerow', np. archie.ans.net, jako uzytkownik
`archie'. Tej drugiej metody nie nalezy stosowac na dluzsza mete.
Szukanie programow przy pomocy archie wymaga wprawy w odpowiednim
doborze slow kluczowych. Czesto tez interesujace nas informacje moga
znajdowac sie w archiwum, ktore nie uczestniczy w tym systemie. Wtedy
musimy uzyc innych metod, np. systemu WAIS, gopher'a albo po prostu
bezposredniego pytania w jednej z grup dyskusyjnych `Usenet news'.
Eric Behr
_______________________________________________________________________
Wyszukiwarka
Podobne podstrony:
Jak stworzyć tekst
Java Tęczowy tekst
tekst 046
Godzinki ku czci Św Michała Archanioła tekst
Jęazykoznawsto ogólne model sens tekst
RozZaj10 tekst Schaffer
tekst
DOSKONALENIE PRZEPŁYWU MATERIAŁÓW W U KSZTAŁTNEJ LINII MONTAŻU
Przystąpmy do szopy (tekst)
wyklad10 08 tekst
więcej podobnych podstron