Из всех пользовательских сервисов Internet WWW-технология (World Wide Web) или "Всемирная Паутина" распределенных информационных систем является наиболее развивающейся и прогрессирующей. Еще так недавно (1989) был предложен лишь первичный проект распределенной по всей сети гипертекстовой информационной системы основанной на текстовом, интерпретируемом "на лету" языке представления информации с возможностью перехода к новому пункту посредством выбора элемента (гипертекстовой ссылки и гипертекста (гипер – расширяющийся)). Изначально предполагалось, что такая система будет полезна для быстрого представления текстов документации, справочных систем, систем поиска и т.п.. Однако, уже вскоре, система развилась настолько, что переросла в информационную мультимедиа-гипер-систему с возможностью представления информации в виде отображения документов (страниц или сайтов) с гипер-текстовой и гипер-графической информацией, а также включением в их состав звука, видео и приложений на языках программирования Java, Java Script, Visual Basic Script, а также GIF-анимации.
Основу информационной системы составляет текстовый документ форматированный при помощи гипертекстового языка HTML (HyperText Markup Language). Структура документа при таком форматировании представлена т.н. тегами – управляющими форматирующими элементами, определяющими основные элементы текста, такие как абзац или таблица и свойства (цвет, вид, положение на странице) включаемой в текст графической, видео и другой отображаемой и неотображаемой информации документа. Документы могут содержать формы, реализующие стандартные диалоговые элементы, такие как поля ввода текста, кнопки, списки и др.. Это позволяет строить гибкие диалоги с пользователями.
Основная идея данного формата – использование гипер-информационной системы представления информации распределенных в сети информационных ресурсов и сделать доступ к ним максимально легким для простого пользователя. Можно сказать, что это с успехом удалось, т.к. существующая система позволяет, с одной стороны, неквалифицированному пользователю, владеющему только графическим пользовательским интерфейсом, получать и использовать самые разнообразные сетевые ресурсы (графические файлы, звук, видео и анимацию большинства распространенных стандартов), которые, ранее, были доступны только при помощи определенных приложений и команд, интерфейсу которых необходимо было обучаться специально; с другой стороны, система дает возможность программировать на популярных объектно-ориентированных языках (Java, Java Script, Visual Basic Script), строить стандартные программные диалоги и создавать сложные приложения с использованием графических и вычислительных ресурсов, а также многозадачности, мультипроцессорности и удаленных ресурсов серверов Internet.
Общая технология WWW, также как и многих Internet сервисов, базируется на архитектуре клиент-сервер и высокоуровневом протоколе обмена HTTP (HyperText Transfer Protocol). HTTP-клиент, найдя HTTP-сервер по его универсальному символьному или IP-адресу, выдает на порт HTTP-сервера запросы, в результате которых возвращается некоторый ресурс сети. В стандартном случае таковыми являются либо файлы документов на языке HTML (.htm или .html файлы), либо любые другие файлы, сохраняемые на локальном накопителе машины-клиента. Взаимодействие происходит по схеме запрос-ответ, а сама специфика протокола допускает многократное соединение и разъединение во время сеанса передачи файлов. С появлением второго стандарта на язык разметки – HTML 1.1 в его состав вошли многие полезные и эффективные элементы, основным из которых является универсальная адресация ресурсов в сети Internet – URL (Universal Resource Locator). Этот элемент, по сути, стандартизовал способы указания расположения и, что немаловажно, способы доступа к самым разнообразным ресурсам сети.
Архитектура клиент-сервер предполагает наличие сервера – процесса, который постоянно следит за поступающими на его порт запросами и обрабатывает их, однако, основная нагрузка по отображению документов в том виде, который приятен и привычен всем пользователям осуществляется специальными приложениями-клиентами, работающими на локальных машинах и называемыми браузерами (от to browse – пролистывать, быстро просматривать). Современные программы-браузеры представляют собой сложнейшие интерактивные системы, осуществляющие ряд важных функций
- общение посредством сетевого протокола с HTTP-сервером
- разбор тела HTML-документа и вывод на экран текстово-графических или чисто текстовых документов с возможностью активации гиперссылок;
- интерпретацию и выполнение программ на языках Java Script и VB Script;
- взаимодействие с виртуальной Java машиной или консолью и выполнение встроенных Java апплетов, а также множество второстепенных, но необходимых функций, таких как поиск по документу, печать, запоминание позиции и адреса текущего документа и др..
Интересными новшествами последних лет являются общий интерфейс к шлюзам и серверам – CGI (Common Gateway Interface) и механизм сохранения информации на машине-клиенте Cookies. Первый позволяет подключать к документам программы и задачи, выполняемые на удаленных машинах – шлюзах и серверах и делает интерфейс между кодом документа и такой программой наиболее простым и удобным для разработчиков интерактивных систем типа поисковых каталогов, распределенных баз данных, универсальных каталогов ресурсов, служб новостей и, даже, виртуальных магазинов. Стандарт интерфейса CGI описывает взаимоотношения между формой документа HTML и прикладным процессом, который может самостоятельно произвести действия в ответ на запрос, либо подключить соответствующие сервисные системы Internet и вернуть результат на машину-клиент. Результат, как правило представляет собой также HTML-документ или файл в любом формате, который сохраняется на локальной машине.
Cookies – представляет стандартный интерфейс, поддерживаемый программами-браузерами, позволяющий HTML-документу сохранять некоторый объем информации на машине-клиенте. Такая возможность, обычно, используется для сохранения некоторых индивидуальных параметров страницы документа, и отображения на каждой машине таковой в оригинальном стиле, по настройкам, произведенным пользователем. Однако, возможности этой системы не ограничены только этим. Она может служить для настройки специфических параметров самого баузера и быть небольшой локальной базой данных для нужд определенного HTML-документа.
Ниже представлен фрагмент простого HTML-документа, выводящего на экран таблицу с двумя ячейками, в одной из которых содержится слово
"Hello", а в другой – "World".
<html>
<head> <title>My First Page</title>
</head>
<body>
<table border="4" cellpadding="2" width="100%">
<tr>
<td><p align="center"><strong><big>Hello</big></strong></td>
<td><p align="center"><strong><big>World</big></strong></td>
</tr> </table> </body> </html>
Как видно, структура документа не очень сложна и вполне доступна для понимания. Все стандартные элементы начинаются собственными тегами, заключенными в угловые скобки (например, <body>), многие из которых необходимо не только открывать, но и закрывать, для чего используется аналогичный тег, отличающийся наличием символа слеш перед именем тега (</body>). Интересно, что все элементы HTML-документа представляют единый поток элементов входного языка, а разделители (например строки) используются только для лучшего восприятия самого кода документа, как и в исходных текстах структурных поточно-ориентированных языков программирования типа C++.
Популярности WWW способствует и тот факт, что данная система является наиболее защищенной с теоретической точки зрения информационной системой. И, хотя нововведения, добавляемые к основному стандарту (CGI и Cookie) несколько ослабляют теоретическую защищенность, ее уровень остается на высоте.
В результате развития служб, тесно взаимодействующих с WWW и самой системы в целом, появились возможности использовать, в рамках данного сервиса, и другие стандартные Internet сервисы, такие как FTP или электронная почта. Поддержка WWW существует практически на всех платформах и системах, даже на не имеющих графического интерфейса, а документы в формате HTML, практически, являются наиболее распространенными форматированными текстовыми файлами в среде Internet. Среди всего разнообразия сервисных возможностей, предоставляемых Internet пользователи персональных компьютеров, как правило, выделяют и активно используют две – WWW и электронную почту.
Протоколы и сервисы поисковых систем, каталогов и телеконференций (Gopher, WAIS, ListServ, WHOIS, TRIKLE, UseNet, IRC)
Система Gopher является распределенной системой каталогизации документов, представляющая пользователю документы распределенные по сети в виде единой файловой системы. До 1995 года темпы роста пространства сети Gopher Space были выше таковых в системе WWW, однако, предлагая довольно универсальные и удобные механизмы для иерархического представления информации в виде файловой системы в Gopher напрочь отсутствуют механизмы интерактивной визуализации (подобные таковым в WWW). Нужно ли говорить, что система организована по архитектуре клиент-сервер, причем восстановление и разрыв соединения происходит перед и после каждого запроса. Для обмена данными используется протокол TCP и его порт. Несмотря на перечисленные недостатки, Gopher постоянно развивается и совершенствуется и остается лучшей системой представления иерархической структуры информации.
Система WAIS (Wide Area Information Servers) – распределенная поисковая система, дающая возможность производить поиск в базах данных с использованием универсального языка конструирования поисковых запросов. В системе WAIS реализуется концепция поисковой машины и универсального интерфейса пользователя. Обе системы связаны между собой собственным прикладным протоколом WAIS. Вся система в целом является наиболее общей моделью распределенной информационной системы и призвана поддерживать не только запросы, по и построение иерархического дерева ресурсов, в которые могут быть включены как отдельные листья и запросы. WAIS реализована на большинстве аппаратно-программных платформ в виде системы клиент-сервер. В основу клиентского ПО закладываются принципы навигации и формирования запросов, а также пользовательский интерфейс. Сервер WAIS – это и базы данных и ПО для их поддержки, осуществляющее поиск и возвращающее результат запроса в виде динамических списков соответствий критериям поиска. В основу архитектуры поисковой системы положены прогрессивные начала, которые дают возможность искать не только прямое соответствие, но и определять меру близости или рассеивания критериев. Под понятием "поисковая машина WAIS" обычно понимают поисковый механизм и набор алгоритмов. Система WAIS, в настоящее время, также, динамически развивается и совершенствуется. К универсальным поисковым системам типа Gopher и WAIS относятся также системы HyperG, LYNX, Archie и HyTelnet. Система ListServ является системой списков адресов электронной почты. Система похожа на обычные почтовые конференции с единственным отличием, имеется возможность рассылки сообщения не только конкретным пользователям, но и группам, причем число и адреса конкретных пользователей группы могут быть неизвестны. Пота посылается по адресу группы, а попадает ее членам. Также, имеется ряд команд, записываемых в тело почтовых посланий, предназначенных для операций над группами (регистрация члена группы, исключение из группы и т.п.). В остальном все характеристики системы укладываются в таковые для электронной почты и используют ее технологию.
Система WHOIS представляет систему поиска и базу данных пользователей Internet их локальных и глобальных адресов и другой информации. Для работы с базой данных пользователей, которая поддерживается службой регистрации адресов InterNic могут быть использованы как отдельные клиентские программы, так и электронная почта. Сервис аналогичного характера предлагают поисковые системы и базы данных пользователей и машин Fred, X.500 и NetFind.
Система TRIKLE представляет систему подписки на файлы по электронной почте. Она работает с ftp-архивами и осуществляет пересылку в автоматическом режиме. Для подписка используются символьные команды. Имеется возможность подписаться не только на файл или файлы, но и на каталоги. В этом случае, с определенной периодичностью, например, раз в неделю, присылаются списки обновлений. Подобные возможности предоставляют системы NetServ, MailBase и FTPMail. Причем последняя позволяет выполнять ftp-запрсы и команды посредством только электронной почты. Обычно, такие системы дают анонимный вход и не требуют никакой регистрации.
Система UseNet или NetNews представляет распределенную информационную систему новостей. В системе имеется понятие групп новостей, под которые отводятся распределяемые сетевые ресурсы. Система организована в виде иерархического каталога групп. Каждая группа имеет множество сообщений, которые просматривают члены группы и ведут переписку по заданной тематике. Подписка на группу дает возможность получать информацию о состоянии группы. Общая организация системы базируется на основе электронной почты и ее стандартных возможностей. И хотя в системе имеется свой прикладной протокол NNTP (Network News Transfer Protocol), работающий на основе протокола TCP, большинство возможностей можно использовать при помощи обычной электронной почты. Очень похожей системой является система электронных досок объявлений BBS (Bulletin Board System) сети RelCom. Однако, в отличие от UseNet, BBS использует протокол UUCP, что не позволяет производить интерактивные телеконференции.
Система IRC (Internet Relay Chat) представляет систему для ведения текстовых переговоров в реальном времени – чат. Позволяет производить "разговор" в реальном времени более чем двум пользователям посредством архитектуры каналов. Каналы составляют древовидную архитектуру. Пользователь перед отправкой сообщения определяет и инициализирует свой канал, затем посылает по нему сообщение. Все пользователи, "слушающие" данный канал, получают посланные в него сообщения и могут ответить в реальном времени. Каналы поддерживаются IRC-серверами и имеют авторизованный или анонимный доступ. IRC также использует протокол TCP и постоянно развивается. В настоящее время имеется множество клиентских программ для IRC на всех аппаратно-программных платформах. Интересно, что услуги переговоров chat предоставляют многие серверы, а сама технология обмена сообщениями в интерактивном режиме может быть организована на основе многих уже существующих сервисов и транспортных протоколов.
Заключение
Internet представляет сложную развивающуюся систему протоколов и сервисов, предоставляющих самые разнообразные услуги и возможности пользователям. В настоящее время, описанные возможности доступны на самой базовой и достаточно дешевой конфигурации персональной системы под управлением самых распространенных операционных систем (UNIX, Windows 4.х/NT, OS/2 и др.). Однако практически все сервисы и протоколы вышли из недр ОС UNIX и только в последнее время перекочевали на персональные платформы под управлением однопользовательских систем. В состав локальных сетей могут входить устройства печати, сканеры и другие устройства с собственным сетевым интерфейсом, которые могут выступать в локальной и глобальной сети как самостоятельные сетевые единицы.
Большинство современных операционных систем, таких как MS-Windows 4.х, OS/2, MS-Windows NT и UNIX-ы имеют необходимое ПО для организации полномасштабных сетевых взаимоотношений как на уровне локальной, так и на уровне глобальной сети. При этом ПО, которое в достатке выпускается третьими производителями существенно дополняет и расширяет базовые возможности ОС. Для клиентских рабочих мест лучше всего подходят такие "легкие" ОС как MS-Windows 4.x или OS/2, а для установки на серверы локальных или глобальных сетей – UNIX или Windows NT. Из прикладного клиентского ПО наиболее распространенными почтовыми клиентами являются MS Outlook Express, MS Exchange, Eudora и Netscape Mail; признанными лидерами в области обзора WWW-ресурсов, такие браузеры, как MS Internet Explorer, Netscape Communicator и Opera; среди программ для FTP популярностью пользуются Quite FTP, Net Vampire, ReGet, Alan FTP Explorer. Такие монстры сетевого ПО как Microsoft и Netscape создают целые комплексы сетевого клиентского ПО. В них входят не только средства работы с электронной почтой и WWW, но и News-клиенты, адресные книги, клиенты поисковых систем и собственные технологические решения, такие например как "Internet Порталы" Netscape или "Каналы" – Microsoft. Рынок сетевого ПО не стоит на месте, каждую неделю, а может быть и чаще анонсируются выпуски нового модифицированные версии существующего ПО. Большинство клиентских приложений развитых фирм производятся для многоплатформенной работы и встречаются как на IBM-PC, так и на Mac или других системах.
Вопросы для самоконтроля:
1. Назовите типы передающих сред.
2. Сервер WAIS, что это?
3. Что такое Cookies?
4. Что такое Электронная почта?
5. Что такое Telnet?
6. Перечислите методы доступа к среде передачи данных в сетях Ethernet.
7. Что такое теги?
8. Что такое дуплексная передача?
9. Что такое перекрестные наводки?
10. Какие типы выделенных серверов используются в расширенных сетях?
11. Что такое суммарные наводки?
12. Что такое импеданс?
13. Основные элементы оптического волокна.
14. Что такое затухание?
15. Какие преимущества дают выделенные серверы сети?
16. Что такое полоса пропускания?
17. Какие протоколы глобальных сетей предназначены для доставки пакетов?
18. Что такое выделенные серверы?
19. Что такое шлюз?
20. Назовите основные сервисы сетевой среды Internet.
21. Что такое маршрутизация?