Linux NET-3-HOWTO, Linux w sieci : Informacje ogólne na temat pracy Linuksa w sieci.
Następna strona
Poprzednia strona
Spis treści
4. Informacje ogólne na temat pracy Linuksa w sieci.
4.1 Krótka historia rozwoju modułów sieciowych jądra Linuksa.
Opracowanie zupełnie nowej implementacji protokołu tcp/ip, pracująego
równie dobrze jak inne istniejące implementacje nie było łatwym
zadaniem. Decyzja aby napisać wszystko od zera została podjęta w
czasie gdy istniała niepewność, że istniejące implementacje mogą
zostać zaprzepaszczone przez restrykcyjne licencje, z powodu
toczącej się sprawy sądowej rozpoczętej przez U.S.L. i w momencie gdy
sieć była przepełniona świeżym entuzjazmem aby zrobić to inaczej, a
być może nawet lepiej niż zostało do tej pory zrobione.
Pierwszym ochotnikiem przewodzenia w pracach nad rozwojem modułów
jądra do obsługi sieci był Ross Biro
<biro@yggdrasil.com>. Wykonał prostą i niepełną, lecz w
większości przypadków działającą implementacje podstawowych procedur,
uzupełnionych przez procedury sterownika karty sieciowej ethernet
WD-8003. To wystarczyło, aby przyciągnąć rzeszę ludzi, umożliwić im
testowanie i eksperymentowanie. Niektórm udało się nawet doprowadzić
do włączenia swoich komputerów do Internetu.
Nacisk społeczności Linuksowej na rozwój obsługi sieci przez
jądro wciąż wzrastał. Gdy korzyści i stysfakcja z wykonywanej pracy
przestały rekompensować w wystarczającym stopni poświecenia i odpieranie
rosnących nacisków, Ross zrezygnował z roli prowadzącego budowę
oprogramowania sieciowego. Jego wysiłki poświęcone na stworzenie w tak
burzliwych czasach czegoś użytecznego stały się katalizatorem
przyszłych prac i należy je zaliczyć do najważniejszych czynników,
które przyczyniły się do osiągnięcia sukcesu.
Orest Zborowski <obz@Kodak.COM> dołączył do jądra oryginalny interfejs
programistyczny gniazd BSD. Był to ogromny krok naprzód, ponieważ
umożliwiał proste przenoszenie na Linuksa wielu istniejących
programów sieciowych, bez konieczności ich nadmiernej modyfikacji.
Mniej więcej w tym samym czasie Laurence Culhane
<loz@holmes.demon.co.uk> opracował pierwszy sterownik protokołu
SLIP. Wiele osób, które nie posiadały dostępu do sieci Ethernetowych
otrzymało możliwość eksperymentowania z nowym oprogramowaniem
sieciowym. Ponownie część osób wykorzystała te oprogramowanie do
przyłączania się do Internetu. W ten sposób uzmysłowili reszcie
jakie możliwości otworzyłyby się przed Linuksem, gdyby tylko posiadał
pełną obsługę sieci. Zwiększyło również liczbę osób aktywnie
wykorzystujących i eksperymentujących z istnejącym oprogramowaniem.
Jednym z ludzi, który równie aktywnie pracował nad zbudowaniem modułów
obsługi sieci w jądrze Linuksa był Fred van Kempen
<waltje@uwalt.nl.mugnet.org>. Po krótkim okresie niepewności
wywołanym rezygnacją Rossa Biro z prowadzenia projektu, Fred
zaoferował swój czas i umiejętności, i przyjął tę rolę w zasadzie bez
żadnych sprzeciwów. Fred miał ambitne plany na temat kierunków rozwoju
oprogramowania obsługi sieci w jądrze Linuksa i aktywnie je
realizował. Stworzył oprogramowanie znane pod nazwą NET-2
(oprogramowanie Rossa nosiło nazwę NET), z którego wielu ludzi
korzystało przez długi czas. Fred wprowadził wiele inowacji do
programu rozwoju oprogramowania, dynamiczny interfejs urządzeń, obsługę
protokołu AX.25 (Amateur Radio) i bardziej modułowe implementacje
obsługi funkcji sieciowych. Oprogramowanie NET-2 było wykorzystywane
przez stale rosnącą grupę ludzi, w miarę jak świat dowiadywał się, że
coś takiego istnieje. Oprogramowanie sieciowe nadal było
rozpowszechniane w postaci łatek do standardowej dystrybucji jądra i
przez długi czas nie było rozpowszechniane razem z jądrem Linuksa.
NET-FAQ i późniejszy NET-2-HOWTO opisywały całkiem skomplikowana
procedurę uruchomienia sieci pod Linuksem. Fred skoncentrował się na
wprowadzaniu nowości do standardowej implementacji sieci, a to
zabierało czas. Społeczność użytkowników zaczynała się niecierpliwić
oczekując na coś co działałoby bezbłędnie i zadawalałoby 80% z nich.
I podobnie jak w przypadku Rossa, naciski na Freda, jako
koordynatora projektu cały czas wzrastały.
Alan Cox <iialan@www.linux.uk.org> zaproponował rozwiązanie
zaistniałej sytuacji. Zaproponował, że weźmie kod napisany przez Freda
i przetestuje go. W ten sposób zapewni jego stabilność
satysfakcjonując grono niecerpliwych użytkowników, uwalniając tym
samym Freda od licznych nacisków i umożliwiając mu dalszą pracę nad
rozwojem oprogramowania. Tak też zrobił, co zakończyło się pełnym
sukcesem. Pierwsza wersja oprogramowania stworzona przez Alana nosiła
nazwę NET-2D (Debugged - odpluskwiony). Oprogramowanie pracowało
stabilnie w większości standardowych konfiguracji i większość
użytkowników była wreszcie szczęśliwa. Alan bez wątpienia posiadał
umiejętności i pomysły, które chciał zrealizować ku pożytkowi całej
społeczności Linuksa. Następstwem było wiele dyskusji na temat
kierunków rozwoju oprogramowania sieciowego NET-2 Linuksa. Rozwinęły
się dwie różne szkoły, jedna, której ideą było "wpierw niech to
działa, później niech będzie to lepsze" i druga z ideą "niech wpierw
to będzie lepsze". Ostatecznie wmieszał się w to Linus, oferując swoje
wsparcie Alanowi w jego wysiłkach włączając jego kod do standardowej
dystrybucji jadra Linuksa. To postawiło Freda w bardzo trudnej
pozycji. Został pozbawiony ogromnej rzeszy użytkowników aktywnie
testujących i eksperymentujących z jego oprogramowaniem sieciowym, co
oznaczało, że jego dalszy rozwój byłby trudny i powolny. Fred
kontynuował przez krótki czas swoje prace, ostatecznie rezygnując i
pozstawiając Alana jako nowego lidera w wysiłkach nad udoskonaleniem
oprogramowania sieciowego Linuksa.
Wktrótce swoje talenty w tematyce ujawnił Donald Becker
<becker@cesdis.gsfc.nasa.gov> i stworzył ogroną liczbę
sterowików kart sieciowych ethernet, niemal wszystkich dostępnych w
obecnych wersjach jądra. Byli również inni, których wkład w tej
dziedzinie był znaczący, lecz praca Donalda była tak płodna, że wymaga
osobnej uwagi.
Alan kontynuował pracę nad szlifowaniem oprogramowania NET-2-D,
równocześnie starając się zająć problemami określonymi jako 'do
zrobienia' (TODO). Gdy jądro Linuksa rozwinęło się na tyle by osiągnąć
wersję 1.3.*, jego część dotycząca obsługi sieci składała się
niemal z wersji NET-3, na której bazyją aktualne wersje. Alan pracował
nad wieloma aspektami i funkcjami sieciowymi otrzymując wsparcie od
wielu utalentowanych ludzi należących do internetowej społeczności
Linuksa. Dzięki temu oprogramowanie rozrastało się jednocześnie w wielu
kierunkach. Alan opracował dynamiczne sterowniki urządzeń i pierwsze
implementacje standardów AX.25 i IPX. Kontynuował pracę, powoli
restrukturyzując i wprowadzając ulepszenia, aż uzyskał obecną postać.
Obsługa PPP została zaimplementowana przez Michaela Callahana
<callahan@maths.ox.ac.uk> i Ala Longyeara
<longyear@netcom.com>. Miało to ogromne znaczenie i ogromnie
zwiększyło libczę osób aktywnie wykorzystujących Linuksa w
zastosowaniach sieciowych.
Jonathon Naylor <jsn@cs.nott.ac.uk> znacznie usprawnił
początkowy kod Alana obsługi protokołu AX.25. Wprowdził obsługę
protokołu NetRom. Obsługa AX.25/NetRom jest ogromnie ważna, ponieważ
żaden inny system operacyjny nie posiada w standardowej dystrybucji
obsługi tych protokołów.
Były również ogromne rzesze innych ludzi, którzy w zanaczący sposób
przyczynili się do rozwoju oprogramowania sieciowego Linuksa. Wiele z
tych nazwisk znajdziesz później w częściach omawiających poszczególne
technologie. Inni przyczynili się do rozwoju bądź opracowując różne
moduły oprogramowania, bądź przysyłająć poprawki usuwające różne
błędy, bądź oferując sugestie, raporty z testów lub choćby wsparcie
moralne dla aktywnych twórców. Każdy z nich może twierdzić, że brał w
tym udział i oferował tyle ile mógł. Kod jądra Linuksa przeznaczony do
obsługi sieci jest świetnym przykładem rezultatów jakie można osiągnąć
pracując w tak anarchiczny sposób, jaki to miało miejsce w tym
przypadku. Jeśli się to jeszcze nie zadziwiło, to pamiętaj o jednym:
prace rozwojowe nadal trwają.
4.2 Skąd zdobyć inne informacje na temat zastosowań
sieciowych Linuksa.
Istnieje kilka miejsc, gdzie można znaleźć dobre informacje na temat
sieciowych zastosowań Linuksa.
Alan Cox, aktualny opiekun i lider oprogramowania sieciowego Linuksa,
prowadzi stronę internetową zawierającą najciekawsze i najważniejsze
informacje na temat aktualnego rozwoju sieci w Linuksie:
www.uk.linux.org.
Innym znakomitym miejscem jest książka napisana przez Olafa Kircha pod
tytułem Poradnik dla administratorów sieci. Powstała w ramach
Projektu dokumentacji Linuksa
i jest dostępna tutaj:
Poradnik dla administratorów sieci - wersja HTML
lub w innych formatach tutaj
archiwum ftp sunsite.unc.edu LDP. Książka Olafa jest
całkiem wyczerpująca i dostarcza dobrego, stojącego na wysokim
poziomie przeglądowego spojrzenia na konfigurację sieci pod Linuksem.
Istnieje specjalna grupa dyskusyjna (angielskojęzyczna), poświęcona
sieci i podobnym problemom:
comp.os.linux.networkingIstnieje angielskojęzyczna lista dyskusyjna, na którą możesz się
zapisać i gdzie możesz zadawać pytania odnoszące się do funkcji
sieciowych Linuksa. Aby się zapisać musisz wysłać następujący list:
To: majordomo@vger.rutgers.edu
Subject: anything at all
Message:
subscribe linux-net
W większości serwerów IRC istnieją zwykle kanały #linux, na
których obecni tam ludzie będą potrafili odpowiedzieć na pytania
dotyczące sieci pod Linuksem.
Pamiętaj, że zgłaszając jakikolwiek problem należy podawać jak
najwięcej dotyczących go szczegółów. Koniecznie należy podać wersje
używanego oprogramowania, sczególnie wersję jądra (uname -a), wersję
takich narzędzi jak pppd lub dip i dokładną naturę problemu
na który napotkałeś. To znaczy dokładnie zanotowane komunikaty
systemowe jakie otrzymałeś i dokładny opis składni wydawanych poleceń.
4.3 Skąd zdobyć inne, nie związane z Linuksem informacje na
temat technik sieciowych.
Jeśli szukasz podstawowych informacji o tcp/ip, polecam zapoznanie
się z następującymi dokumentami:
wprowadzenie do tcp/ip dostępne w wersji
tekstowej i
postscriptowej.
tcp/zarządzanie protokołem ipdostępne w wersji
tekstowej i
postscriptowej.
Jeśli poszukujesz dokładniejszych informacji na temat sieci tcp/ip
mocno polecam:
"Internetworking with TCP/IP"
by Douglas E. Comer
ISBN 0-13-474321-0
Prentice Hall publications.
Jeśli chcesz się nauczyć w jaki sposób budować programy sieciowe w
środowiskach zgodnych z systemem UNIX, mocno polecam:
"Unix Network Programming"
by W. Richard Stevens
ISBN 0-13-949876-1
Prentice Hall publications.
Możesz również skorzystać z grupy dyskusyjnej
comp.protocols.tcp-ip.
Istotnym źródłem konkretnych informacji technicznych związanych z
Internetem i protokołem tcp/ip są dokumenty RFC. RFC to skrót od
"Request For Comments", jest to standardowy sposób ogłaszania i
dokumentowania obowiązujących standardów internetowych. Istnieje wiele
miejsc skąd można poprać dokumenty RFC. Większość z nich to archiwa
ftp, część udostępnia dokumenty RFC również przez interfejs WWW
dostarczając jednocześnie możliwość przeszukiwania wszystkich
dokumentów w poszukiwaniu słów kluczowych.
Jednym z archimum dokumntów RFC jest:
baza danych Nexor RFC.
Następna strona
Poprzednia strona
Spis treści
Wyszukiwarka
Podobne podstrony:
net 3 howto pl 8net 3 howto pl 2NET 3 HOWTO pl 9 (2)NET 3 HOWTO pl 4 (2)net 3 howto pl 7NET 3 HOWTO pl 8 (2)NET 3 HOWTO pl 3 (2)net 3 howto plnet 3 howto pl 3net 3 howto pl 13NET 3 HOWTO pl 11 (2)net 3 howto pl 6net 3 howto pl 9net 3 howto pl 10net 3 howto pl 1net 3 howto pl 5net 3 howto pl 12NET 3 HOWTO plNET 3 HOWTO pl 10 (2)wiÄcej podobnych podstron