Gopher to protokół internetowy przeznaczony do dystrybucji, wyszukiwania i wyszukiwania dokumentów w Internecie. Opracowany na Uniwersytecie w Minnesocie na początku lat 90. Gopher był prekursorem sieci WWW i oferował tekstową, hierarchiczną i przyjazną dla użytkownika metodę nawigacji po dokumentach online.
Geneza i ewolucja Gophera
Protokół Gopher został opracowany w 1991 roku przez zespół kierowany przez Marka P. McCahilla z Uniwersytetu w Minnesocie. Protokół nazwany na cześć maskotki uniwersytetu, „Złotego Susła”, był początkowo używany do uzyskiwania dostępu do zasobów internetowych na terenie kampusu.
Prostota i zdolność Gophera do hierarchicznego organizowania informacji sprawiły, że stał się on popularnym wyborem wśród użytkowników Internetu przed pojawieniem się graficznej sieci WWW. Jednakże rozwój Internetu, zwłaszcza po wprowadzeniu przeglądarki Mosaic w 1993 r., znacząco przyćmił Gophera ze względu na zdolność sieci do wyświetlania grafiki obok tekstu i jej bardziej atrakcyjny interfejs.
Dogłębna eksploracja Gophera
Gopher opiera się na architekturze klient-serwer, w której klienci Gopher łączą się z serwerami Gopher w celu żądania informacji. Informacje prezentowane przez Gophera są zorganizowane w strukturę hierarchiczną, przypominającą system plików. Gdy użytkownik wybierze łącze Gopher, klient wysyła zapytanie do serwera, który następnie zwraca żądany dokument lub katalog łączy, jeśli łącze jest katalogiem.
Protokół obsługuje także wyszukiwanie według słów kluczowych, gdzie klient Gopher może wysłać ciąg wyszukiwania do serwera Gopher, a serwer zwraca wszystkie dokumenty pasujące do szukanego ciągu. Warto jednak zauważyć, że Gopher nie obsługuje bardziej zaawansowanych funkcji dostępnych we współczesnych protokołach, takich jak HTTPS, pliki cookie czy formularze interaktywne.
Wewnątrz Gophera: zrozumienie jego mechanizmu działania
Gopher działa w modelu klient-serwer, w którym klienci Gopher wysyłają żądania do serwerów Gopher w celu uzyskania informacji. Serwer odpowiada wysyłając żądany plik tekstowy lub menu. Menu to proste pliki tekstowe z liniami reprezentującymi pozycje menu. Każdy element zawiera czytelną dla człowieka nazwę i adres serwera, na którym można go znaleźć.
Gopher korzysta z własnego, unikalnego schematu adresów URL. Adres URL Gopher zaczyna się od „gopher://” i zawiera adres serwera, typ zasobu i ciąg selektora. Ciąg selektora to ścieżka do zasobu na serwerze.
Cechy wyróżniające Gophera
- Prostota: Projekt Gophera jest prosty, co ułatwia tworzenie klientów, serwerów i dokumentów Gopher.
- Struktura hierarchiczna: Gopher prezentuje informacje w przejrzystym, hierarchicznym formacie, podobnym do systemu plików.
- Efektywne wykorzystanie sieci: Gopher wykorzystuje mniejszą przepustowość niż protokoły graficzne, takie jak HTTP, dzięki czemu przeglądanie przy wolnych połączeniach jest szybsze.
- Możliwość wyszukiwania: Gopher obsługuje wyszukiwanie słów kluczowych na serwerach Gopher.
- Zwykły tekst: Dokumenty Gopher składają się głównie ze zwykłego tekstu, chociaż protokół może również rozpowszechniać pliki binarne.
Różne typy Gopherów
W Gopher różne typy przedmiotów są identyfikowane za pomocą jednoznakowego kodu na początku wiersza pozycji. Niektóre z powszechnie używanych typów przedmiotów obejmują:
Wpisz kod | Opis |
---|---|
0 | Plik tekstowy: ten typ elementu reprezentuje dokument lub inny typ danych tekstowych. |
1 | Katalog: ten typ pozycji to menu Gophera zawierające więcej pozycji. |
7 | Wyszukiwarka: ten typ elementu oznacza indeks, który można przeszukiwać. |
9 | Plik binarny: ten typ elementu jest używany w przypadku plików danych nietekstowych, takich jak obrazy, audio lub wideo. |
I | Komunikat informacyjny: ten typ elementu służy do wyświetlania tekstu informacyjnego w menu Gopher. |
Gopher w akcji: zastosowania, wyzwania i rozwiązania
Mimo że jest mniej popularny niż Internet, Gopher nadal ma dedykowaną bazę użytkowników, głównie w społecznościach entuzjastów komputerów retro i technologii. Gopher służy do dystrybucji dokumentów i plików tekstowych oraz do tworzenia łatwych w obsłudze menu linków.
Jednak Gopher stoi przed pewnymi wyzwaniami. Nowoczesne przeglądarki internetowe domyślnie nie obsługują Gopher, a protokołowi brakuje zaawansowanych funkcji, takich jak szyfrowanie i pliki cookie. Niemniej jednak do uzyskiwania dostępu do witryn Gopher można używać dedykowanych klientów Gopher i usług proxy. Podejmowane są wysiłki w celu unowocześnienia protokołu przy jednoczesnym zachowaniu jego prostoty.
Porównanie z podobnymi protokołami
Funkcja | Suseł | HTTP (sieć) | FTP |
---|---|---|---|
Szyfrowanie | NIE | Tak | Tak |
Ciasteczka | NIE | Tak | NIE |
Możliwość wyszukiwania | Tak | Tak | NIE |
Struktura hierarchiczna | Tak | NIE | Tak |
Przyszłość Gophera: co nas czeka?
Chociaż Gopher może wydawać się reliktem przeszłości, istnieje ciągłe zainteresowanie wykorzystaniem i rozwojem protokołu, głównie ze względu na jego prostotę i wydajność. Programiści pracują nad projektami mającymi na celu modernizację Gophera, np. dodanie obsługi szyfrowania, a także trwają wysiłki mające na celu stworzenie odpowiednika nowoczesnej sieci Gopher, znanego jako „Gopherspace”.
Rola serwerów proxy w Gopherze
Biorąc pod uwagę, że nowoczesne przeglądarki domyślnie nie obsługują protokołu Gopher, serwery proxy odgrywają zasadniczą rolę w uzyskiwaniu dostępu do witryn Gopher. Serwer proxy Gopher-to-HTTP umożliwia użytkownikom dostęp do treści Gopher za pomocą standardowej przeglądarki internetowej. Serwer proxy pobiera żądaną treść Gopher i konwertuje ją na treść HTTP, którą może wyświetlić przeglądarka. Stanowi to pomost pomiędzy nowoczesną siecią a Gopherem, umożliwiając użytkownikom odkrywanie unikalnego, skupionego na tekście świata Gopherspace.
powiązane linki
- Projekt Overbite: Inicjatywa mająca na celu przywrócenie Gophera do przeglądarek Firefox i Chrome.
- Publiczny serwer proxy Gopher Floodgap: Publiczny serwer proxy Gopher-to-HTTP.
- Protokół Gophera: Oryginalna specyfikacja protokołu Gopher.
- System Unixowy dostępu publicznego SDF: Dobrze znana witryna Gopher.
- Trawnik Gopher: Wyselekcjonowana lista aktywnych witryn Gopher.