• Sieć ProNET - MiniLAN tanim kosztem

20.02.2005 16:23, autor artykułu: Marcin "GumBoy" Grąziowski
odsłon: 5072, powiększ obrazki, wersja do wydruku,

Wielu z was na pewno posiada kolegę mającego Amigę. Niby nic wielkiego, ale jeśli mieszka on nie dalej niż 50 metrów, to na pewno zastanawialiście się wiele razy nad posiadaniem czegoś na kształt sieci.

LAN (Local Area Network) to termin określający sieć lokalną, w którą spięta są min. 2 komputery (też mi nowina :)). Zakładanie LANów ostatnio bardzo popularne w świecie PC. Okazuje się że na Amidze można również bez żadnych problemów taką sieć założyć, a nawet przyłączyć ją do pecetowej sieci. Wystarczy posiadać kartę sieciową. A co jeśli nie masz zamiaru przyłączać się do sieci pecetów, nie stać cię na wydatek kupna karty sieciowej (a trzeba jeszcze doliczyć kabel, terminatory itd.), a połączyć chciałbyś jedynie dwie Amigi? Odpowiedź jest prosta - ProNET.

Wymagania

Do połączenia 2 Amig potrzebne będą: 2 Amigi, 2 wtyczki RS-232 żeńskie, kabel 7-żyłowy (cena kabla 8 żyłowego z ekranem wynosi ok 1,80 PLN za metr), pakiet ProNET (najnowsza wersja to 3.4 i jest dostępna na coverach ACS). Wymagania samego pakietu są minimalne, czyli Kickstart 2.0 i około 100 kB wolnego RAMu. Kabel jest zwykłym kablem Null-Modem. Schemat połączeń takiego kabla był opisany w każdej gazecie amigowej (i nie tylko). Ja osobiście nie chcąc się bawić lutownicą, kupiłem gotowy 3-metrowy kabel, poczym przedłużyłem go przecinając w połowie i "wklejając" w niego 40 metrów kabla 8-żyłowego (jedna żyła zostaje wolna). Należy dodać że połączenie będzie przebiegać przez port szeregowy (serial). ProNET umożliwia także komunikację przez port równoległy (parallel), ale o tym innym razem.

Instalacja

Instalacja pakietu jest stosunkowo prosta (nie dołączono nawet skryptu instalacyjnego) i poradzi z nią sobie każdy użytkownik, który nabył już zdolność kopiowania plików. Oto czynności które trzeba wykonać, aby móc uznać ProNET za zainstalowany:
- w katalogu DEVS: zakładamy katalog ProNET i kopiujemy do niego zawartość katalogu o tej samej nazwie znajdującego się w pakiecie
- kopiujemy plik "pronet.device" z pakietu, do katalogu DEVS: (właściwie to DEVS: powinienem nazywać przypisem, jednak każdy wie że chodzi o katalog Sys:Devs)
- do katalogu L: kopiujemy plik "pronet.handler"
- do katalogu C: kopiujemy zawartość katalogu C: będącego częścią pakietu
To wszystko. Pakiet ProNET możemy uznać za zainstalowany.

Konfiguracja

W katalogu DEVS:ProNET zakładamy plik ".config". W którym zdefiniowane będą: port którego będziemy używać, sterownik tego portu oraz szybkość połączenia. Plik w przypadku portu szeregowego powinien mieć następującą treść:

serial serial.device 0 19200

Oznacza to że komunikacja przebiegać będzie z wykorzystaniem "modułu" serial (będącego w DEVS:Pronet), przy wykorzystaniu sterownika "serial.device", przez port szeregowy (0-oznacza port szeregowy, 1-równoległy), oraz przy prędkości 19200 bodów. Autor pakietu zaleca wykorzystanie sterownika "BaudBandit.device", oraz eksperymentowanie z prędkością. Z praktyki wiem że nie warto wpisywać wartości większej niż 31250, jeśli nie posiadamy żadnej karty z szybkim portem szeregowym, więc nasz plik będzie miał może być treści:

serial baudbandit.device 0 31250

Uruchamianie serwera

Aby móc korzystać z urządzenia na "zdalnym" komputerze, musi zostać na nim uruchomiony server. Znajduje się on w katalogu C: i nosi nazwę "Pronet-server". Aby go uruchomić należy podać jako jego parametr numer portu przez który będziemy się komunikować (w naszym przypadku 0, oznaczające port szeregowy). Na naszym przykładzie serwer powinien być uruchamiany komendą:

Pronet-server UNIT 0

Od tej pory server jest aktywny i można go wyłączyć kombinacją klawiszy CTRL+C, uaktywniając oczywiście wcześniej jego okno.

