|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Глава 18Службы Gopher и WAIS 18.1 ВведениеСистема gopher была разработана в 1991 г. Центром микрокомпьютеров, рабочих станций и сетей Миннесотского университета. Сотрудники этого центра столкнулись с необходимостью обеспечить поддержку тысяч пользователей, которым понадобилась помощь в изучении компьютеров и общеуниверситетских сетевых ресурсов. Именно эта тематика и определила основные тенденции в формировании информации службы gopher. Однако требовалось упростить студентам поиск нужного материала среди огромного объема информации. Решением этой проблемы стала служба gopher — иерархическая структура простых меню в архитектуре клиент/сервер. Gopher обеспечивает простое перемещение в огромном объеме информации и позволяет: ■ Находить информацию на локальных сайтах ■ Обеспечивать прозрачный доступ к удаленным сайтам ■ Извлекать необходимые данные Возможности gopher по организации и распространению информации были первоначально оценены в колледжах и университетах по всему миру. Далее службы gopher распространились и в правительственных учреждениях. Впоследствии службы gopher были вытеснены более совершенными и мощными инструментами WWW (см. главу 19). Однако еще многие сайты обеспечивают доступ к информации через gopher. Браузеры WWW также способны обеспечивать доступ к серверам gopher, и при этом пользователи могут даже не знать о том, как это выполняется. 18.2 Применение GopherЛучший способ знакомства с gopher — применение этой службы на практике. Если пользователь зарегистрировался на многопользовательском хосте и может применять текстовый пользовательский интерфейс, то для запуска локального клиента gopher достаточно ввести команду gopher. На рис. 18.1 такой клиент запущен в системе tigger, и доступ производится к серверу gopher по умолчанию (в данном случае это сервер компании Global Enterprise Services). > gopher Root gopher server: gopher.jvnc.net -> 1. About this gopher. 2. Search GES Gopher Tree <?> 3. GES/ 4. Educational Services/ 5. Internet Resources/ 6. Medical Resources/ 7. Gophers Hosted by GES/ 8. Other Interesting Gophers/ 9. Publishers Online/ 10. WAIS Based Information/ 11. InterNIC/ Press ? for Help, q to Quit, u to go up a menu ![]() Рис. 18.1. Доступ к серверу gopher из текстового клиента Как показано на рисунке, служба gopher выводит меню. Пункты меню могут приводить к переходу на: ■ Текстовый документ ■ Изображение ■ Следующее меню ■ Приложение для поиска ■ Сеанс telnet с приложением, расположенном на удаленном хосте ■ Другому приложению (например, FTP) Некоторые пункты меню выполняют переход на сервер gopher или другое приложение, которые могут размещаться не на тех компьютерах, где был выполнен запуск клиента gopher. Клиенты gopher включены в состав браузеров WWW. На сегодняшний день это наиболее популярный способ доступа к серверам gopher. На рис. 18.2 показан Netscape Navigator, выводящий то же самое меню службы gopher, что и на рис. 18.1. ![]() Рис. 18.2. Доступ к серверу gopher из браузера 18.3 Типы информации в gopherПункты меню gopher могут содержать различные типы информации. Каждому типу присвоен идентификационный код. Текстовые клиенты gopher указывают на тип информации пункта меню, выводя в конце строки этого пункта специальный тег (tag). Типы, соответствующие им коды и теги перечислены в таблице 18.1. Графические клиенты gopher отображают типы информации специальными значками. Таблица 18.1 Типы данных, коды и теги в gopher
18.4 Иерархия меню GopherМеню gopher организовано в виде иерархического дерева. Пункт меню может указывать на следующее меню, которое, возможно, размещается на совершенно другом сайте. Листьями дерева меню являются документы и приложения. Далее будет видно, что меню gopher реально соответствует каталогам, поэтому применение символа косой черты (/) для указания на следующее меню не случайно. Домашний каталог сервера gopher указывается в его конфигурационных параметрах загрузки. Список пунктов меню по умолчанию формируется из файлов и подкаталогов домашнего каталога сервера. 18.5 Архитектура gopherВнутренняя структура gopher очень проста. На рис. 18.3, показано, как клиент соединяется с сервером gopher, извлекает меню или файл и закрывает соединение. Выбранный элемент выводится на монитор пользователя. При работе с меню или файлом пользователь уже не соединен с сервером. ![]() Рис. 18.3. Клиент извлекает информацию из сервера gopher Сервер gopher не сохраняет сведений о клиенте. Клиент соединяется с сервером и запрашивает выполнение некоторой операции. Сервер отвечает на запрос и забывает о нем. Именно это делает gopher простым для запуска и очень надежным. Кроме того, сервер gopher поддерживает одновременно значительно большее число клиентов, чем telnet или пересылка файлов. Аналогичные принципы применяются для увеличения эффективности сервера WWW. 18.6 Отличия gopher от FТРРазработка gopher проводилась для обеспечения удобного и эффективного доступа к архивам пересылки файлов. Каждое меню gopher соответствует некоторому каталогу сервера. В каталоге имеется специальный файл, который: ■ Присваивает пунктам меню файлы или подкаталоги ■ Определяет ссылки на файлы и каталоги удаленного хоста ■ Описывает ссылки на приложения Несколько примеров будет приведено ниже. 18.7 Протокол gopherСеанс gopher выполняется поверх соединения TCP. Обычно используется порт 70 и некоторые правила для соединений telnet в режиме NVT. Для получения информации с сервера клиент gopher должен: ■ Соединиться с необходимым портом хоста сервера gopher ■ Послать на сервер селекторную строку, заканчивающуюся на <CR><LF> Селекторная строка (selector string) определяет выбранный пользователем пункт меню или текстовый документ (а также данные другого типа, например сценарии, исполняемые программы или запросы к базам данных). Пустая селекторная строка, содержащая только <CR><LF>, приводит к возвращению от сервера корневого меню по умолчанию. Если сервер отошлет меню назад, клиент выводит пользователю список пунктов меню. Однако в меню содержится намного больше информации, чем просто названия пунктов. Каждый посланный сервером пункт меню состоит из последовательности полей, разделенных знаками табуляции. В этих полях содержится: ■ Тип пункта меню и его название ■ Селекторная строка, которую нужно послать на сервер, чтобы получить этот пункт меню (обычно указывается тип пункта вместе с именем файла или каталога) ■ Имя хоста, содержащего данный пункт меню ■ Номер порта для доступа к хосту Содержимое отдельных полей можно увидеть самостоятельно. Ниже показан пример сырого, или необработанного, взаимодействия с сервером gopher компании GES. Обращение происходит по telnet к порту 70 сервера, а далее, после установки соединения, просто нажимается клавиша ENTER: > telnet gopher.jvnc.net 70 Trying 128.121.50.10 ... Connected to nicol.jvnc.net Escape character is '^}' . (Нажатие на ENTER приводит к отправке <CR><LF>) 0About this gopher 0/0about nicol.jvnc.net 70 7Search GES Gopher Tree 7/ts nicol.jvnc.net 70 1GES 1/GES nicol.jvnc.net 70 1Educational Services 1/Educational_Services nicol.jvnc.net 70 1Internet Resources 1/Internet_Resources nicol.jvnc.net 70 1Medical Resources 1/Medical_Resources nicol.jvnc.net 70 1Gophers Hosted by GES 1/Hosted nicol.jvnc.net 70 1Other Interesting Gophers 1/Other_Interesting_Gophers nicol.jvnc.net 70 1Publishers Online 1/Publishers_Online nicol.jvnc.net 70 1WAIS Based Information 1/WAIS_Based_Information nicol.jvnc.net 70 UnterNIC / internic.net 70 . Connection closed by foreign host Рассмотрим первый элемент списка. 0About this gopher указывает, что данный пункт — это текстовый файл, и определяет его название, About this gopher, которое и будет выведено пользователю. Селекторная строка 0/0about повторяет описание типа (0) и ссылается на файл по имени 0about из домашнего каталога сервера. Если пользователь выберет этот пункт меню, клиент gopher пошлет заданную селекторную строку серверу. Следующий столбец определяет хост, хранящий данный пункт меню. Мы соединились с gopher.jvnc.net, что является псевдонимом для nicol.jvnc.net. Наконец последний столбец указывает, что должен использоваться стандартный порт gopher (70). Каждый элемент завершается <CR><LF>. Следующие несколько элементов описывают подкаталоги домашнего каталога сервера gopher системы nicol. Последний элемент указывает на меню по умолчанию (на сервере gopher в InterNIC). Отметим, что сервер gopher сообщает о завершении пересылки меню, посылая строку, которая содержит только символ точки. Когда пересылается текстовой файл, символ точки используется также для указания на конец файла. 18.8 Файл .namesПростейший сервер gopher можно организовать, сконфигурировав в программе сервера расположение домашнего каталога и запустив эту программу. Главное меню сервера будет содержать список имен файлов и подкаталогов домашнего каталога. Если будет выбран один из подкаталогов, то соответствующий список также будет хранить имена файлов и подкаталогов. Чтобы заменить созданные имена файлов и каталогов на более содержательные названия, администратор сервера создает в каждом каталоге сервера gopher специальный файл .names. Ниже показано несколько элементов такого файла (из домашнего каталога gopher компании GES): # Каталог верхнего уровня Path = 0/0about Name = About this gopher Numb = 1 Path = 1/GES Name = GES Numb = 3 Path = 1/Educational_Services Name = Educational Services Numb = 4 Path = 1/Internet_Resources Name = Internet Resources Numb = 5 Пункты меню для соединения с удаленным сервером gopher или для запуска приложений перечислены в файле .Links. Элементы такого файла содержат дополнительную информацию: формальное описание типа информации, имя хоста и порт для доступа. Примеры типичных элементов файла .Links: Type = 7 Name = Search GES Gopher Tree Path = 7/ts Host = nicol.jvnc.net Port = 70 Numb = 2 Type = 1 Name = InterNIC Path = / Host = internic.net Port = 70 Numb = 11 Как показано на рис. 18.4, меню Internet Resources (ресурсы Интернета) имеет много ссылок на сеансы telnet. Типичный элемент файла .Links для сеанса telnet имеет вид: Type = 8 Name = CARL System Path = CARL Host = pac.carl.org Port = 23 Numb = 2 Тип 8 означает telnet, и в этом случае параметр Path (путь) определяет идентификатор пользователя (userid), который должен использоваться для регистрации в telnet. Internet Resources -> 1. Area Code Info/ 2. CARL System <TEL> 3. FreeNet (USA Today) <TEL> 4. Ftp/ 5. Geographic Server <TEL> 6. Libraries/ 7. Netfind (Internet White Pages) <TEL> 8. News / 9. Pilot Weather Service. [Airplane Pilot] <TEL> 10. RFC/ 11. Sun Managers/ 12. Sunergy/ 13. Weather By State/ 14. Weather Service <TEL> 15. World Wide Web <TEL> Press ? for Help, q to Quit, u to go up a menu ![]() Рис. 18.4. Меню Internet Resources 18.9 Служба WAISGopher делает доступными для пользователей множество файлов. Однако пользователи нуждаются в инструменте для поиска в архиве полезных для себя текстовых документов. Большинство серверов gopher имеет поисковое средство — региональную информационную службу (Wide Area Information Service — WAIS), обеспечивающую, кроме прочего, полномасштабную индексацию текста. Существуют бесплатные и коммерческие версии WAIS (в настоящее время это торговая марка компании WAIS, Inc). Кроме WAIS, были разработаны другие средства для индексации и поиска. Поисковые приложения очень важны. Они постоянно совершенствуются в конкурентной борьбе за создание эффективной методологии индексации, наиболее функциональных возможностей и ускорения работы. 18.10 Дополнительная литератураПротокол gopher описан в RFC 1436. Бесплатные справочные материалы и программное обеспечение для gopher доступно на сервере Миннесотского университета (gopher.tc.umn.edu). |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Главная | В избранное | Наш E-MAIL | Прислать материал | Нашёл ошибку | Наверх |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|