Montowanie urządzeń

Aby zamontować jakieś urządzenie ze zdalnego komputera, musi zostać na nim uruchomiony server. Nic oczywiście nic nie stoi na przeszkodzie żeby był on uruchomiony na obu komputerach, gdyż wtedy komunikacja będzie możliwa w obie strony. Do montowania urządzeń ze zdalnego komputera na maszynie lokalnej służy program o nazwie "Pronet-start", znajdujący się w katalogu C:. Używając go podajemy jako parametry: nazwę po jaką chcemy zamontować urządzenie na komputerze lokalnym (pamiętać należy o NIEUŻYWANIU dwukropka) np. CD1, nazwę pod jaką urządzenie występuje na komputerze zdalnym np. CD0 i to właściwie wszystko. Są jeszcze inne parametry, z których na uwagę zasługuje parametr UNIQUE, służący do montowania urządzeń posiadających etykietę która występuje już w naszym systemie (np. "Ram Disk"). Inne parametry są właściwie nieużywane (w ciągu roku nie użyłem ich ani razu), ale są wyczerpująco opisane w dokumentacji ProNETu. Chcąc więc zamontować u siebie jako partycję dh4: dysk systemowy komputera zdalnego wpisujemy:

pronet-start dh4 dh0

lub gdy chcemy mieć u siebie CD-ROM komputera zdalnego możemy wpisać na przykład:

pronet-start cd1 cd0

Prawda że proste?

Odmontowywanie urządzeń

Do odmontowywania zamontowanych komendą "Pronet-start" urządzeń służy program "Pronet-stop" będący w katalogu C: (co za niespodzianka :)). Aby odmontować jakieś urządzenie, należy podać jego nazwę jako parametr dla ww. programu np:

pronet-stop cd1

odmontuje nam urządzenie zamontowane wcześniej pod nazwą cd1, lub:

pronet-stop dh4

odmontuje nam urządzenie zamontowane wcześniej pod nazwą cd1. Istnieje także możliwość odmontowania wszystkich zamontowanych urządzeń na raz. Wystarczy wtedy jako parametr dla "Pronet-stop" podać numer portu prze który się komunikujemy. W naszym przypadku będzie to:

pronet-stop unit 0

co spowoduje odmotowanie w naszym systemie wszystkich urządzeń znajdujących się na komputerze zdalnym, które wcześniej zamontowaliśmy przy użyciu "Pronet-start". Warto także dodać, że ProNET nie ma problemów z urządzeniami o wymiennych nośnikach (stacja dysków, CD-ROM, Zip...). Poprawnie wykrywa zmianę płyty, dyskietki itd, z czym miały problem SerNET i ParNET.

Inne programy

W skład pakietu wchodzą jeszcze 4 programy, które skopiowaliśmy do katalogu C:. Są one usprawnieniem dla nas pracujących przy użyciu tego swoistego LANa. Muszę stwierdzić że w conajmniej dwóch przypadkach, jest to całkiem niemałe usprawnienie.

Pronet-flush

Program służy do "czyszczenia" pamięci po zakończeniu pracy z ProNETem. Jak pisze sam autor korzystanie z niego jest zbędne, gdyż server (i inne programy będące częścią pakietu) sam czyści po sobie pamięć w momencie kończenia pracy. Program znajduje się w pakiecie "dla zasady".

Pronet-page

Moim zdaniem najlepszy (obok Pronet-talk, ale o tym za chwilę) program ze wszystkich "usprawniaczy". Służy on do wysyłania wiadomości do użytkownika pracującego na drugim komputerze. Parametrami tego programu są: numer portu (0 w naszym przypadku) i treść wiadomości np.:

pronet-page 0 "Cześć, co robisz?"

Wiadomości są wyświetlane jako "żółte guru" (to jest chyba najciekawsze) z migającą ramką i pozostają na ekranie aż do momentu wciśnięcia przez "odbiorcę" lewego klawisza myszki (jak to zwykle w przypadku guru bywa :)). Oczywiście wiadomości mają TYLKO formę guru i nie powodują żadnych powikłań przy pracy systemu. Nie są w żadnym wypadku guru! Treść wiadomości składająca się z dwóch lub więcej słów, powinna być umieszczona w cudzysłowach. Standard AmigaPL działa oczywiście bez żadnych komplikacji

Pronet-run

Równie ciekawy program służący do uruchamiania programów na zdalnym komputerze (nie ZE zdalnego komputera). Parametrami tego programu są: numer portu przez który się komunikujemy (czyli nic nowego, jak do tej pory" program który chcemy uruchomić wraz ze ścieżką np:

pronet-run 0 "dir dh0: ALL"

Wszystko co wpiszemy po numerze portu MUSI znaleźć się w cudzysłowach. Generalnie żeby ułatwić zrozumienie działania programu można napisać że wszystko co wpiszemy w cudzysłowach wpisujemy tak jakbyśmy siedzieli przy drugim komputerze wpisując polecenie w otwarty oknie CLI. Nie radzę próbować:

pronet-run 0 reset

jeżeli nie chcemy zostać zbluzgani przez kolegę :)))

Pronet-talk

Najlepsze moim zdaniem udogodnienie. To właśnie ono czyni ten pakiet bezkonkurencyjnym w porównaniu do innych tego typu rozwiązań (np. ParNET, SerNET). Program służy do rozmowy między użytkownikami obu komputerów. Uruchamiając go podajemy numer portu jako parametr (w naszym przypadku 0). Jeżeli uruchomimy program bez parametrów, domyślnym numerem staje się 0. Po uruchomieniu programu naszym oczętom ukazuje się okno (jedyny program w pakiecie posiadający chociaż namiastkę GUI :)), w którym możemy wpisywać dowolny tekst. Wpisany tekst pokazuje się w okienku "Talka" na zdalnym komputerze "w czasie rzeczywistym", czyli literka po literce, a nie tak jak w przypadku np. IRCa po wciśnięciu Enter. Aby zakończyć pracę programu, wystarczy (w przeciwieństwie do "Pronet-server") zamknąć jego okno. Oczywiście standard AmigaPL jest obsługiwany bez zarzutów.

W praktyce

ProNET jest całkowicie przezroczysty dla systemu, tzn. urządzenia przez niego zamontowane są widoczne jako zwykłe urządzenia logiczne w systemie i można się do nich w taki sam sposób odwoływać. W przeciwieństwie do tego co znamy z konkurencji (SerNET, ParNET) urządzenia są widoczne od razu, a nie dopiero po odwołaniu się do nich i nie musimy się do nich odwoływać przez urządzenie NET:.

Wady

Zapewne od początku artykułu zadawaliście sobie pytanie o rzecz, która jest niestety największą wadą tego rozwiązania. Mowa oczywiście o szybkości, a właściwie o jej braku. Przy wykorzystaniu standardowego portu szeregowego uzyskujemy prędkość zbliżoną do "internetowej", czyli kilka kB/s. Prędkość powinna znacznie wzrosnąć przy wykorzystaniu jakiejś karty z szybkim portem szeregowym (np. Hyperport z Elboxu), jednak jest to kolejny wydatek oscylujący nieraz nawet w okolicach ceny karty sieciowej, więc jeżeli nie masz modemu to nie opłaca się inwestować w taki port tylko w celach "ProNETowych".

Istnieje jeszcze jedno rozwiązanie przyspieszające ZNACZNIE transmisję. Mowa tu o wykorzystaniu portu równoległego zamiast szeregowego, który jest co najmniej 2-3 razy wolniejszy. Dlaczego zatem od razu nie pisałem o porcie równoległym? Odpowiedź jest prosta. Potraficie wymienić chociaż jedną grę, która umożliwiłaby rozgrywkę sieciową z wykorzystaniem portu równoległego? Połączenie przez port szeregowy ma tę zaletę, że daje możliwość rozmowy, wymiany danych (zawsze lepiej jest coś skopiować przez "sieć", niż specjalnie lecieć z dyskietką po jakiś 5 kB plik) i rozrywkę, a ta jest naprawdę przednia.

Cała masa gier umożliwia połączenie komputerów w celu wspólnej rozgrywki. Można pograć między innymi w: Lotus II, Armour Geddon I i II, Combat Air Patrol, Alien Breed 3D, The Killing Grounds, Populous I i II, Gloom, a nawet Doom i Napalm. Szczerze polecam spróbować rozgrywki w Armour Geddon II, C.A.P. i Alien Breed 3D, gdyż są najlepsze w tej kwestii (inne też są super, ale te przypadły mi do gustu najbardziej).

Dla niektórych wadą może być także to, że Pronet-talk pracuje w trybie zastępowania znaków, a nie wstawiania. Mi to osobiście nie przeszkadza. Kolejny problem to murowany zwis tasku, który odwoła się do zamontowanego urządzenia, jeśli serwer nie jest już uruchomiony na zdalnym komputerze. Oznacza to, że kiedy mamy zamontowany np. CD-ROM kolegi, a on np. zresetuje komputer i nie uruchomi serwer ponownie (lub gdy ma np. w WBStartup i nie zdążył się on jeszcze wczytać) lub go po prostu wyłączy, a my w tym czasie pod FileMasterem będziemy próbowali odczytać zawartość krążka, to zamrozi się nam FileMaster. To samo dzieje się gdy w jakimś requesterze wybierzemy "Wolumeny" lub w Magellanie będziemy próbowali wyświetlić listę urządzeń. O ile w Opusie zamrozi to tylko jedno okienko i będziemy mogli nadal pracować, o tyle w ekstremalnych przypadkach pod Workbenchem możemy zamrozić cały system.

Rady

Mam nadzieję że ten swoisty kubeł zimnej wody nie odstraszył was zbytnio. Przedstawię teraz kilka rad, które przydadzą się wam podczas pracy z ProNETem.

Po pierwsze większość programów pakietu nie posiada GUI, co czyni go wręcz wyśmienitym dodatkiem do Directory Opusa 5 i wyższych (osobiście używam go z Magellanem II). W dołączonym do programu archiwum znalazły się konfiguracje menu, klawiszy itp. dla Magellana II mojego autorstwa. Działają one także z każdym Opusem 5. Dla wygody radzę sobie wrzucić do WBStartup następujący skrypt:

Pronet-server UNIT 0

i w ikonce do niego jako domyślny program wybrać "IconX", oraz w tooltype'ach zdefiniować odpowiednio rozmiar i pozycję okna konsoli tekstowej, która się ukaże przy każdym starcie systemu. Dlaczego nie skierować tego do np. NIL:? A jak wyłączyć serwer, jeśli nie widzimy jego okna? A jego wyłączenie może się okazać potrzebne, gdyż blokuje on używanie portu, więc gdy jest uruchomiony nie jest możliwe korzystanie z modemu (z resztą jeżeli nie masz przełącznika na dwa kable, to i tak musisz najpierw wyłączyć komputer, żeby przepiąć kable) i np. granie w Dooma (przez sieć) i inne sieciowe gry działające po systemem. Przyda się też następujący skrypt:

Pronet-Page 0 "Właśnie włączyłem kompa - GumBoy"
Pronet-Run 0 "Pronet-Page 0 Połączenie_nawiązane<--->Komunikacja_możliwa"

Spowoduje to wysłanie do kumpla wiadomości przy każdym starcie naszego systemu i za pomocą programu Pronet-run "wymusi" wysłanie z jego komputera wiadomości do nas. Dzięki temu przy uruchamianiu systemu jesteśmy od razu powiadamiani gdy sieć jest "dostępna" (czyli czy kolega ma włączony komputer - chyba że gra w jakąś pozasystemową gierkę lub siedzi w Internecie. Jeżeli sieć jest "niedostępna", po prostu nic się nie dzieje. Tekst komunikatów oczywiście można zmienić.

Jeżeli nie mamy zamiaru wyłączać serwera (nie zakłóca on w żaden sposób pracy systemu), to możemy zaraz po jego uruchomieniu, zamknąć okno konsoli którą otworzy.

Przy używaniu Pronet-talka, należy pamiętać że klawisz Enter powoduje powrót na początek lini, a nie skok do następnej. Przejście o linię w dół wykonujemy kursorem. Najlepiej jest przyjąć zasadę, że kiedy skończyliśmy wypowiedź przechodzimy linię w dół i wracamy na jej początek (wciskamy kolejno: Enter i strzałkę w dół). Pozwoli to uniknąć bałaganu i wchodzenia sobie nawzajem w wypowiedź.

Podsumowanie

Pakiet ProNET jest dostępny jako shareware, jednak nie jest w żaden sposób ograniczony, a jego rejestracja nic nie kosztuje. Jest rozpowszechniany na zasadach GNU, co pozwoliło mi zmodyfikować jego zawartość i spreparować pakiet instalacyjny. Napisany przeze mnie instaler umożliwia instalację i konfigurację pakietu pod wybrany port. Instaler razem ze wspomnianymi dodatkami do Opusa można pobrać z ***PPA (linki pod artykułem)***.

Podczas blisko rocznego używania ProNETu, nie sprawił mi on żadnych nieoczekiwanych niespodzianek i znacznie ułatwił oraz uprzyjemnił (gierki :)) życie.

W razie problemów służę pomocą. Mój E-Mail jest podany na końcu artykułu (czyli całkiem niedaleko :)).

PS. Oczywiście nie ponoszę odpowiedzialności za żadne szkody wywołane np. niewłaściwym spreparowniem kabla.

NetInstallPPA.lzx

    
dodaj komentarz
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem