Глава 6

СЕТЕВЫЕ ИНФОРМАЦИОННЫЕ

ТЕХНОЛОГИИ. INTERNET

 

В исторической перспективе, с появлением в первой полови­не 1970-х гг. видеотерминалов, первоначально возникли структу­ры «терминал — хост» (локальный или удаленный).

Чуть раньше и независимо развивались глобальные сети (па­кетной коммутации), используемые как для функций связи об­щего назначения, так и для коммуникаций «хост—хост» с целью (в то время) выравнивания использования вычислительных мощностей по часовым поясам (подобно тому, как это осущест­вляется в сетях энергопередачи). Это были именно вычисли­тельные сети. Структуры «терминал — хост» вносят сюда дополнительную динамику.

Эта ситуация сохраняется до середины 1980-х гг., когда по­явление и взрывообразное распространение ПК (как выразился один из тогдашних научных острословов «карлики-млекопитаю­щие на планете вычислительных динозавров») изменило поло­жение. Появляются локальные сети, интегрирующие прежде всего информационные ресурсы (файл-сервер), редкие или до­рогостоящие технические средства (принт-сервер) и т. п.

Изучение трафика (потоков данных) в развивающихся сетях показало смещение акцентов с распределенных вычислений на обмен информацией — доступ к удаленным базам данных, о мен сообщениями по электронной почте и пр. Вырисовываются , таким образом, информационные сети.

Наконец, в 1980—1990-е гг. широко распространяется техно­логия TCP/IP,  обеспечивая  рост и  развитие  «сети  сетей» Internet, которая представляет собой глобальную информационно-вычислительную сеть.

 

6.1 Некоторые основные понятия

 

Системы терминал—хост

 

Первые системы совместной эксплуатации информационных вычислительных ресурсов (системы коллективного пользования) появляются в 1960—1970-е гг. и относятся к вычислительным системам с разделением времени. Первоначально операционные системы ЭВМ (ОС) были рассчитаны на пакетную обработку информации, затем с созданием интерактивных терминальных устройств появляется возможность совместной работы пользова­телей в реальном масштабе времени. Основные этапы развития систем доступа к информационным ресурсам представлены на рис. 6.1 и включают следующие схемы.

1. Взаимодействие терминала (конечный пользователь, ис­точник запросов и заданий) и хоста (центральная ЭВМ, держа­тель  всех  информационных   и   вычислительных   ресурсов)   — рис. 6.1 а, б. Может осуществляться как в локальном, так и в  удаленном режиме, во втором случае, как правило, некоторая совокупность пользователей (дисплейный класс) размещается в  так называемом абонентском пункте — комплексе, снабженном котроллером (устройством управления), принтером, концентратором и обеспечивающим параллельную работу пользователей удаленным хостом. Связь между хостом и абонентским пунктом в этом случае осуществлялась с помощью модемов, по телефонным каналам [26].

 

 

 

2.  На следующем этапе (рис. 6.1, в) формируются сети пере­дачи данных (из существующих общих и специальных цифровых каналов), позволяющие как осуществлять более тесное взаимо­действие терминал—хост, так и обмен хост—хост для реализа­ции распределенных баз данных и децентрализации процессов обработки информации.

3.  Появление и массовое распространение персональных ком­пьютеров выводит на первый план (для массового пользователя) проблему связи ПК— ПК (рис. 6.1, г) для быстрого резервирова­ния и копирования информации (в том числе с использованием модемов) и локальные сети (рис. 6.1, д) — для совместной экс­плуатации баз данных (файл—сервер) и дорогостоящего обору­дования. В дальнейшем локальные сети потеряли самостоятель­ное значение вследствие интеграции с глобальными в двухуров­невые сети, строящиеся по единому принципу в рамках Internet (рис. 6.1, е).

В последующем перечисленные конфигурации не претерпели существенных изменений, однако понятия хост и терминал из чисто аппаратурных трансформировались в аппаратурно-программные и даже сугубо программные (например, эмуляторы терминала и эмуляторы хоста на однотипных ПК [23, 26]). Кроме того, в 80-е гг. в обиход входит понятие интеллектуального тер­минала (smart terminal) — сателлитной машины, которая берет на себя часть функций по обработке информации пользователя (на­пример, синтаксический анализ запроса или программы).

 

Системы клиент—сервер

 

Таким образом, по мере развития представлений о распределенных вычислительных процессах и процессах обработки данных складывается концепция архитектуры «клиент — сервер» обобщенное представление о взаимодействие двух компонент     информационной  технологии (технического и/или программного обеспечения) в вычислительных системах и сетях, и которых логически или физически могут быть выделены:

• активная сторона (источник запросов, клиент);

• пассивная сторона (сервер, обслуживание запросов, источ­ник ответов).

Взаимодействие клиент—сервер в сети осуществляется в со­ответствии с определенным стандартом, или протоколом — сово­купностью соглашений об установлении/прекращении связи и обмене информацией.

Обычно клиент и сервер работают в рамках единого протокола – telnet, ftp, gopher, http и пр., однако в связи с недостаточ­ностью такого подхода появляются мультипротокольные клиенты и серверы, например браузер Netscape Navigator.

Основные разновидности функциональных структур кли­ент—сервер рассмотрены в следующей главе.

 

Информационно-вычислительные сети    

 

Информационно-вычислительные сети включают вычисли­тельные сети, предназначенные для распределенной обработки данных (совместное использование вычислительных мощно­стей), и информационные сети, предназначенные для совместно­го использования информационных ресурсов. Сетевая техноло­гия обработки информации весьма эффективна, так как предос­тавляет пользователю необходимый сервис для коллективного решения различных распределенных прикладных задач, увеличи­вает степень использования имеющихся в сети ресурсов (инфор­мационных, вычислительных, коммуникационных) и обеспечивает удаленный доступ к ним.

Распределение потоков сообщений с целью доставки каждого сообщения по адресу осуществляется на узлах коммутации (УК) с  помощью коммутационных устройств. Система распределений потоков сообщений  в УК получила название системы коммутации.

Под коммутацией сетях передачи данных имеется в виду совокупность операций, обеспечивающих в узлах коммутации передачу информации между входными и выходными устройствами в соответствии с указанным адресом. При коммутации с накоплением (КН) абонент имеет постоянную прямую связь со своим УК и передает на него информацию. Затем эта информация передается через узлы коммутации другим абонентам, причем в случае занятости исходящих каналов информация запоминается в узлах и передается по мере освобождения каналов нужном направлении.

Коммутация пакетов. В системах ПД широкое распростра­нение получил метод коммутации пакетов (КП), или пакетной коммутации, являющийся разновидностью коммутации с накоп­лением. При КП сообщения разбиваются на меньшие части, называемые пакетами, каждый из которых имеет установленную максимальную длину. Эти пакеты нумеруются и снабжаются ад­ресами и прокладывают себе путь по сети (методом передачи с промежуточным хранением), которая их коммутирует.

Части одного и того же сообщения могут в одно и то же вре­мя находиться в различных каналах связи, более того, когда на­чало сообщения уже принято, его конец отправитель может еще даже не передавать в канал.

В сети с КП осуществляется следующий процесс передачи (рис. 6.2):

• вводимое в сеть сообщение разбивается на части — пакеты длиной обычно до 1000—2000 единичных интервалов, со­держащие адрес ОП получателя. Указанное разбиение осуществляется или в оконечном пункте, если он содержит ЭВМ, или в ближайшем к ОП УК;

 

 

• если разбиение сообщения на пакеты происходит в УК, то дальнейшая передача пакетов осуществляется по мере их формирования, не дожидаясь окончания приема в УК це­лого сообщения;

• в узле КП пакет запоминается в оперативной памяти (ОЗУ) и по адресу определяется канал, по которому он должен быть передан;

• если этот канал к соседнему узлу свободен, то пакет немед­ленно передается на соседний узел КП, в котором повторя­ется та же операция;

• если канал к соседнему узлу занят, то пакет может неболь­шое время храниться в ОЗУ до освобождения канала;

•  при хранении пакеты устанавливаются в очереди по на­правлению передачи, причем длина очереди не превышает 3—4 пакетов. Если длина очереди превышает допустимую, пакеты стираются из ОЗУ и их передача должна быть по­вторена.

Эталонная модель внутри- и межсетевого взаимодействия (OSI Reference Model). Многослойный (многоуровневый) харак­тер сетевых процессов приводит к необходимости рассмотрения многоуровневых моделей телекоммуникационных сетей. В каче­стве эталонной модели утверждена семиуровневая модель, в ко­торой все процессы, реализуемые открытой системой, разбиты на взаимно подчиненные уровни. В данной модели обмен ин­формацией может быть представлен в виде стека (табл. 6.1).

 

 

 

Эти представления были разработаны ISO (International Standard Organization) и получили название «Семиуровневой мо дели сетевого обмена» (Open System Interconnection Reference Model), или ВОС (Взаимодействие Открытых Систем). Основная идея модели заключается в том, что каждому уровню отводится конкретная роль, в том числе и транспортной среде. Благодаря этому общая задача передачи данных расчленяется на отдельные легко обозримые задачи.

Необходимые соглашения для связи одного уровня с выше и нижерасположенными называют протоколом.

Наличие нескольких уровней, используемых в модели, обес­печивает декомпозицию информационно-вычислительного про­цесса на простые составляющие. В свою очередь, увеличение числа уровней вызывает необходимость включения дополни­тельных связей в соответствии с дополнительными протоколами и интерфейсами. Интерфейсы (макрокоманды, программы) за­висят от возможностей используемой операционной системы.

Рассмотрим вкратце характеристики уровней ВОС.

Уровень 1, физический уровень модели — опре­деляет характеристики физической сети передачи данных, кото­рая используется для межсетевого обмена. Это такие параметры, как напряжение в сети, сила тока, число контактов на разъемах, электрические, механические, функциональные и процедурные параметры для физической связи в системах.

Уровень 2, канальный — представляет собой ком­плекс процедур и методов управления каналом передачи дан­ных, организованный на основе физического соединения. Ка­нальный уровень формирует из данных, передаваемых 1-м уров­нем, так называемые «кадры», последовательности пакетов. Каждый пакет содержит адреса источника и места назначения, а также средства обнаружения ошибок. На этом уровне осуществ­ляются управление доступом к передающей среде, используемой несколькими ЭВМ, синхронизация, обнаружение и исправление ошибок.

К канальному уровню отнесены протоколы, определяющие соединение, — протоколы взаимодействия между драйверами устройств и устройствами, с одной стороны, а с другой — между операционной системой и драйверами устройств.

Уровень 3, сетевой — устанавливает связь в вычислительной сети между двумя абонентами. Соединение происходи благодаря функциям маршрутизации, которые требуют наличия сетевого адреса в пакете. Сетевой уровень должен также обеспечивать обработку ошибок, мультиплексирование, управление потоками данных.

К сетевому уровню относятся протоколы, которые отвечают а отправку и получение данных, где определяется отправитель и получатель и определяется необходимая информация для достав­ки пакета по сети.

Уровень 4, транспортный — поддерживает непре­рывную передачу данных между двумя взаимодействующими друг с другом удаленными пользовательскими процессами. Ка­чество транспортировки, безошибочность передачи, независи­мость вычислительных сетей, сервис транспортировки из конца в конец, минимизация затрат и адресация связи гарантируют не­прерывную и безошибочную передачу данных.

Транспортный протокол связывает нижние уровни (физиче­ский, канальный, сетевой) с верхними уровнями, которые реа­лизуются программными средствами. Этот уровень как бы раз­деляет средства формирования данных в сети от средств их пере­дачи. Сетевой уровень предоставляет услуги транспортному, который требует от пользователей запроса на качество обслужи­вания сетью.

После получения от пользователя запроса на качество обслу­живания транспортный уровень выбирает класс протокола, ко­торый обеспечивает требуемое качество обслуживания. При су­ществовании разных типов сетей транспортный уровень позво­ляет следующие параметры качества обслуживания:

•  пропускная способность;

•  надежность сети;

•  задержка передачи информации через сеть;

•  приоритеты;

•  защита от ошибок;

•  мультиплексирование;

•  управление потоком; 

•  обнаружение ошибок.

Уровень 5, сеансовый (уровень сессии) – на данном уровне осуществляется управление сеансами (сессиями) связи между двумя  взаимодействующими прикладными пользовательскими процессами (пользователями). Определяется начало и окончание сеанса связи: нормальное или аварийное; определяется время, длительность и режим сеанса связи, точки синхронизации для промежуточного контроля и восстановления при передаче данных, восстанавливается соединение после ошибок в время сеанса связи без потери данных.

Уровень 6, представления данных (представи­тельский, уровень представления информации, уровень обмена данными с прикладными программами) — управляет представ­лением данных в необходимой для программы пользователя форме, осуществляет генерацию и интерпретацию взаимодейст­вия процессов, кодирование/декодирование данных, в том чис­ле компрессию и декомпрессию данных (преобразование дан­ных из промежуточного формата сессии в формат данных приложения).

На рабочих станциях могут использоваться различные опера­ционные системы: DOS, UNIX, OS/2. Каждая из них имеет свою файловую систему, свои форматы хранения и обработки данных. Задачей данного уровня является преобразование данных при передаче информации в формат, который используется в инфор­мационной системе. При приеме данных уровень представления данных выполняет обратное преобразование.

Уровень 7, прикладной (уровень прикладных про­грамм или приложений) — определяет протоколы обмена дан­ными этих прикладных программ; в его ведении находятся при­кладные сетевые программы, обслуживающие файлы, а также выполняются вычислительные, информационно-поисковые ра­боты, логические преобразования информации, передача почто­вых сообщений и т. п. Одна из задач этого уровня — обеспечить интерфейс пользователя.

Таким образом, мы видим, что уровень с меньшим номером предоставляет услуги смежному с ним верхнему уровню и поль­зуется для этого услугами смежного с ним нижнего уровня. Са­мый верхний (7-й) уровень потребляет услуги, самый нижний (1-й) только предоставляет их.

Кроме того, на разных уровнях обмен происходит в различ­ных единицах информации: биты, кадры, фреймы, пакеты, сеан­совые сообщения, пользовательские сообщения. Уровень может «ничего не знать» о содержании сообщения, но он должен «знать», что дальше делать с этим сообщением. Уровень прило­жений передает сообщение на следующий уровень и т. д. через все уровни, пока физический уровень не передаст его в кабель-Каждый уровень по-своему обрабатывает, например, сообщение электронной почты, но не «знает» о фактическом содержании этого сообщения.

Для правильной и, следовательно, полной и безошибочной передачи данных необходимо придерживаться согласованных и установленных правил, оговоренных   в   протоколе   передачи данных.

 

Вазовые сетевые топологии

 

Проиллюстрируем (на примере локальных сетей) основные принципы комплексирования сетевого оборудования (или топологии сетей). При создании сети в зависимости от задач, кото­рые она должна будет выполнять, может быть реализована одна из трех базовых топологий: «звезда», «кольцо» и «общая шина» — рис. 6.3, табл. 6.2.

 

 

 

Концепция топологии сети в виде звезды заимствована из об­ласти больших ЭВМ, в которой головная (хост-) машина полу­чает и обрабатывает все данные с периферийных устройств (тер­миналов или рабочих станций пользователя), являясь единствен­ным активным узлом обработки данных.

Информация между любыми двумя пользователями в этом случае проходит через центральный узел вычислительной сети. Пропускная способность сети определяется вычислительной мощностью узла и гарантируется для каждой рабочей станции. Коллизий (столкновений) данных не возникает.

Кабельное соединение достаточно простое, так как каждая рабочая станция связана с узлом. Затраты на прокладку кабелей высокие, особенно когда центральный узел географически расположен не в центре сети. При расширении вычислительных сетей не могут быть использованы ранее выполненные кабельные связи: к новому рабочему месту необходимо прокладывать от­дельный кабель из центра сети.

Топология в виде звезды является наиболее быстродействующей из всех топологий вычислительных сетей, поскольку передача данных между рабочими станциями проходит через центральный узел (при его хорошей производительности) по отдель­ным линиям, используемым только этими рабочими станциями. Кроме того, частота запросов передачи информации от одной станции к другой невысока по сравнению с наблюдаемой при других топологиях.

При кольцевой топологии сети рабочие станции связаны одна с другой по кругу, т. е. рабочая станция 1 с рабочей станцией 2, рабочая станция 3 с рабочей станцией 4 и т. д. Последняя рабо­чая станция связана с первой. Коммуникационная связь замыка­ется в кольцо, данные передаются от одного компьютера к дру­гому как бы по эстафете. Если компьютер получит данные, предназначенные для другого компьютера, он передает их сле­дующему по кольцу. Если данные предназначены для получив­шего их компьютера, они дальше не передаются.

Прокладка кабелей от одной рабочей станции до другой мо­жет быть довольно сложной и дорогостоящей, особенно если географически рабочие станции расположены далеко от кольца (например, в линию).

Пересылка сообщений является очень эффективной, так как большинство сообщений можно отправлять по кабельной систе­ме одно за другим. Очень просто можно выполнить циркуляр­ный (кольцевой) запрос на все станции. Продолжительность пе­редачи информации увеличивается пропорционально количеству рабочих станций, входящих в вычислительную сеть.

Основная проблема кольцевой топологии заключается в том, что каждая рабочая станция должна участвовать в пересылке ин­формации, и в случае выхода из строя хотя бы одной из них ра­бота в сети прекращается.

Топология «общая шина» (магистраль) предполагает использование одного кабеля, к которому подключаются все компьютеры сети. В данном случае кабель используется совместно всеми станциями по очереди. Принимаются специальные меры для того, чтобы при работе с общим кабелем компьютеры не мешали друг другу передавать и принимать данные.

Надежность здесь выше, так как выход из строя отдельных компьютеров не нарушает работоспособность сети в целом. Поиск неисправностей в кабеле затруднен. Кроме того, так как и пользуется только один кабель, в случае повреждения нарушается работа всей сети.

Комбинированные топологические решения. Наряду с отмечен­ными базовыми, на практике применяется ряд комбинирован­ных топологий. К таковым относится, например, логиче­ская кольцевая сеть, которая физически монтируется как соединение звездных топологий (рис. 6.3, г). Отдельные «звезды» включаются с помощью специальных коммутаторов, которые иногда называют «хаб» (от англ. Hub — концентратор).

 

6.2. Технологии Internet

 

В [20] приведено следующее определение: «Федеральный се­тевой совет признает, что... Internet — это глобальная информа­ционная система, которая:

•  логически взаимосвязана пространством глобальных уни­кальных адресов, основанных на  Internet-протоколе (IP) или на последующих расширениях или преемниках IP;

•  способна поддерживать коммуникации с использованием семейства Протокола управления передачей/Internet – протокола (TCP/IP) или его последующих расширений/преем­ников и/или других IP-совместимых протоколов;

•  обеспечивает, использует или делает доступной на общест­венной   или  частной  основе  высокоуровневые  сервисы, надстроенные над описанной здесь коммуникационной и иной связанной с ней инфраструктурой.

За два десятилетия своего существования Сеть Internet претерпела кардинальные изменения (рис. 6.4). Она зарождалась в эпоху разделения времени, но сумела выжить во времена господ­ства персональных компьютеров, одноранговых сетей, систем клиент/сервер и сетевых компьютеров. Она проектировалась до первых ЛВС, но впитала эту новую сетевую технологию, равно как и появившиеся позднее сервисы коммутации ячеек и кадров. Она задумывалась для поддержки широкого спектра функции, от разделения файлов и удаленного входа до разделения ресурсов сов и совместной работы, породив электронную почту и в более поздний период Всемирную паутину (WWW)».

Рассмотрим некоторые основные Internet-технологии.

 

 

 

 

 

 

Система адресов Internet

 

Сеть сетей – Internet — базируется на принципах пакетной коммутации и реализует многоуровневую совокупность протоколов, подобную рассмотренной выше модели OSI. Прежде чем перейти описанию данных протоколов, отметим, что на каждом из уровней используются определенные системы адресации, позволяющие осуществлять передачу сообщений и адресацию информационных ресурсов. Основными типами адресов являются следующие: 

•  адрес Ethernet;

•  IP-адрес (основной адрес в Internet);

•  доменные адреса;

•  почтовые адреса;                                            

•  номера портов;

•  универсальный локатор (идентификатор) сетевого ресурса (URL/URI).

Адрес Ethernet. Internet поддерживает разные физические сре­ды, из которых наиболее распространенным аппаратурным сред­ством реализации локальных сетей (нижний уровень многоуров­невых сетей) является технология Ethernet.

В локальной сети обмен осуществляется кадрами Ethernet каждый из которых содержит адрес назначения, адрес источни­ка, поле типа и данные. Каждый сетевой адаптер (интерфейс, карта Ethernet — физическое устройство, подключающее компь­ютер к сети) имеет свой сетевой адрес, размер которого состав­ляет 6 байт.

Адаптер «слушает» сеть, принимает адресованные ему кадры и широковещательные кадры с адресом FF:FF:FF:FF:FF:FF и от­правляет кадры в сеть, причем в каждый момент времени в сег­менте узла сети находится только один кадр.

Собственно Ethernet-адрес соответствует не компьютеру, а его сетевому интерфейсу. Таким образом, если компьютер имеет несколько интерфейсов, то это означает, что каждому интерфей­су будет назначен свой Ethernet-адрес. Каждой карте Ethernet соответствуют Ethernet-адрес и IP-адрес, которые уникальны в рамках Internet.

IP-адрес представляет собой 4-байтовую последовательность, причем каждый байт этой последовательности записывается в виде десятичного числа. Адрес состоит из двух частей: адреса сети и номера хоста. Обычно под хостом понимают компьютер, подключенный к Internet, однако это может быть и принтер с  сетевой картой, и терминал или вообще любое устройство, кото­рое имеет свой сетевой интерфейс.

Существует несколько классов адресов, различающихся количеством битов, отведенных на адрес сети и адрес хоста в сет В табл. 6.3 приведены характеристики основных классов сетей-

 

 

Назначение классов IP-адресов:

А – использование в больших сетях общего доступа;

Вв сетях среднего размера (большие компании, науч­но-исследовательские институты, университеты);

С — в сетях с небольшим числом компьютеров (небольшие компании и фирмы).                                                                      

Среди IP-адресов несколько зарезервировано под специаль­ные случаи (табл. 6.4).                                                                     

 

 

Для установления соответствия между IP-адресом и адресом Ethernet в локальных сетях используется протокол отображения адресов — Adress resolution Protocol (ARP). Отображение адресов осуществляется в ARP-таблице (табл. 6.5), которая необходима, так как адреса выбираются произвольно и нет какого-либо алго­ритма для их вычисления.

 

 

ARP-таблица заполняется автоматически; если нужного адреса в таблице нет, то в сеть посылается широковещательный запрос «чей это IP-адрес?», который получают все сетевые интерфейсы, но отвечает только владелец адреса.

Система доменных имен. Хотя числовая адресация удобна для машинной обработки таблиц маршрутов, она очевидно не приемлема для использования человеком. Для облегчения взаи­модействия вначале применялись таблицы соответствия число­вых адресов именам машин. Эти таблицы сохранились и исполь­зуются многими прикладными программами (табл. 6.6).

 

 

Пользователь для обращения к машине может использовать как IP-адрес, так и имя.

По мере роста сети была разработана система доменных имен DNS (Domain Name System), которая строится по иерар­хическому принципу, однако эта иерархия не является строгой. Фактически нет единого корня всех доменов Internet. В 80-е гг. были определены первые домены (национальные, США) верхне­го уровня: gov, mil, edu, com, net. Позднее появились нацио­нальные домены других стран: uk, jp, аи, ch и т. п. Для СССР был выделен домен su, однако после приобретения республика­ми союза суверенитета, многие из них получили свои собствен­ные домены: uа, rи, la, li и т. п. Однако домен su был сохранен, и таким образом, например, в Москве существуют организации с доменными именами kiae. su и msk. ru.

Вслед за доменами верхнего уровня следуют домены, опреде­ляющие либо регионы (msk), либо организации (kiae); следую­щие уровни иерархии могут быть закреплены за небольшими ор­ганизациями, либо за подразделениями больших организации (рис. 6.5).

Наиболее популярной программой поддержки DNS являете BIND,   или  Berkeley Internet Name Domain,   —  сервер доменных имен, реализованный в университете Беркли, который широк применяется в Internet. Он обеспечивает поиск доменных имен и IP-адресов для любого узла сети. BIND обеспечивает также рассылку сообщений электронной почты через узлы Internet.

 

 

 

Вообще говоря, сервер имен может быть установлен на лю­бой компьютер локальной сети. При выборе машины для уста­новки сервера имен следует принимать в расчет то обстоятельст­во, что многие реализации серверов держат базы данных имен в оперативной памяти.

Почтовые адреса. В Internet принята система адресов, кото­рая базируется на доменном адресе машины, подключенной к сети. Почтовый адрес состоит из двух частей: идентификатора пользователя, который записывается перед знаком «коммерче­ского at — @», и доменного адреса машины, который записы­вается после знака «@».

Различают следующие типы адресов:

местный адрес — распознается как адрес на машине, с ко­торой осуществляется отправка почты;

•  адреса UUCP — могут имеют вид:

адреса SMTPстандартные для Internet:

 

Если машина, с которой отправляется почта, имеет прямую линию связи по протоколу UUCP со следующей машиной (в адресе), то почта передается на эту машину; если такого соединения нет, то почта не рассылается и выдается сообщение об ошибке. (Программа рассылки почты sendmail сама преобразует адреса формата SMTP в адреса UUCP, если доставка сообщения осуществляется по этому протоколу).

При   рассылке   может  использоваться   и   смешанная  адресация:                                                                                                       

user%hostA@hostB — почта отправляется с машины hostB на машину hostA;

user!hostA@hostB — почта отправляется с машины hostR на машину hostA;

hostA!user%hostB — почта отправляется с hostA на hostB

TCP/UDP-nopmусловный номер соединения с хост-маши­ной по определенному протоколу прикладного уровня (точнее информационный сервис, WKSWell Known Services, или прикладная программа, которая осуществляет обслуживание по определенном порту TCP или UDP). К сервисам относятся: дос­туп в режиме удаленного терминала, доступ к файловым архивам FTP, доступ к серверам World Wide Web и т. п.

Система универсальных идентификаторов ресурсов (URI/URL) разработана для использования в системах WWW, и в ее основу заложены следующие принципы.

Расширяемость — новые адресные схемы должны были легко вписываться в существующий синтаксис URI; была дос­тигнута за счет выбора определенного порядка интерпретации адресов, который базируется на понятии «адресная схема». Идентификатор схемы стоит перед остатком адреса, отделен от него двоеточием и определяет порядок интерпретации остатка.

Полнота — по возможности любая из существовавших схем должна была описываться посредством URI.

Читаемость — адрес должен легко пониматься челове­ком, что вообще характерно для технологии WWW — документы вместе с ссылками могут разрабатываться в обычном текстовом редакторе.

Формат URL включает:

•  схему адреса (тип протокола доступа — http, gopher, wais, telnet, ftp и т. п.);

IP- или доменный адрес машины;

•  номер ТСР порта;

•  адрес ресурса на сервере (каталог или путь);

•  имя HTML-файла и метку;

•  критерий поиска данных.

Для каждого вида протокола приложений выбирается с подмножество полей из представленного выше списка. Прежде чем рассмотреть различные схемы представления адресов, при­едем пример простого адреса URI:

В данном случае путь состоит из доменного адреса машины, которой установлен сервер HTTP, и пути от корня дерева

сервера к файлу index.html.

Схема http — основная для WWW; содержит идентификатор адрес машины, TCP-порт, путь в директории сервера, поисковый критерий и метку. Приведем несколько примеров URI для схемы HTTP:

Это наиболее распространенный вид URI, применяемый в документах WWW. Вслед за именем схемы (http) следует путь, состоящий из доменного адреса машины и полного адреса HTML-документа в дереве сервера HTTP.

В качестве адреса машины допустимо использование и IP-адреса:

При указании адреса ресурса возможна ссылка на точку внутри файла HTML. Для этого вслед за именем документа мо­жет быть указана метка внутри HTML-документа

:

Символ «#» отделяет имя документа от имени метки. Другая возможность схемы HTTP — передача параметров. Первоначаль­но предполагалось, что в качестве параметров будут передаваться ключевые слова, но по мере развития механизма CGI – скриптов в качестве параметров стала передаваться и другая информация:

В данном  примере  предполагается,  что  файл isindex.html — документ с возможностью поиска по ключе­вым словам.

При  использовании HTML Forms параметры передаются как поименованные поля:

Схема  FTP  позволяет адресовать файловые архивы FТР из программ-клиентов World Wide Web. При этом возможно указание не только имени схемы, адреса FTP-архива, но и идентификатора пользователя и даже его пароля. Наиболее часто данная схема используется для доступа к публичным архивам FTP:

В      данном      случае      записана      ссылка      на      архив polyn.net.kiae.su  с  идентификатором  anonymous  или  ftр (анонимный доступ). Если есть необходимость указать иденти­фикатор пользователя и его пароль, то можно это сделать перед адресом машины:

В данном случае эти параметры отделены от адреса машины символом @, а друг от друга — двоеточием. В некоторых систе­мах можно указать и тип передаваемой информации, но данная возможность не стандартизована.

Схема Gopher используется для ссылки на ресурсы рас­пределенной информационной системы Gopher; состоит из иден­тификатора и пути, в котором указывается адрес Gopher-сервера, тип ресурса и команда Gopher:

В данном примере осуществляется доступ к Gopher-серверу gopher.kiae.su через порт 70 для поиска (тип 7) слова software. Следует заметить, что тип ресурса, в данном случае 7, передается не перед командой, а вслед за ней.

Схема MAILTO предназначена для отправки почты по стандарту RFC-822 (стандарт почтового сообщения). Общий вид схемы выглядит так:

Схема   NEWS   — просмотр сообщений системы Usenet.

При этом используется следующая нотация:

В данном примере пользователь получит идентификаторы ей из группы соmр.infosystems.gopher  в режиме уведомления. Можно получить и текст статьи, но тогда необходим ее индентификатор:

 

 

Схема TELNET осуществляет доступ к ресурсу в режиме удаленного терминала. Обычно клиент вызывает дополнитель­ную программу для работы по протоколу telnet. При использовании этой схемы необходимо указывать идентификатор пользова­теля, допускается использование пароля:

 

Схема WAIS (протокол Z39.50). WAIS — распределенная информационно-поисковая система, работающая в режимах по­иска и просмотра. При поиске используется форма со знаком «?», отделяющим адресную часть от ключевых слов:

В данном случае обращаются к базе данных wais на сервере wais.think.com с запросом на поиск документов, содержащих слово guide. Сервер возвращает клиенту список идентификато­ров документов, после получения которого можно использовать вторую форму схемы wais-запрос на просмотр документа:

где 039 — идентификатор документа.

Схема FILE. WWW-технология используется как в сетевом, так и в локальном режимах. Для локального режима ис­пользуют схему FILE.

В данном   примере   приведено   обращение к локальному документу  на   персональном    компьютере  с MS-DOS или  MS -Windows.

Существует несколько схем. Эти схемы реально на практике не используются или находятся в стадии разработки, поэтому останавливаться на них мы не будем.   

 

Совокупность протоколов Internet

 

Стек, или семейство протоколов TCP/IP, отличается от вышерассмотренной модели OSI и обычно ограничивается схемой, представленной в табл. 6.7. Обе архитектуры включают похожие уровни, однако в TCP/IP несколько «слоев» OSI-модели объединены в один.

 

 

Взаимодействие на уровне прикладных протоколов осуществ­ляется путем обмена командами установления/прекращения со­единений (типа open/close), приема/передачи (send/receive) и собственно данными. Прикладные протоколы (Telnet, элек­тронная почта, Gopher, Ftp, Http, Wais) будут рассмотрены далее, совместно с информационными сервисами доступа к информа­ционным ресурсам, здесь же мы ограничимся рассмотрением собственно протоколов TCP/IP — канального, сетевого, транс­портного уровней. Вот эти протоколы:

TCP Transmission Control Protocol — базовый транспорт­ный протокол, давший название всему семейству протоколов TCP/IP;

UDP User Datagram Protocol — второй по распространен­ности транспортный протокол семейства TCP/IP;

IP — Internet Protocol — межсетевой протокол;

ARP Address Resolution Protocol — используется для опре­деления соответствия IP-адресов и Ethernet-адресов;

SLIPSerial  Line  Internet Protocol — протокол передачи данных по телефонным линиям;                                                

PPPPoint  to Point Protocol — протокол обмена данным «точка-точка»;

PРС — Remote Process Control — протокол управления уда­ленными процессами;

TFTPTrivial File Transfer Protocol — тривиальный прото­кол передачи файлов;

DNS — Domain Name System — система доменных имен;

RIP — Routing Information Protocol — протокол маршрутизации.

Некоторые предварительные замечания. На каждом из уров­ней схемы рис. 6.6 коммуникация осуществляется физически блоками (пакетами), и при переходе с уровня на уровень реали­зуются следующие преобразования форматов: инкапсуляция/экскапсуляция; фрагментация/дефрагментация.

 

 

Инкапсуляция — способ упаковки данных в формате вышестоящего протокола в формат нижестоящего протокола. При этом один или несколько первичных пакетов преобразуют­ся в один вторичный пакет и снабжаются управляющей инфор­мацией, характерной для принимающего уровня. Например, по­мещение пакета IP в качестве данных Ethernet-кадра, помеще­ние TCP-сегмента в качестве данных в IP-пакет (рис. 6.6). При возврате на верхний уровень исходный формат восстанавливается в соответствии с обратной процедурой — экскапсуляцией.

Фрагментация  — реализуется, если разрешенная длина пакета нижнего уровня недостаточна для размещения первичного пакета, при этом осуществляется «нарезка» пакетов (например, на пакеты SLIP или фреймы РРР), аналогично при возврате на первичный уровень пакет должен быть дефрагментирован.

При описании основных протоколов стека TCP/IP будем следовать модели, представленной в табл. 6.7.  Первыми будут рассмотрены  протоколы  канального ровня  SLIP  и  РРР единственные протоколы, которые были разработаны в рам Internet и для Internet. Другие протоколы, например NDIS или ODI, мы рассматривать не будем, поскольку они создавались в других сетях, хотя и могут использоваться в сетях TCP/IP также

Протоколы канального уровня SLIP и РРР применяются на телефонных каналах. С помощью этих каналов к сети подключается большинство индивидуальных пользователей, а также не большие локальные сети. Подобные линии связи могут обеспе­чивать скорость передачи данных до 115 200 бит/с.

Serial Line IP (SLIP). Обычно этот протокол применя­ют как на выделенных, так и на коммутируемых линиях связи со скоростью передачи от 1200 до 19 200 бит в секунду.

В рамках протокола SLIP осуществляется фрагментация IP-пакетов, при этом SLIP-пакет должен начинаться символом ESC (восьмеричное 333 или десятичное 219) и заканчиваться символом end (восьмеричное 300 или десятичное 192). Стандарт не определяет размер SLIP-пакета, поэтому любой интерфейс имеет специальное поле, в котором пользователь должен указать эту длину.

Соединения типа «точка — точка» — протокол  РРР (Point to Point Protocol). Данный протокол обеспечивает стан­дартный метод взаимодействия двух узлов сети. Предполагается, что обеспечивается двунаправленная одновременная передача данных. Собственно говоря, РРР состоит из трех частей: меха­низма инкапсуляции (encapsulation), протокола управления со­единением (link control protocol) и семейства протоколов управ­ления сетью (network control protocols).

Под датаграммой в РРР понимается информационная еди­ница сетевого уровня (применительно к IPIP-пакет). Под фреймом понимают информационную единицу канального уров­ня (согласно модели OSI). Для обеспечения быстрой обработки информации длина фрейма РРР должна быть кратна 32 битам.

Фрейм состоит из заголовка и хвоста, между которыми со­держатся данные. Датаграмма может быть инкапсулирована в один или несколько фреймов (рис. 6.7). Пакетом называют информационную единицу обмена между модулями сетевого и канального уровней. Обычно каждому пакету ставится в соответствие один фрейм, за исключением тех случаев, когда канальный уровень требует большей фрагментации данных или, наоборот, объединяет пакеты для более эффективной передачи.

 

 

Протокол управления соединением предназначен для установ­ки соглашения между узлами сети о параметрах инкапсуляции (размер фрейма и т. п.), кроме того, он позволяет проводить идентификацию узлов. Первой фазой установки соединения яв­ляется проверка готовности физического уровня передачи данных. При этом такая проверка может осуществляться периодически, позволяя реализовать механизм автоматического восстановления физического соединения, как это бывает при работе  через модем по коммутируемой линии. Если физическое соединение уста­новлено, то узлы начинают обмен пакетами протокола управле­ния соединением, настраивая параметры сессии.

Межсетевые протоколы. К данной группе относятся прото­колы IP, ICMP, ARP.

Протокол IP является основным в иерархии протоколов TCP/IP и используется для управления рассылкой TCP/I Р – пакетов по сети Internet. Среди различных функций, возложенных на IP, обычно выделяют следующие:

•  определение пакета, который является базовым понятием и единицей передачи данных в сети Internet;

•  определение адресной схемы, которая используется в сети Internet;

•  передача данных между канальным уровнем (уровнем дос­тупа к сети) и транспортным уровнем (другими словами, преобразование транспортных датаграмм во фреймы канального уровня);

•  маршрутизация пакетов по сети, т. е. передач: а пакетов от одного шлюза к другому с целью передачи пакета маши­не-получателю;

•  фрагментация  и дефрагментация  пакетов транспортного уровня.

Таким образом, вся информация о пути, по которому должен пройти пакет, определяется по состоянию сети в момент прохождения пакета. Эта процедура называется маршрутизацией в отличие от коммутации, используемой для предварительного установления маршрута следования отправляемых данных.

Маршрутизация представляет собой ресурсоемкую процедуру, так как предполагает анализ каждого пакета, который проходит через шлюз или маршрутизатор, в то время как при коммутации анализируется только управляющая информация, устанав­ливается канал (физический или виртуальный), и все пакеты пересылаются по этому каналу без анализа маршрутной инфор­мации. Однако при неустойчивой работе сети пакеты могут пе­ресылаться по различным маршрутам и затем собираться в еди­ное сообщение. При коммутации путь придется устанавливать заново для каждого пакета и при этом потребуется больше на­кладных затрат, чем при маршрутизации.

Структура пакета IP представлена на рис. 6.8. Фактически в заголовке пакета определены все основные данные, необходи­мые для перечисленных выше функций протокола IP: адрес отправителя, адрес получателя, общая длина пакета и тип пересы­лаемой датаграммы.

Используя данные заголовка, машина может определить, на какой сетевой интерфейс отправлять пакет. Если IP-адрес полу­чателя принадлежит одной из ее сетей, то на интерфейс этой сети пакет и будет отправлен, в противном случае пакет отпра­вят на другой шлюз.

Как уже отмечалось, при обычной процедуре инкапсулиро­вания пакет просто помещается в поле данных фрейма, а в слу­чае, когда это не может быть осуществлено, разбивается на более мелкие фрагменты.

 

 

 

Размер максимально возможного фрейма, который передается по сети, определяется величиной MTU (Maximum Transsion Unit), определенной для протокола канального уровня. Для последующего восстановления пакет IP должен содержать информацию о своем разбиении и для этой цели используются поля «flags» и «fragmentation offset». В этих полях определяется, какая часть пакета получена в данном фрейме, если этот пакет был фрагментирован на более мелкие части.

ICMP (Internet Control Message Protocol) — наряду с IP и ARP относится к межсетевому уровню. Протокол используется для рассылки информационных и управляющих сообщений. При этом используются следующие виды сообщений.

Flow control — если принимающая машина (шлюз или ре­альный получатель информации) не успевает перерабатывать информацию, то данное сообщение приостанавливает отправку пакетов по сети.

Detecting unreachable destination — если пакет не мо­жет достичь места назначения, то шлюз, который не может дос­тавить пакет, сообщает об этом отправителю пакета.

Redirect routing — это сообщение посылается в том слу­чае, если шлюз не может доставить пакет, но у него есть на этот счет некоторые соображения, а именно адрес другого шлюза.

Checking remote host — в этом случае используется так называемое ICMP Echo Message. Если необходимо проверить наличие стека TCP/IP на удаленной машине, то на нее посыла­ется сообщение данного типа. Как только система получит это сообщение, она немедленно высылает подтверждение.

ICMP используется также для получения сообщения об исте­чении срока «жизни» пакета на шлюзе. При этом используется время жизни пакета, которое определяет число шлюзов, через которые пакет может пройти. Программа, которая использует эту информацию (сообщение time execeed протокола ICMP), называется traceroute.

Протоколы управления маршрутизацией.   Наиболее  распространенный из них – протокол RIP.

Протокол RIP  (Routing Information Protocol) — предназначен для  автоматического обновления таблицы маршрутов, при этом используется информация о состоянии сети, которая рассылается маршрутизаторами (routers). В соответствии с протоколом  RIP любая машина может быть маршрутизатором. При этом все маршрутизаторы делятся на активные и пассивные.

Активные   маршрутизаторы   сообщают  о  маршрутах, которые они поддерживают в сети. Пассивные маршрутизаторы читают эти широковещательные сообщения и исправляют свои таблицы маршрутов, но при этом сами информации в сеть не предоставляют. Обычно в качестве активных маршрутизаторов выступают шлюзы, а в качестве пассивных — обычные машины (hosts).

Протоколы транспортного уровня.

User Datagram Protocol (U DР) один из двух прото­колов транспортного уровня, используемых в стеке протоколов TCP/IP. UDP позволяет прикладной программе передавать свои сообщения по сети с минимальными издержками, связанными с преобразованием протоколов уровня приложения в протокол 1р Однако при этом прикладная программа сама должна обеспечи­вать подтверждение того, что сообщение доставлено по месту назначения. Заголовок UDP-датаграммы (сообщения) имеет вид, показанный на рис. 6.9.

 

 

Порты в заголовке определяют протокол UDP как мультип­лексор, который позволяет собирать сообщения от приложении и отправлять их на уровень протоколов. При этом приложение использует определенный порт. Взаимодействующие через сеть приложения могут использовать разные порты, что и отражает заголовок пакета. Всего можно определить 216 разных портов. Первые 256 портов закреплены за так называемыми «well known services (WKS

Поле  Length  определяет общую длину  сообщения.   Поле Checksum служит для контроля целостности данных. Приложение, которое использует протокол UDP, должно поддерживать целостность данных, анализируя поля Checksum и Length. Кроме этого, при обмене данными по UDP прикладная программа сама должна заботиться о контроле получения данных адреса­том Обычно это достигается обменом подтверждениями о дос­тавке между прикладными программами.

Transfer Control ProtocolTCP. В том случае, ко­гда контроль качества передачи данных по сети имеет особое значение для приложения, используется протокол TCP. Этот протокол также называют надежным, ориентированным на соеди­нение потокоориентированным протоколом. Рассмотрим формат передаваемой по сети датаграммы (рис. 6.10). Согласно этой структуре в TCP, как и в UDP, используются порты. В поле Sequence Number (SYN) определен номер пакета в последова­тельности пакетов, которая составляет сообщение, затем идет поле подтверждения Asknowledgment Number и другая управ­ляющая информация.

 

 

В дальнейшем мы предполагаем рассмотреть основные про­токолы прикладного уровня, обеспечивающие доступ к ин­формационным ресурсам Internet (и не только к ним), а также соответствующее программное обеспечение (программы-клиенты и программы-серверы).

Это следующие протоколы:

•  эмуляции терминала Telnet;

•  электронной почты SMTP, UUCP;

•  Распределенных файловых систем — NNTP, Gopher, FTP;

•  гипертекстового доступа к WWWHTTP;

•  управления поиском в распределенных базах данных  — Z39.50

Каждый из перечисленных протоколов предполагает наличие некоторой совокупности команд (командный язык), которыми обмениваются программы-клиенты и программы-серверы данного протокола. Естественно, целью такого взаимодействия является обмен пользовательскими данными.

Могут быть выделены два основных класса средств доступа и организации информационных ресурсов:

•  распределенные файловые системы (Usenet, FTP, Gopher)

•  распределенные информационные системы (WWW, WA1S)

 

6.3. Прикладные протоколы коммуникации Internet

 

К данной группе протоколов относятся:

•  протокол эмуляции терминала Telnet (коммуникация в ре­жиме он-лайн);

•  протоколы электронной почты SMTP, UUCP (коммуника­ция в режиме офф-лайн).

 

Telnet

 

Протокол    эмуляции    удаленного    терминала Telnet — одна из самых старых информационных технологий Internet.

Этот протокол может быть использован и для организации взаимодействий «терминал—терминал» (связь) и «процесс—про­цесс» (распределенные вычисления).

Команды протокола Telnet. Клавиатура должна иметь воз­можность ввода всех символов US ASCII, а также генерировать специальные стандартные функции управления терминалом (эти функции могут или присутствовать в реальном терминале, и тогда они должны представляться в стандартной форме команды,   или   отсутствовать   и   тогда   заменяться   командой  NO (No-Operation)):

IP — Interrupt Process (прервать процесс). Данная команда реализует стандартный для многих систем механизм прерываний процесса  выполнения задачи пользователя (<ctrl+C> Unix-системах или  <ctrl+Break>  в  MS-DOS).  Следует заметить, что команда IP может быть использована и другим протоколом прикладного уровня, который может использовать Telnet;

AOAbort Output (прервать процесс выдачи). Многие системы позволяют остановить процесс, выдающий информацию на экран. Здесь следует понять отличие данной команды от IP. При выполнении IP прерывается выполнение текущего процесса пользователя, но не происходит очистка буфера вывода, т. е. процесс может быть остановлен, а буфер вывода будет продол­жать передаваться на экран;

AYT – Are You There (вы еще здесь?). Назначение этой командой – дать возможность пользователю убедиться, что в про­цессе работы по медленным линиям он не потерял связи с уда­ленной машиной;

EC — Erase Character (удалить символ). Многие системы обеспечивают возможность редактирования командной строки путем введения символов «забой» или удаления последнего на­печатанного символа на устройстве отображения;

EL Erase Line (удалить строку). Команда аналогична ЕС, но удаляет строку ввода целиком. Обычно выполнение этой ко­манды приводит к очистке буфера ввода;

Open host [port] — начать telnet-сессию с машиной host по порту port. Адрес машины можно задавать как в форме IP-адреса, так и в форме доменного адреса (рис. 6.11, а, б);

close — завершить telnet-сессию и вернуться в командный режим. Однако в некоторых системах, если telnet был вызван с аргументом, close приведет к завершению работы telnet;

quit — завершить работу telnet.

На рис. 6.11 приведены примеры экранов Telnet-сессии (связь с библиотекой Колумбийского университета — CLIO).

 

Электронная  почта

 

Электронная   почта   является   самым   массовым   средством электронных коммуникаций Internet, через нее можно получить ступ практически ко всем ресурсам Internet, а также к информационным ресурсам других сетей.

При коммуникации в режиме ЭП корреспонденция готовится пользователем посредством программы   подготовки   почты, которая  вызывает текстовой   редактор.   Затем  следует  вызвать программу отправки почты (программа подготовки почты вызывает программу отправки автоматически). Для работы электронной почты в Internet используется протокол прикладного уровня SMTP (Simple Mail Transfer Protocol), который использует транс­портный протокол TCP. Однако совместно с этим протоколом может использоваться и UUCP.

При работе по протоколу SMTP почта реально отправляется только тогда, когда установлено интерактивное соединение с программой-сервером на машине — получателе почты. При этом происходит обмен командами между клиентом и сервером про­токола SMTP в режиме on-line, и почта достигает почтового ящика получателя за считанные минуты.

При использовании UUCP почта передается по принципу «Stop-Go», т. е. почтовое сообщение передается по цепочке поч­товых серверов, пока не достигнет машины-получателя, что по­зволяет доставлять почту по плохим телефонным каналам, по­скольку не требуется поддерживать связь все время доставки от отправителя к получателю.

При смешанной адресации доставка почты происходит по смешанному сценарию. О том, как шла доставка и как маршру­тизировалось сообщение, можно узнать из заголовка сообщения, которое вы получили.

 

 

 

Согласно схеме почтового обмена (рис. 6.12), взаимодейст­вие между участниками этого обмена строится по схеме «кли­ент—сервер».

Протоколы  обслуживания электронной  почты  —   наиболее распространены — SMTP, РОРЗ, ШАР.                                    

Протокол SMTP (Simple Mail Transfer Protocol) был раз работай для обмена почтовыми сообщениями в сети Internet SMTP не зависит от транспортной среды и может использовать­ся для доставки почты в сетях с протоколами, отличными от TCP/IP и Х.25.

 

 

 

При этом отправитель инициирует соединение и посылает запросы на обслуживание, выступая в роли клиента, а получа­тель отвечает на эти запросы (выполняя функции сервера).

Обмен сообщениями и инструкциями в SMTP ведется в ASCII-кодах. Для инициализации канала и его закрытия исполь­зуются команды helo и quit соответственно. Первой командой сеанса должна быть helo.

В протоколе определено несколько видов взаимодействия между отправителем почтового сообщения и его получателем, которые называются дисциплинами.

Наиболее распространенной дисциплиной является отправ­ление почтового сообщения, которое начинается по команде mail, идентифицирующей отправителя:

 

 

Следующей командой определяется адрес получателя:

 

После того как определены отправитель и получатель, можно отправлять сообщение командой data, которая вводится без па­раметров и идентифицирует начало ввода почтового сообщения. Сам протокол SMTP не накладывает каких-либо ограничений на информацию, которая заключена между командой data и симво­лом «.» в первой позиции последней строки.

Следующая дисциплина, определенная в протоколе SMTP, — перенаправление почтового сообщения (forwarding).

Верификация и расширение адресов составляют дисциплину ве­рификации. В ней используются команды vrfy и ехрп. По коман­де vrfy сервер подтверждает наличие или отсутствие указанного

пользователя.

В список дисциплин, разрешенных протоколом SMTP, вхо­дит кроме отправки почты еще и прямая рассылка сообщений. В этом случае сообщение будет отправляться  не в почтовый

пик, а непосредственно на терминал пользователя, если пользователь в данный момент находится за своим терминалом. Пря­мая рассылка осуществляется по команде send, которая имеет та­кой же синтаксис, как и команда mail. Кроме send прямую рас­ссылку осуществляют soml (Send or Mail) и saml (Send and Mail).

Протокол обмена почтовой информацией РОРЗ (Post Office Protocol, версия 3) предназначен для пере­сылки почты из почтовых ящиков пользователей (на сервере) на их рабочие места с помощью программ-клиентов. Если по про­токолу SMTP пользователи отправляют корреспонденцию через Internet, то по протоколу РОРЗ пользователи получают коррес­понденцию из своих почтовых ящиков на почтовом сервере в локальные файлы, однако сообщения можно принимать, но нельзя отправлять. Формально взаимодействие по протоколу РОРЗ можно разделить на две фазы: фазу аутентификации и фазу обмена данными. В фазе аутентификации пользователь должен сообщить свой идентификатор и пароль (команды user и pass).

По команде list система сообщает число сообщений и их размер в байтах. По команде retr можно получить текст сооб­щения, по команде dele — пометить сообщение к удалению. Удаляются сообщения только в момент окончания сеанса, по­этому по команде rset эти пометки можно снять. Команда quit завершает сеанс работы с сервером.

Протокол IMAP (Interactive Mail Access Protocol) пред­ставляет собой более надежную альтернативу протоколу РОРЗ и к тому же обладает более широкими возможностями по управлению процессом обмена с сервером. Главное отличие от POP состоит в возможности поиска нужного сообщения и осуществление разбора заголовков сообщения. Для поиска информации используется ко­манда find с различными аргументами.

Интерфейсные программы (почтовые клиенты).

Режим   командной   строки   —   интерфейс   mail. Простейшая и самая распространенная программа подготовки и отправки почты — это команда Unix-систем mail или ее аналог mailх, имеющие формат mail пользователь, например,

 

В ответ программа выдаст предложение ввести сообщение;.

После ввода пользователем темы (subject) программа перей­дет на следующую строку и будет ждать текста сообщения. Пусть сообщение содержит одну фразу:

Для завершения ввода сообщения следует нажать <ctrl+D> (конец ввода), после чего сообщение будет отправлено. Чтобы прочитать сообщения, необходимо выполнить команду mail без аргументов.

При этом на экран будет выведена информация, описываю­щая версию программы, место почтового ящика пользователя и количество сообщений в нем, список новых сообщений и пр. Для просмотра сообщения следует нажать <Enter> и на экране появится текст:

Полноэкранные интерфейсы. Интерфейс bml. Про­грамма bml является стандартной для абонентов сети Relcom, входит в комплект версии для пользователей MS-DOS и имеется на многих Unix-системах Internet.

Основной экран в bml делится на три части:

•  верхняя часть экрана занята падающими меню, которые позволяют   редактировать,   просматривать   и   отправлять почту;

•  в средней части  экрана расположено рабочее поле про­граммы, в котором отображается список полученных сооб­щений и осуществляется редактирование посылаемых сообщений;

•  в   нижней   части   экрана   расположено   вспомогательное меню функциональных клавиш.

При запуске программы в рабочем поле отображаются полу­ченные сообщения, первым из которых выделяется текущее со­общение. При этом рабочее поле разбито на четыре столбца: в первом указывается адрес отправителя, во втором — дата и время получения, в третьем — число строк и символов в сообще­нии четвертый столбец — тема сообщения. Для просмотра сооб­щения надо с помощью клавиш-стрелок сделать интересующее пользователя сообщение текущим и нажать <Enter>. В рабочем поле экрана появится текст сообщения (рис. 6.13).

 

 

Программа-клиент MS Outlook Express. Начиная с Windows 95 в состав операционных систем включена программ – клиент Outlook Express, которая предназначена для рабо­ты с электронной почтой и новостями (рис. 6.14). Для чтения электронной почты из программы Outlook Express необходимо, чтобы используемая система обмена сообщениями поддержива­ла протоколы SMTP и РОРЗ или IMAP. Программу Outlook Express можно использовать для чтения групп новостей, или групп обсуждений, таких, как Usenet. Работа с группами ново­стей осуществляется через серверы новостей NNTP.

Outlook Express включает в себя программу адресной книги Windows. Данная программа предоставляет широкие возможности управления контактными данными, включая создание групп контактов и папок для сортировки сообщений и размещения адресов электронной почты. Адресная книга Windows обеспечивает доступ к каталогам Internet, использующим   протокол   LDAP (протокол облегченного доступа к каталогам). Каталоги Internet облегчают поиск обычных адресов и адресов электронной поч­ты. В программе адресной книги уже настроен доступ к несколь­ким популярным каталогам.

 

 

Можно набрать любой телефонный номер, указанный в ад­ресной книге, используя программу номеронабирателя, уста­новленную в вашем компьютере. Программа Outlook Express может сохранять незаконченные сообщения в папке Чернови­ки, а отправленные сообщения — в папке Отправленные на сервере IМАР. Можно редактировать гипертекстовые (HTML) сообщения и использовать в них теги расширенной версии языка HTML. Имеется более десятка параметров, которые мож­но использовать при настройке представлений. (Представле­ние — это правило, по которому сообщение отображается либо скрывается).

Программа может определять, произошел ли обрыв телефон­ного соединения или отключение компьютера от локальной сети. Программа Outlook Express может восстановить разорван­ное соединение автоматически либо после подтверждения, вво­димого пользователем.

Чтобы программа Outlook Express подключалась к сети и производила доставку почты через определенные интервалы, необходимо включить функцию Доставлять почту каждые ... мин поставить продолжением строки Если компьютер не подключен к сети вариант Всегда подключаться либо Подклю­чатьсяесли  не   выбран   автономный режим.

Если для какой-либо учетной записи почты или новостей требуется подключение через определенного поставщика услуг Internet, включить флажок Подключаться, используя и указать нужную учетную запись. Данный параметр задается во вкладке Подключение в свойствах каждой учетной записи. В основном этот параметр нужен пользователям, имеющим несколько выхо­дов в Internet, например, через локальную сеть и через модем, или через два модемных соединения.

Для проверки новой почты при запуске программы вклю­чить функцию Доставлять почту каждые ... мин во вкладке Общие, пункт Параметры, меню Сервис. Необходимо проверить, чтобы для каждой учетной записи, используемой для доставки почты, был включен флажок Использовать данную учетную запись при доставке всей почты во вкладке Общие в свойст­вах каждой записи. Включение флажка Спрашивать о подклю­чении при запуске только запускает соединение, но не осуще­ствляет проверку почты.

Сообщения, в заголовке которых не указана кодировка, мо­гут быть отображены в правильном виде после выбора нужной кодировки в меню Вид. Однако пересылка таких сообщений или ответ на них с включенной функцией автоматического выбора кодировки приведет к неверному указанию кодировки. Во избе­жание данной проблемы при отправке таких сообщений следует выбирать кодировку вручную.

Чтобы отправить сообщение кому-либо занесенному в адрес­ную книгу Windows, следует дважды нажать кнопку мыши на со­ответствующей записи в разделе контактов.

Программа-клиент  ВАТ (ThеBat!). Позволяет, кроме всего прочего, отправлять и принимать почтовые сообщения с защитой данных, в формате S/MIME (рис. 6.15). Для использования возможностей S/MIME прежде всего необходимо получить «сертификат», состоящий из двух частей: секретного ключа и публичного ключа. Вы должны защищать свой сертификат от несанкционированного доступа. Имеющийся сертификат необходимо внести в базу данных The  Bat!, например, следующим образом:

•  создать в адресной книге программы «нового адресата» со своим личным именем и адресом и на вкладке Сертифика­ты нажать кнопку Импортировать;

•  найти файл, содержащий сертификат, и нажать кнопку От­крыть. Сертификат будет занесен в базу The Bat!

На практике система S/MIME работает следующим образом. Для того чтобы подписать письмо (но не зашифровать), вам ну­жен ваш собственный сертификат. В меню редактора выберите: PGP-> Использовать S/MIME, РСР->Подписать перед от­правкой. В момент отправки письма The Bat!, возможно (в слу­чае, если у вас есть несколько S/MIME сертификатов), запросит вас о том, какой из сертификатов использовать для создания подписи, а затем попросит указать пароль, которым защищен ваш сертификат в базе данных программы. После чего програм­ма автоматически создает электронную подпись для вашего письма и пошлет его по назначению. Обратите внимание, что защищен  от  несанкционированной  модификации  оказывается  не  только текст письма, но и те файлы, что, возможно, вы к нему прикрепили, а также некоторые служебные поля (например, From:,    но  не  Subject:),  т.е.  если  в  процессе доставки что-либо из вышеперечисленного окажется изменено, система S/MIME получателя письма отреагирует на это, отказавшись «заверить» электронную подпись отправителя.

 

 

 

 

 

 

 

6. 4. Распределенные файловые системы Internet

 

Система архивов FTP

 

FTP-архивы — это распределенный депозитарий разнообраз­ных данных, накопленных в сети за последние 20—30 лет. Лю­бой пользователь может реализовать анонимный доступ к этому хранилищу и скопировать интересующие его материалы. Только объем программного обеспечения в архивах FTP составляет те­рабайты информации; кроме того, в FTP-архивах можно найти стандарты Internet (RFC), пресс-релизы, книги по различным отраслям знаний, главным образом по компьютерной проблема­тике, и многое другое.

Информация в FTP-архивах разделена на три категории (рис. 6.16):

защищенная информация, режим доступа к которой опреде­ляется ее владельцами и разрешается по специальному со­глашению с потребителем;

 

•  информационные ресурсы ограниченного использования, к ко­торым относятся, например, ресурсы ограниченного вре­мени использования или ограниченного времени действия т. е. потребитель может использовать текущую версию на свой страх и риск, но никто не будет оказывать ему под­держку;

•  свободно распространяемые  информационные ресурсы,   или freeware,   если   речь   идет  о   программном   обеспечении. К этим ресурсам относится все, что можно свободно полу­чить по сети без специальной регистрации. Это могут быть документация, программы или что-либо еще.

Протокол FTP (File Transfer Protocol) — один из старейших протоколов в Internet; обмен данными в FTP проходит по TCP-каналу и построен по технологии «клиент—сервер».

В FTP соединение инициируется интерпретатором протоко­ла пользователя. Управление обменом осуществляется по каналу управления в стандарте протокола Telnet. Команды FTP генери­руются интерпретатором протокола пользователя и передаются на сервер. Ответы сервера отправляются пользователю также по каналу управления.

Команды FTP определяют параметры канала передачи дан­ных и самого процесса передачи. Они также определяют и ха­рактер работы с удаленной и локальной файловыми системами.

В протоколе большое внимание уделяется различным спосо­бам обмена данными между машинами разных архитектур, кото­рые могут иметь различную длину слова и часто различный по­рядок битов в слове. Кроме того, различные файловые системы работают с разной организацией данных, которая выражается в понятии метода доступа.

Практически для любой платформы и операционной среды существуют как серверы, так и клиенты. Ниже описываются стандартные сервер и клиент Unix-подобных систем [31, 34].

Программное обеспечение доступа к FTP-архивам. Для работы с FTP-архивами необходимо следующее программное обеспече­ние: сервер, клиент и поисковая программа. Сервер обеспечива­ет доступ к ресурсам архива из любой точки сети, клиент — доступ пользователя к любому архиву в сети, а поисковая систе­ма — навигацию во всем множестве архивов сети.

Сервер протокола — программа ftpd. Команда ftpd предна­значена для обслуживания запросов на обмен информацией по протоколу FTP. Сервер обычно стартует в момент загрузки компьютера. Каждый сервер имеет свое описание команд, которое можно получить по команде help.

Возможен вход в архив по идентификатору пользователя anonimous или ftp. В этом случае сервер принимает меры по ограничению доступа к ресурсам компьютера для данного поль­зователя. Обычно для таких пользователей создается специаль­ная директория ftp, в которой размещают каталоги bin, etc и pub. В каталоге bin размещаются команды, разрешенные для использования, а в каталоге pub — собственно файлы. Каталог etc закрыт для просмотра пользователем и там размещены фай­лы идентификации пользователей.

Рассмотрим некоторые команды протокола.

Обычно при передаче групп файлов для каждого файла за­прашивается подтверждение. Для того чтобы избежать этого пе­ред приемом/передачей, следует выдать команду prompt. Последняя переключает режим запроса подтверждения и при по­вторном использовании этой команды состояние запроса подтверждения восстанавливается;

bin — после выдачи этой команды по умолчанию данные будут передаваться в режиме передачи двоичных данных, что весьма существенно, так как в режиме ASCII нельзя передать программы и архивированные данные. Часто бывает полезно включить режим bin для символьных данных с произвольной длиной строки, например файлов postscript   (*.ps);

quit — команда выхода из ftp.

Программа обмена файлами ftp — это интерфейс пользователя при обмене файлами по одноименному протоколу. Программа устанавливает канал управления с удаленным серве­ром и ожидает команд пользователя.

Если команда ftp работает с пользователем и ожидает его команд, то на экране отображается приглашение ftp>.

Вот некоторые команды данного режима:

open — по этой команде открывается сеанс работы с удален­ным сервером:

 

ftp>оpen  polyn.net.kiae.su;

 

После выдачи команды последуют запросы идентификаций пользователя.

 

user регистрация пользователя:

 

ftp> user anonymous;

 

В данном случае пользователь не имеет особых прав доступ­на удаленном сервере и поэтому регистрируется как аноним. В ответ на запрос идентификации пользователю следует внести свой почтовый адрес;

cd и Ls (dir) — назначение этих команд достаточно оче­видно — навигация по дереву файловой системы и просмотр со­держания каталогов. Так как в процессе приема-передачи участ­вуют две машины, то кроме навигации в удаленной файловой системе нужна еще навигация в локальной файловой системе. Для этой цели служит команда lcd (локальная cd).

Кроме того, пользователь может выдать и любую команду локальной оболочки, если предварит ее символом «!»:

По этой команде будет выдано имя текущей директории на локальной машине.

Команды get, put, mget, mput и bin (прием/передача данных). По командам get и put можно принять или передать один файл:

Команды  mgetmput предназначены для  приема/передачи группы файлов:

Windows Commander. Функции FTP-клиента встрое­ны, например, в программную оболочку Windows Commander. На рис. 6.17 отображен экран настройки на связь с FTP-cepвером. Конфигурации каждой настройки запоминаются в меню Connection и включают в себя:

•  адрес FTP-сервера (здесь — ftp.inion.ru);

•  имя пользователя и пароль (здесь — anonimous);

•  имя удаленного каталога в файловой системе FTP (здесь – w_inion/irb).

После установления связи на одной из панелей отображается удаленный каталог (рис. 6.18 — слева удаленный каталог, спра­ва — локальный).

Передача файлов в обе стороны (Upload и Download) осуще­ствляется обычным выделением файлов (директорий) и копирования их по команде <F5> (рис. 6.19).

 

 

Usenet

Распределенная файловая система Usenetсистема теле­конференций Internet. (Данный термин не очень удачен — в Internet есть и другие средства, которые также реализуют прин­цип телеконференций.) Пользователи Usenet предпочитают придерживаться термина newsgroup или group, который можно перевести как группа новостей (группа) — это постоянно изме­няющийся набор сообщений, входящих в область интересов участников данной группы. Статья или сообщение отправляет­ся в телеконференцию пользователем и становится доступной для всех подписчиков группы. Данным способом распростра­няется большинство сообщений Internet, например списки час­то задаваемых вопросов (FAQ) или реклама программных про­дуктов.

Подписка подразумевает процедуру оповещения пользователя о появлении новых статей по интересующей его теме. Сообщение оформляется в соответствии со стандартом почтового сооб­щения Internet.

С точки зрения структуры информационного ресурса Usenet организована как иерархический каталог, узлами которого явля­ются группы новостей. Сообщения в группе обычно не задержи­ваются более нескольких дней (стандартное значение по умолча­нию — 5). Проиллюстрировать такую организацию можно на примере группы соmр (компьютеры и компьютерные техноло­гии) на рис. 6.20.

 

 

Пользователь осуществляет подписку на одном из серверов Usenet, который террирориально ближе для него (обычно это машина, на которой расположены все информационные ресурсы организации или учебного заведения). По мере поступления но­вых сообщений от пользователей серверы обмениваются между собой этой информацией.

Первые версии системы появились в 1979 г. в Университете штата Северная Каролина и функционировали на основе меж­машинного Unix-протокола UUCP. В 1986 г. система была впер­вые реализована на основе нового специального протокола об­мена новостями Network News Transfer Protocol (NNTPRFC-977).

Протокол обмена новостями и принципы построения системы. Протокол NNTP пришел на смену UUCP, и его целью было Упорядочить обмен информацией между серверами Usenet.

Протокол NNTP определяет запросно-ответный механизм обмена сообщениями между серверами и сервером и программами-клиентами. Для этой цели в протоколе определен набор команд и ответов на них. Весь диалог осуществляется в текста ASCII, причем каждая команда состоит из идентификатора и параметров.

По команде group выбирается группа новостей. При этом указатель статьи в группе устанавливается на первую запись группе. По команде help можно получить список разрешенных для использования команд.

Команды last и next перемещают указатель текущей стро­ки в группе, команда list выдает список групп с указанием ко­личества новых статей в них и начальным и конечным номерами статей. По командам newgroups и newnews можно получить списки новых групп и новых статей соответственно, а по коман­де post отправить свою статью на сервер.

По командам article, body, head, stat запрашиваются статьи или их части. Существует два способа запросить статью: либо по ее идентификатору (указывается в заголовке), либо по номеру статьи в группе. Команда article возвращает заголовок и через пустую строку текст статьи, body — только тело статьи, head — только заголовок, а по команде stat устанавливается текущая позиция в группе по идентификатору статьи. При этом никакой информации не возвращается.

Команда slave сообщает о наличии в качестве клиента подчи­ненного сервера, команда quit позволяет запершить сеанс.

 

Gopher

 

Файловая система Gopher была разработана для реализации распределенной базы документов, которые хранятся на машинах сети и предоставляются пользователю в виде единой иерархиче­ской файловой системы. Модель файловой системы наилучшим образом подходит для отображения структуры хранения доку­ментов по следующим очевидным соображениям:

•  иерархическое представление данных привычно большин­ству пользователей, так как иерархии широко используют­ся    во   многих   компьютерных    представлениях   (UNIX, MS-DOS, системах BBS);

•  Gopher рассчитан на применение недорогих решений как в аппаратной части, так и при программировании, поскольку

первоначально он был ориентирован на разработку инфор­мационной системы университета (шт. Миннесота). Систе­ма соответствовала реальной структуре университета с его делением на факультеты и кафедры, что также хорошо описывается иерархической моделью данных;

• модель файловой системы может быть легко расширена пу­тем добавления к традиционным файлам и директориям других объектов, которые можно назвать виртуальными файлами. Такие виртуальные объекты могут быть поиско­выми запросами или шлюзами в другие информационные ресурсы Internet. Вначале система ориентировалась на два типа виртуальных файлов, добавленных к основным: ин­формационный поиск по ключевым словам и записные/те­лефонные книжки.

Ресурсы Gopher. Gopher представляет весь Internet (серверы Gopher) в виде единой иерархической системы. Gopher-серверы объединены в единое информационное пространство в Internet. Многие архивы дублируют информацию из других архивов (так называемые «зеркала» — mirrors).

В табл. 6.8 приведены основные типы ресурсов, доступных в системах Gopher, и их коды (для сетевых протоколов).

Каждый файл на сервере должен быть описан следующим образом (табл. 6.9).

Пример описания:

 

 

 

На экране пользователя отобразится следующая инфор­мация:

Протокол Gopher. Протокол Gopher предназначен для рабо­ты по модели «клиент—сервер», при этом программа-клиент ус­тановлена на рабочем месте пользователя. Эта программа посы­лает запрос-селектор в ТСР – порт 70 (строку текста, которая мо­жет быть и пустой), а затем сервер отвечает блоком текста, в конце которого стоит точка. Никакой информации о состоянии соединения сервер клиенту не сообщает и, в свою очередь, не запрашивает. После ответа сервера соединение разрывается, а при новом запросе оно должно быть установлено заново. Про­стота этого алгоритма позволяет реализовать его даже на маломощных персональных компьютерах.

Возвращаемый сервером текст представляет собой справку о содержании текущей директории (каталога), каждый элемент ко­торой включает:

•  тип {объекта в директории);

•  имя (используется для отображения и в запросах);

• неотображаемую строку выбора, которая обычно описывает путь, используемый удаленным хостом для доступа к объекту (селектор);

• имя хоста (машины, к которой надо обращаться за инфор­мацией);

• номер порта (на котором сервер данного объекта ожидает запрос).

 

Пользователь реально видит только имя объекта. Программа-клиент может воспользоваться триадой селектор, хост, порт для поиска каждого объекта.

Для    использования    поискового   объекта   из   директории Gopher клиент посылает запрос специальному поисковому серверу Gopher. В этом случае клиент посылает серверу строку-селектор и ключевые слова, а получает от сервера список адресов документов, удовлетворяющих запросу.

Программы, обслуживающие взаимодействие по протоколу Gopher, существуют практически для всех типов компьютерных платформ.

Модель взаимодействия Gopher. Модель взаимодействия Gopher основывается на архитектуре «клиент—сервер» (рис. 6.21). Сервер ожидает запросы пользователя по назначенному порту TCP (по умолчанию это порт 70), а клиент посылает в этот порт запросы. Диалог «клиент—сервер» может выглядеть следующим образом:

Здесь первый символ каждой строки определяет тип ресурса — документ, каталог или поисковый критерий (соответствен­но цифры 0, 1,7 — см. табл. 6.4). Все остальные символы поел кода типа до первого символа табуляции задают отображаемую в дереве виртуальной файловой системы информацию.

Интерфей­сы-клиенты отображают эту информацию в виде идентификато­ра входа в элемент файловой системы. Тип информации обычно может отображаться в виде изображения (иконки) соответствую­щего типа в графических интерфейсах или символа, например, V» для каталогов, в алфавитно-цифровых интерфейсах. Таким разом пользователю дается подсказка, с каким типом инфор­мации или программ он будет иметь дело, если выберет тот или иной вход в виртуальную файловую систему Gopher. Следующее идентификатором поле — строка-селектор, которую клиент отсылает на сервер, если пользователь выбрал данный вход.

За селектором следует доменный адрес Gopher-сервера за тем номер порта, по которому осуществляется взаимодействие. Обычно это порт 70, но можно указать и другой, на котором ест обслуживание Gopher-клиента.

На экране пользователя в данном случае будет отображаться только следующая информация:

Если пользователь выбрал вход «Microcomputer Prices», то будет инициализировано следующее взаимодействие с Gopher-сервером.

 

Gopher-клиент WSGopher32. Доступ к системе Gopher может осуществляться путем использования: Gopher-клиента; HTTP-шлюза; навигации по системе с помощью e-mail.

Существует большое количество клиентских программ под различные платформы. Рассмотрим использование Gopher- клиента WSGopher32 (рис. 6.22).

 

 

Специализированные Gopher-клиенты  позволяют наиб адекватно отображать информацию протокола. Для подключения   к   gopher-серверу,   достаточно   указать   его   адрес   (Server name) — см. рис. 6.22, б.                                                        

Навигация по серверу осуществляется в привычном режим просмотра структуры папок и их содержимого. Тип файла выделяет соответствующим значком.

На рис. 6.22, в в интерфейсе программы WSGopher32 отображен корневой узел хоста gopher://horae.jumpjet.info.

Кроме того, возможно использование обычного веб-браузепа для просмотра gopher-ресурсов. Поддержка протокола существу­ет изначально в браузерах FireFox и других браузерах на основе Mozilla. Обозреватель Opera поддерживает работу только через шлюз, а в Internet Explorer поддержка существует, однако обыч­но отключена по соображениям безопасности протокола. Вклю­чить ее можно, изменив значение в реестре:

 

Поисковая программа VERONICA. VERONICA (Very Easy Rodent-Oriented Net-wide Index to Computerized Archives) являет­ся инструментом поиска, который позволяет быстро просматри­вать Gopher-пространство для получения отдельных файлов и каталогов. Она собирает данные точно таким же образом, как и другие АИПС, — посещает Gopher-серверы по всему миру, про­сматривает меню и запоминает их.

Программа запускается из Gopher-клиента (рис. 6.23, а), ре­зультатом поиска является виртуальное меню, пунктами которо­го будут элементы с Gopher-серверов всего мира, которые содер­жат поисковые слова. Это временное меню работает таким же образом, как и любое другое Gopher-меню (рис. 6.23, б).

Поданным, представленным на сайте gopher.floodgap.com, указано,   что   по   состоянию   на   17   мая   2006   г.   последнее обновление   поисковой   базы   было   произведено    14   март 2006 г. и содержит 1 246 517 уникальных и проверенных селе торов,   содержащихся   на    148   серверах.    По   оценкам   сопровождающих   систему,   поиск   охватывает   до   40 %   всего gopher-пространства.

 

 

 

6.5. Распределенные информационные системы Internet

 

Файловые системы Internet, рассмотренные выше, во многом аналогичны файловым системам операционных систем ЭВМ (UNIX, DOS и пр. [31]), которые они, собственно и имитируют. Навигация в таких структурах весьма ограничена — «вверх» «вниз» по ветвям каталогов (директорий). Поиск информации почти исключен, поскольку связь между содержанием данных наименованиями файлов или каталогов весьма ограничена. Альтернативным подходом является организация информационных систем, позволяющих проводить содержательный поиск данных в распределенной БД. Применительно к INTERNET такими тех­нологиями являются WWW и WAIS.

 

Информационные технологии WWW

 

Основными компонентами данных технологий, состоящих в применении гипертекстовой модели к информационным ресур­сам, распределенным в Internet, являются (рис. 6.24):

•  HTML — язык гипертекстовой разметки документов;

•  URL — универсальный способ адресации ресурсов в сети;

•  HTTP (Hypertext Transfer Protocol) — протокол обмена ги­пертекстовой информацией;

•  дополнительные средства (CGI, Java, JavaScript).

 

 

Ранее уже были рассмотрены основные возможности Н как приложения SGML к описанию типов документов. Здесь вкратце остановимся на навигационных компонентах HTML.

Гипертекстовая база данных в концепции WWW — это набор текстовых файлов, написанных на языке HTML, который определяет форму представления информации (разметка) и структуру связей этих файлов (гипертекстовые ссылки) (рис. 6.25).

Такой подход предполагает наличие еще одной компоненты технологии — интерпретатора языка. В World Wide Web функции интерпретатора разделены между сервером гипертекстовой базы Данных и интерфейсом пользователя.

Сервер, кроме обеспечения доступа к документам и реализации гипертекстовых ссылок, осуществляет также препроцессорную обработку документов, в то время как интерфейс пользователя проводит интерпретацию конструкций языка, связанных с представлением информации.

Язык разметки HTML.   Описание интерфейсов и навигация. Язык HTML включает две основные компоненты:

• средства отображения документа (рассмотрены выше);

• средства навигации и построения интерфейсов с пользователем.

Гипертекстовые   ссылки.   Все   рассмотренные  ранее средства управления отображением текста являются дополнительными к основному элементу документа — гипертекстов ссылкам. Вот некоторые элементы HTML, реализующие данный механизм.

link — элемент заголовка — используется для описания общих для всего документа гипертекстовых ссылок. Элемент имеет три атрибута: rel, rev и href, rel задает тип ссылки, rev об­ратную ссылку, a href определяет ссылку в форме URL. На данный элемент возложена нагрузка по программированию средств управления интерфейсом пользователя.

При выборе соответствующей позиции в меню интерфейса пользователя или соответствующей этой позиции пиктограммы программа интерфейса должна генерировать запрос к серверу на получение документа, указанного в атрибуте href. Например;

Данное предложение в заголовке HTML-документа означает, что при выборе режима Help на экране отобразится документ, который хранится по адресу http://polyn.net.kiae.su/ dss/syshelp.html. Таким образом появляется возможность строить системы контекстно-зависимых справок в интерфейсах, построенных по технологии WWW.

Элемент    <А. . . >......</А>,   который   называют  «якорь» (anchor), применяется для записи гипертекстовой ссылки из тела документа; имеет несколько атрибутов, главным из кото­рых является HREF (HyperText Reference). Простую ссылку можно записать в виде:

 

Здесь значением  атрибута  href является  адрес документа index.html на машине polyn.nct.kiae.su, доступ к которой осуществляется   по   протоколу   HTTP,   записанный   в формат URL.                                                                                  

Содержание элемента А, заключенное между метками начала и конца элемента, выделяется в тексте цветом, определенным для контекстных гипертекстовых ссылок. На рис. 6.25 привел пример использования в документе меток <А. . . >...<../А>,   и его отображение интерфейсом Netscape.

Яругой формой использования элемента а является определение точек внутри текста, на которые можно сослаться:

 

Представление multimedia-информации. Систе­ма World Wide Web была ориентирована на графические средст­ва представления информации. Первым шагом на этом пути была реализация возможности вставлять в текст графические объекты, затем появилась возможность запуска внешней про­граммы для просмотра файла в форматах, отличных от ASCII (например, GIF). Таким образом, на любой информационный объект можно сослаться из документа HTML, вызвав его через внешнюю программу просмотра. Графические объекты могут использоваться в качестве идентификаторов гипертекстовых ссылок и для перехода по гипертекстовой сети.

Для встраивания в документ графических образов использу­ются элементы IMG и FIG.

IMG — элемент встраивания в текст графического образа, на­пример:

 

В данном примере атрибут SRC определяет адрес графиче­ского объекта, который надо встроить в документ, а атрибут alt предназначен для отображения в интерфейсах, которые не поддерживают встраиваемую графику (типа Lynx). В послед­нем случае вместо картинки будет отображено содержание ат­рибута ALT.

IMG можно использовать внутри гипертекстовой ссылки:

 

В этом случае весь рисунок целиком используется как идентификатор гипертекстовой ссылки. Кроме того, в данном примере используется атрибут элемента IMGalign, который может принимать значения тор,middle, bottom, left, right и определяет, где относительно других символов текста в строке будет располагаться рисунок.

Элемент FIG (развитие IMG) введен в стандарт языка для улучшения отображения графической информации и использования ее для разработки гипертекстовых баз данных. При использовании img текст разбивается на две части: до рисунка и после при этом реализуется обтекание картинки текстом (рис. 6.26).

Элементы реализации интерфейсов в HTML

ISINDEX — элемент заголовка документа — определяет ис­пользование HTML – документа для ввода запроса на поиск по ключевым словам:

В приведенном примере атрибут href определяет адрес про граммы обработки запроса, а атрибут prompt – содержание приглашения.

FORM — средства встраивания элементов интерфейса в тело документа (механизм форм заполнения — fill-out forms) – впервые были подробно описаны в инструкциях по использованию сервера NCSA. Посредством форм осуществляется передача параметров внешним программам, которые вызываются сервером, что сделало WWW универсальным интерфейсом ко всем ре­сурсам сети.

Вот некоторые вложенные в form элементы HTML:

 

input — наиболее универсальный из всех элементов формы. Способ его отображения определяется атрибутом type, который может принимать значения text, password, checkbox, radio, range, scribble, file, hidden, submit, reset, image.

Атрибут name определяет идентификатор поля. Данный ат­рибут не отображается, но его значение передается обрабаты­вающей программе.

Атрибут value определяет значение поля. Данное значение передастся вслед за именем поля. Если разработчик указал этот атрибут в тексте документа, то это будет значение по умолчанию.

Атрибут disable защищает значение поля формы от изме­нения пользователем. Часто это бывает полезным при много­кратных обращениях к внешним базам данных и при коррекции запросов.

Атрибут error определяет текст сообщения об ошибке при неправильном вводе.

Атрибут CHECKED используется в полях типа checkbox и radiobutton.     Он     определяет состояние данного поля (ВЫБРАНО/НЕ ВЫБРАНО)

Атрибут size определяет размер видимой части поля ввода. Для непропорциональных шрифтов он равен числу символов, для пропорциональных шрифтов — числу типографских интервалов.

Атрибут MAXLENGTH определяет максимальное число символов, которое можно ввести в текстовое поле.

Атрибуты MIN и MAX определяют диапазон разрешенных числовых значений для поля ввода.

Атрибут SRC используется для задания адреса графического объекта, который можно использовать в поле ввода.

Атрибут md задает контрольную сумму для графики.

Атрибут align определяет выравнивание текста.

Приведем фрагмент HTML-документа с элементами группы FORM и их интерпретацию Web-обозревателем Konqueror (рис. 6.27, l):

 

 

В первой строке приведено простое текстовое поле с введен­ным в него значением по умолчанию. Это значение может быть изменено пользователем. В следующей строке отображено поле типа checkbox. Крестик в поле показывает, что оно выбрано (значение по умолчанию установлено атрибутом checked). Ниже приведено поле radiobutton в виде кружка (так как в нем нет черной точки, это поле не выбрано); в поле password введен пароль, который не отображается, а заменяется звездоч­ками; невидимое поле не отображается, а предназначено для реализации диалога с удаленными программами. Кнопка submit активирует передачу параметров серверу, в то время как Reset восстанавливает значения полей формы по умолчанию. Графическая кнопка аналогична кнопке Submit, только она передав также значения координат графического образа.

textarea предназначен для ввода больших многострочных текстовых данных; это связано с ограничениями на длину си вольной строки. Элемент имеет два атрибута: ROWS - число видимых  строк   и   cols   —   число   видимых  символов   в   строке (рис. 6.27, 2):

 

 

 

 

 

Элементы select и option предназначены для организации меню, которое может быть падающим, множественным и графи­ческим: в падающем меню можно выбрать только один элемент; в множественном — несколько; графическое меню предназначено Для выбора по графическому образу. Приведем пример орга­низации меню (рис. 6.27, 3):

 

 

В данном случае при отображении HTML-документа будет создано падающее меню с тремя элементами. Пользователь может выбрать один из этих элементов в качестве значения поля.

HTTP (Hypertext Transfer Protocol) — протокол прикладного уровня, который разработан для обмена гипертекстовой информацией в сети Internet и используется в Word Wide Web с 1990 г

Реальная информационная система требует гораздо большего количества функций, чем только поиск данных. HTTP позволяет реализовать в рамках обмена информацией широкий набор ме­тодов доступа.

Программа-клиент посылает после установления соединения запрос серверу. Этот запрос может быть в двух формах: в форме полного запроса и в форме простого запроса. Простой запрос со­держит метод доступа и запрос ресурса. Например:

 

 

В этой записи слово get обозначает метод доступа get, a http: //polyn.net. kiae . su/ — это адрес ресурса.

Методы доступа — в практике World Wide Web реально используются три таких метода: post, get, head.

get — метод, позволяющий получить данные, заданные в форме URI в запросе ресурса. Если ссылаются на программу, то возвращается результат выполнения этой программы, но не ее текст. Дополнительные данные, которые надо передать для обра­ботки, кодируются в запрос ресурса.

head — в отличие от GET не возвращает тела ресурса. Ис­пользуется для получения информации о ресурсе и для тестиро­вания гипертекстовых ссылок.

post — метод разработан для передачи большого объема ин­формации на сервер. Им пользуются для аннотирования сущест­вующих ресурсов, посылки почтовых сообщений, работы с фор­мами интерфейсов к внешним базам данных и внешним испол­няемым программам. В отличие от GET и HEAD в POST передается тело ресурса, которое является информацией из поля форм или других источников ввода.

Средства расширения HTML-технологий. Фреймы — тип элементов, обеспечивающих возможность разделить рабочее окно программы просмотра на несколько независимых панелей. В каждый фрейм может быть загружена отдельная страница HTML.

Спецификация  CGI   (Common Gateway Interface) определяет порядок взаимодействия сервера с прикладной программой, в котором сервер выступает инициирующей стороной, и задает механизм реального обмена данными и управляющими командами в этом взаимодействии, что не определено в HTTP.

Главное назначение — обеспечение единообразного потока иных между сервером и прикладной программой, которая за­пускается под управлением сервера. CGI устанавливает прото­кол обмена данными между сервером и программой.

При описании различных программ, которые вызываются сервером HTTP и реализованы в стандарте CGI, используют следующую терминологию.

CGI – скрипт — программа, написанная в соответствии со спецификацией Common Gateway Interface. CGI – скрипты могут быть написаны на любом языке программирования (С, C++, PASCAL, FORTRAN и т. п.) или командном языке (shell, cshell, командный язык MS-DOS, Perl и т. п.).

Шлюз — CGI – скрипт, который используется для обмена данными с другими информационными ресурсами Internet или резидентными приложениями (демонами). Обычная CGI-программа запускается сервером HTTP для выполнения некоторой работы, возвращает результаты серверу и завершает свое выпол­нение. Шлюз выполняется аналогично, однако он инициирует взаимодействие с третьей программой в качестве клиента. Если эта третья программа является сервисом Internet, например, Gopher-сервером, то шлюз становится клиентом Gopher, кото­рый посылает запрос по порту Gopher, а после получения ответа пересылает его серверу HTTP. По аналогии осуществляется взаимодействие с серверами распределенных баз данных (напри­мер, Oracle).

JavaScript — язык управления сценарием отображения Документа — является естественным продолжением HTML. По своей природе это объектно-ориентированный язык программи­рования, который, однако, не поддерживает инкапсуляцию объектов и полиморфизм методов. Объекты, над которыми можно выполнять различные операции в JavaScript — это элементы интерфейса Netscape Navigator и контейнеры HTML. Средствами этого языка могут быть реализованы многие полезные эффекты (мультипликация, контекстная помощь, проверка синтаксиса и многое другое).

JavaScript  не  единственный  язык управления  сценария просмотра  документов;   известна  аналогичная   разработка – VBScript (на основе Visual Basic, фирмы Microsoft).                    

Java — объектно-ориентированный язык программирования, который связан с World Wide Web библиотекой классов описывающих элементы интерфейса пользователя (кнопки, поля  ввода, меню, метки, графические объекты и пр.), порядок взаи­модействия страниц World Wide Web с другими ресурсами сети через транспорт TCP/IP. Язык поддерживает возможность по­строения многопоточных программ.

 

Программное обеспечение для World Wide Web

 

Программное обеспечение World Wide Web можно разделить на группы по направлениям использования. Каждое из этих на­правлений определяется либо схемой взаимодействия компонентов Web-технологии, либо особенностями применения его субъектами обмена информацией в рамках World Wide Web. Принята следую­щая классификации программного обеспечения World Wide Web:

•  программы-клиенты   (в   том   числе   мультипротокольные браузеры);

• программы просмотра документов в форматах, отличных от стандартных форматов Web;

• программы-серверы протокола обмена гипертекстовой ин­формацией (Web-серверы);

• программы подготовки публикаций;     

• поисковые машины;

• программы анализа статистики посещений. Рассмотрим некоторые из этих типов программ более под­робно.

Программы-клиенты — стандартны для World Wide Web. Первыми распространенными некоммерческими программами этого типа являлись Mosaic (графический интерфейс) и Lynx для алфавитно-цифрового режима доступа.

Mosaic  — графический интерфейс доступа в WWW, ин­терпретирует язык гипертекстовой разметки HTML и позволяет обмениваться   данными   по   протоколу   HTTP   1.0   (см.   также рис. 2.7, 2.8).                

Arena позволяет интерпретировать версии языка, которые в дополнение к возможностям, существующим в Mosaic, также реализуют математические формулы, обтекание графики текстом, прозрачные графические образы и ряд других изобрази­тельных средств.

Lynx __ полноэкранный интерфейс доступа к WWW с алфавитно-цифровых устройств типа терминала VT100. Интерфейс поддерживает все возможности языка HTML 2.0 за исключением графики. Используя Lynx, можно не только просматривать базы данных WWW,  но обмениваться данными  с CGI – скриптами, размещенными на удаленных серверах.

Line Mode Browser — самый простой интерфейс WWW. Он используется на любых устройствах отображения ин­формации, в том числе и на терминалах типа TTY (телетайп).

Мультипротокольные программы-браузеры. На роль стандартов в этом классе программного обеспечения пре­тендуют две программы: Netscape Communicator (NC) и Microsoft Internet Explorer (IE). По своим возможностям и внешнему оформлению они довольно похожи. Основная задача этих про­грамм — интерпретация разметки на языке HTML, интерпрета­ция встроенных в HTML программ на одном из командных язы­ков Web: JavaScript или VBScript, интерпретация байткодов Java, разбор спецификации ресурсов сети (обработка URI), взаимо­действие с серверами по протоколам прикладного уровня стека протоколов TCP/IP.

Netscape. Рассмотрим типовой интерфейс такой программы (рис. 6.28). В верхней части этого интерфейса расположено поле title документа. В нем отображается содержание контейнера title. Ниже расположено текстовое меню настроек и управле­ния просмотром. Под ним расположены пиктограммы графиче­ского меню управления просмотром. Затем следует поле закла­док пользователя и поле location, которое определяет URL за­груженного документа. Ниже расположено меню перехода на встроенные в браузер закладки, которые указывают на наиболее полезные с точки зрения разработчиков программы узлы Web. Далее вниз следует рабочая область программы, в которой отображается содержание документа. Под ним расположены пиктограммы работы в защищенном режиме, поле status, в котором текущего документа или URL-соединения, линейка икон других модулей программы браузера.

   Текстовое меню открывает подменю Файл (File). В этом режиме определяется адрес загрузки документа (New, Open  page), сохранение текущей страницы (Save, Save   as...), режимы редактирования и обмена страницами, печати и выхода из окна или системы просмотра вообще.

 

 

За File обычно следует Редактирование (Edit), в котором определяются режимы редактирования и поиска информации на текущей странице, а также режим настроек Preference. Послед­ний чрезвычайно важен для настроек программы.

Для того чтобы просмотреть/изменить настройки NN, необ­ходимо, запустив программу, выбрать команду Edit/Preference в Главном меню. Появится диалоговое окно Preferences (Уста­новки) — рис. 6.29.

Слева расположено меню выбора опций настройки програм­мы, справа — набор параметров, который соответствует выбран­ной опции. Символ «—» указывает на дополнительные опции. Символ «+» сообщает, что дополнительные опции не отображе­ны. Выбирая ту или иную опцию, можно управлять отображением интерфейса браузера на экране монитора и настройками программы при взаимодействии с серверами Web. Наиболее существенные настройки браузера содержатся в двух группах настроек: Appearance (Появление) и Navigator (браузер NC).

 

 

В группе настроек Navigator, показанной на рис. 6.29, в правой части окна имеется три группы параметров. Переключа­тели в первой группе Navigator Starts With (Браузер стар­тует с) предназначены для настройки адреса начальной Web страницы. Так же, как и в случае IE, для начинающих рекомен­дуем первый вариант — Blank Page (чистая страница). Во второй области можно задать адрес домашней страницы. По умолчанию здесь стоит адрес Web-страницы фирмы Netscape nttp://home.netscape.com/. Наконец, в третьей области можно за­дать срок хранения адресов посещаемых страниц или очистить этот список.

В подгруппе Language (Языки) так же, как и в браузере IE, обязательно должны присутствовать, по крайней мере, два язы­ка: английский и русский. Подгруппа Application (Приложения) дает список всех приложений, которые могут взаимодейст­вовать с браузером NC.

Выбрать  правильную кодировку текста можно, выполнив ко­манду VIEW/Encording (Вид/Кодировка) в Главном меню браузера. В открывшемся  списке   необходимо   выбрать  кодировку Cyrillic (Windows-125I) и нажать клавишу <Enter>. Для того чтобы  эта кодировка оставалась и  в дальнейшем, необходимо сразу же еще раз выполнить указанные команды и выбрать последний пункт Set  Default Encoding (установка кодировки по умолчанию) и опять нажать клавишу <Enter>.

Вслед за Edit указано меню Вид (view). Данное меню отвечает за отображение информации о странице и позволяет обра­батывать перекодировку текста в тот код, который заказывается через режим Encoding. Практически именно этот режим позво­ляет читать русский текст, в какой кодировке он не был бы под­готовлен.

Меню Перейти (Go) позволяет быстро извлекать из запасни­ков адреса пройденных гипертекстовых ссылок и снова возвра­щаться к просмотру страниц, на которые они указывают.

Меню Компоненты (Communicator) позволяет запустить на выполнение другие модули системы, например, систему про­смотра электронной почты или программу просмотра новостей.

Мультипротокольный браузер Opera. При запуске Opera ото­бражается диалог запуска, который содержит два основных пара­метра использования Opera (рис. 6.30, а):

•  открывать все окна Opera внутри программы (многодоку­ментный интерфейс — MDI);

•  открывать отдельное окно приложения для каждого окна Opera (однодокументный интерфейс — SDI).

Рассмотрим элементы пользовательского интерфейса Opera. Главная   панель   содержит набор кнопок, которые по­зволяют осуществлять собственно навигацию в Internet:

•  создавать новые окна для навигации;

•  открывать и сохранять файлы на компьютере;

•  распечатывать Web-страницы;

•  осуществлять поиск текста на Web-странице;

•  отображать список;

•  перемещаться назад и вперед по посещенным страницам в одном окне;

•  получать самую  последнюю  версию  страницы   (обновле­ние);

•  осуществлять переход к домашней странице;

•  получать доступ к закладкам в активной папке закладок;

•  располагать все окна в Opera каскадом, по вертикали и го­ризонтали.

Пользователь может настроить главную панель, щелкнув по ней правой кнопкой мыши или из раздела вид главного меню.

 

 

Личная панель постоянно отображает на экране наиболее посещаемые закладки, поэтому пользователь может получить прямой доступ к ним, минуя список.

На личной панели можно также поместить любимые средства поиска в Internet, тем самым пользователю не нужно будет  выбирать их из списка.

Панель адреса. На панели адреса расположены следую­щие элементы (слева направо):

•  значок замка — показывает уровень безопасности узла;

•  кнопка рисунка — переключает отображение рисунков на странице;

•  кнопка режима отображения— переключает режим автора и режим пользователя;

•  кнопка просмотра— включает предварительный просмотр печатной версии страницы;

•  поле адреса — поле ввода Web-адресов страниц;

•  раскрывающийся список адресов — обеспечивает доступ к ранее введенным адресам;

•  кнопка «пуск» — осуществляет переход к введенному ад­ресу;

•  поле поиска — осуществляет прямой поиск в Internet;

•  раскрывающийся   список  поиска   —  обеспечивает  выбор средства поиска;

•  кнопка поиска — выполняет поиск;

•  поле  масштаба  —  изменяет  масштаб  отображения Web-страниц;

•  раскрывающийся список масштаба— выбирает уже сущест­вующее значение масштаба.

Панель окон (для MDI). Если запустить Opera с исполь­зованием многодокументного интерфейса (MDI), все окна будут отображаться внутри программы (рис. 6.30, а). Панель окон дает возможность управления всеми открытыми окнами и доступа к ним, и заменяет панель страниц, которая отображается при ис­пользовании однодокументного интерфейса (SDI).

Панель   страниц   (для   SDI).  Если запустить Opera использованием однодокументного интерфейса (SDI), все окна программы будут отображаться как окна отдельных приложений. Но дополнительно в распоряжении пользователя будет возможность открывать несколько страниц внутри каждого окна Орera. Панель страниц обеспечивает доступ к этим страницам с помощью изящных вкладок, и заменяет панель окон, которая используется для многодокументного интерфейса (MDI). Панель загрузки. При загрузке Web-страницы выводится панель загрузки. Она отображает следующую информацию (слева направо):

•  объем загруженной страницы, передаваемой на компьютер (в процентах);

•  количество загруженных рисунков и их общее количество;

•  общий объем загруженных данных;

•  среднюю  скорость   передачи  данных   во   время   загрузки страницы;

•  время, прошедшее с начала загрузки;

•  текущее состояние загрузки страницы.

Браузер Mozilla Firefox. Mozilla Firefox является Internet-брау­зером, предназначенным для просмотра Web-страниц и поиска в Internet, который реализован в различных ОС — Windows, Linux, Mac OS.

Навигация по Web-страницам. Просмотр началь­ной страницы. При запуске Firefox открывает начальную страницу (рис. 6.31, /). По умолчанию это будет домашняя стра­ница Firefox.

Чтобы отобразить на экране больше содержимого, можно использовать полноэкранный режим. В полноэкранном режиме

 

 

 

 

 

панели Firefox сворачиваются в одну маленькую панель. Чтоб включить полноэкранный режим, следует выбрать пункт вид\ Полноэкранный режим или нажать <F11>. Чтобы быстро перейти к начальной странице, следует нажать <Alt+Home>.

Переход на другую страницу. Чтобы перейти на другую Web-страницу, наберите ее Internet-адрес или URL r панели навигации (рис. 6.31, 3). Адрес страницы обычно начинается с префикса http: //, за которым следует одно или несколько слов определяющих адрес (например, http://www.mozilla.org/).

Возвращение к просмотренным страницам. Су­ществует несколько путей, чтобы возвратиться к просмотренным страницам, например, чтобы перейти назад или вперед на одну страницу, следует нажать на кнопки  (Назад) или  (Вперед).

Остановка загрузки и обновление страницы. Если страница загружается слишком медленно или нет необхо­димости открыть эту страницу, надо нажать кнопку Стоп

Просмотр страниц во вкладках. При работе сразу с несколькими Web-страницами в одно и то же время можно от­крывать их во вкладках для более быстрой и удобной работы в Internet.

Поиск в Internet. Можно легко произвести поиск нуж­ной Web-страницы в Internet, набрав несколько слов в панели поиска Firefox.

Поиск выделенных слов на Web-странице. Firefox позволяет искать в Internet слова, которые выделены мы­шью на Web-странице. Firefox откроет новое окно и использует поисковую машину по умолчанию для поиска по выделенным словам.

Поиск на странице. Чтобы найти текст на странице, которую вы просматриваете в данный момент в Firefox, следует выбрать пункт меню правка\Найти на этой странице…, по­сле этого в нижней части окна Firefox появится новая панель, в которой следует набрать искомый текст (рис. 6.31, 6).

Копирование части страницы. Чтобы скопировать текст со страницы, следует выделить текст, выбрать пункт меню Правка\Копировать, после этого можно вставить текст в другие  программы.

Сохранение изображения со страницы. Необхо­димо разместить указатель мыши над изображением (рис. 6.32, /), нажать <Ctrl> и щелкнуть клавишей мыши по изображению для отображения контекстного меню. Выбрав пункт Сохранить изображение как. . ., выбрать расположение файла, в котором будет сохранено изображение, набрать имя файла, в который будет со­хранено изображение (рис. 6.32, 2), и нажать кнопку Сохранить.

 

 

 

Печать страницы. Чтобы распечатать текущую, страни­цу следует выбрать пункт меню Файл\Печать .... Как будут вы­глядеть распечатанные страницы, можно увидеть, используя предварительный просмотр (выбрать пункт Файл\Предварительный просмотр — рис. 6.33).

 

 

Управление различными типами файлов. Firefox может работать с многими типами файлов. Тем не менее для  работы с некоторыми типами файлов, такими как фильмы или музыка, в Firefox необходимо установить дополнительные модули или вспомогательные приложения, которые позволяют Firefox взаимодействовать с подобными типами файлов. Если в Firefox не имеется необходимого вспомогательного приложения или модуля, он может только сохранять подобные файлы на жесткий диск

Установка Firefox как браузера по умолчанию. Чтобы установить Firefox как браузер по умолчанию, следует пе­рейти в меню Правка\Настройки, а затем в разделе Основное нажать на кнопку Установить как браузер по умолчанию.

Клавиатурные сокращения и приемы работы с мышью. В табл. 6.10 приведен список наиболее часто используе­мых клавиатурных сокращений, принятых в Mozilla Firefox, и аналогичных сокращений, используемых в Internet Explorer и Opera.

 

 

 

 

В табл. 6.11 приведены основные приемы работы с мышью в Mozilla Firefox и аналогичные приемы, используемые в Internet Explorer и Opera.

 

 

Web-обозревателъ   Konqueror   (Unix/Linux).    В качестве Web-обозревателя    Konqueror   полностью   совместим   со стандартом   HTML  4.01,   имеет  встроенную  поддержку  языка JavaScript (ECMA-262), CSS (каскадные таблицы стилей) и двунаправленного письма (арабский и иврит), позволяет запускать приложения Java, поддерживает SSL (использующийся для безопасного сообщения в Internet), а также дополнительные модули Netscape (в частности, для  проигрывания  медиафайлов Flash,

RealAudio и RealVideo). Среди особых возможностей — автодополнение вводимого текста и адресов Internet, импорт закладок из других обозревателей, открытие нескольких Web-страниц одном окне, а также выполнение функций клиента FTP.

Во внешнем виде Konqueror практически все может быть на строено по вкусу пользователя — от стиля в целом, размера тек­ста и значков до выбора необходимых панелей инструментов пунктов меню и назначения собственных клавиш быстрого вы­зова. Различные конфигурации Konqueror можно сохранить для последующего использования. Приводимые ниже иллюстрации относятся к версии LINUX SuSE.

При работе с Konqueror, как и с любым другим приложени­ем KDE, целесообразно использовать трехкнопочную мышь. Од­нако, если используется двухкнопочная мышь, нажатие средней кнопки можно заменить одновременным нажатием левой и пра­вой (для этого необходимо соответствующим образом настроить систему).

В то время как в системах Windows для открытия документов обычно используется двойной щелчок мышью, следует отметить, что Konqueror, как и другие программы KDE, по умолчанию воспринимает одиночный щелчок.

Работа с Internet и поиск. При нахождении в Internet можно просматривать Web-страницы в Konqueror так же, как в любом другом обозревателе. На рис. 3.34 приведен пример экра­на Konqueror.

 

 

Необходимо ввести адрес страницы в строку адреса, нажать клавишу <Enter> или кнопку Переход справа от строки адреса,  и Konqueror  загрузит и отобразит указанную страницу. Сообщение узел неизвестен  обычно  означает,   что не  установлена связь с Internet (или указан неверный адрес страницы).

Если эта страница ранее посещалась, Konqueror облегчит ввод адреса с помощью функции автозавершения текста. Имеется также возможность выбрать нужный адрес из списка посещенных страниц, для этого следует воспользоваться разде­лом Журнал на панели навигации. Если необходимо произвести поиск в Internet, специальные Web-сокращения помогут легко указать нужную поисковую машину. В табл. 6.12 приводятся ос­новные действия при навигации по Web-страницам.

 

 

Web-сокращения. В Konqueror имеется возможность пользовать Web-сокращения — сокращенные названия поисковых машин, с помощью которых поиск в Internet активизируется вводом искомой фразы в строке адреса (без захода на главную страницу поисковой машины).

Например, если ввести в строке адреса gg: konqueror и нажать <Enter>, обозреватель автоматически передаст поисковой машине Google запрос показать информацию об обозревателе Konqueror, которая есть в Internet.

Чтобы просмотреть список доступных Web-сокращений и добавить новые, следует выбрать пункт меню Настройка \ Настройка   Konqueror..., в появившемся окне войти в раздел Настройки и щелкнуть по значку Wеb-сокращения.

Идентификация обозревателя. Когда Konqueror подключается к какому-либо серверу в Internet, он сообщает туда некоторые собственные данные (название, версия, система и т. д. или «User Agent»), исходя из которых сервер пересылает обозревателю такой вариант страницы, который в Konqueror бу­дет выглядеть наилучшим образом. Это связано с тем, что у каж­дого обозревателя есть свои особенности, и не во всех обозрева­телях одна и та же страница будет выглядеть одинаково.

Сохранение и печать страниц. Если необходимо сохранить текущую Web-страницу на жестком диске, следует вы­брать пункт меню Адрес\Сохранить как. . . . При наличии на странице врезок (frames) каждая из них может быть сохранена отдельно, если щелкнуть по ней левой кнопкой мыши и выбрать пункт меню Адрес\Сохранить врезку как. . . В табл. 6.13 приводятся различные варианты команд сохранения и печати страниц.

Программы-серверы. Сервер WWW — программа, которая принимает запросы от WWW-клиентов и отвечает на них. В ка­честве ответа может быть возвращен HTML-документ, храня­щийся в базе данных сервера, графический образ, аудиозапись, фильм или ответ внешней программы. Сервер обменивается данными не только с клиентами, но и с CGI-скриптами.

В настоящее время серверы WWW существуют для всех ти­пов компьютерных платформ и операционных систем.

Серверы для Unix-систем:

HTTPD (NCSA) — весьма распространен в сети; большое количество клиентов настроены для работы с этим типом сервера,

А р а с h i e — некоммерческое развитие сервера NCSA с учетом спецификаций защиты данных от несанкционирован­ного доступа;

WN-сервер   — реализует  механизм  графического стека ссылок в себе самом, а не через внешний скрипт, что повышает защищенность данных.  Кроме того, данный сервер позволяет воспользоваться механизмом обновления информации протокола HTTP для организации видеоклипов.

 

 

Сервер Win HTTPD — это сервер для Windows. Он яв­ляется функционально полным сервером WWW для этого типа операционной системы.

XML-технологии и поиск данных. BizQuery. Просмотр XML-Документов осуществляется специальной программой анализато­ром. На сегодняшний день разработано около десятка подобных анализаторов. В браузере Internet Explorer 5 предусмотрен анализ XML-документов.

Анализ документа в Internet Explorer 5 осуществляется тремя вариантами: просмотр аналогично HTML-документу, формати­рование документа с использованием специальных стилевых таблиц — XSL и анализ с помощью сценариев, написанных на Java Script или VBScript.

Поиск  нужного элемента   или  поддерева  осуществляется с помощью XQL-запроса. XQL является частью XML и переводится как   язык  запросов  для  XML    (XML   Query Language). Широко обсуждается вопрос об утверждении языка XQL в качестве стандарта, который может заменить SQL

Синтаксис языка запросов очень гибок и позволяет осуществлять поиск элемента как по названию, значению атрибутов со держанию, так и учитывать вложенность и положение в дереве элементов. С помощью запросов мы можем выделять из общего дерева необходимые нам элементы и применять к ним необхо­димые инструкции. Запрос возможно применять как к самому XML-документу, так и к ссылкам URL.

Язык запросов напоминает обычный способ определения пути к ресурсу — список узлов дерева, разделенных символом «/». Для указания на текущий элемент используется символ «.» на родительский — «..», для выделения всех дочерних элемен­тов — символ «*», для выделения элемента, расположенного просто «ниже» по дерену (не важно, на каком именно уровне вложенности) — «//». Условие на значение в запросе должно за­ключаться в символы «f« и «]». Для выбора значения атрибута в условии указывается символ «@».

Примеры простых XQL-шаблонов:

 

 

Система виртуальной интеграции BizQuery на основе технологий XML и UML является результатом работы исследовательской группы, которая на протяжении многих лет занимается вопросами исследования и разработки методов управления XML  - данными. Основные возможности BizQuery заключаются в следующем:

•  интегрированный доступ к нескольким  источникам дан­ных,   которые  могут быть реляционными  или  содержать XML-данные;

•  использование XML как для  внутреннего  представления данных, так и для представления результата;

• представление глобальной схемы интегрированных данных в терминах XML, так и в терминах UML;

•  возможность   формулировки   запросов   к   интегрирован­ным   данным   с   использованием   декларативных   языков запросов;

•  развитая обработка запросов, включая оптимизацию запро­сов; декомпозицию запросов на частичные запросы, адре­суемые к индивидуальным источникам данных; формирование окончательного результата с потенциальным выпол­нением соединений и трансформаций данных.

Приведем пример запроса. Предположим, необходимо обра­титься к двум документам одного реляционного источника и вы­дать данные об отделах, в которых имеются сотрудники моложе 20 лет.

 

 

Схемы документов-источников  в  виде   DTD  (определение типа  документа)   имеют   следующий   вид:   (см.   также   гл.   2, рис. 2.5):

 

 

Запрос содержит полусоединение (определяется раздела for и where) двух документов одного источника, которое может  быть выполнено на стороне источника, а также трансформаций не поддерживаемую реляционным источником.

 

Протокол Z39.50

 

Данный протокол ориентирован на информационный поиск в удаленных базах данных. Это — протокол прикладного уровня в рамках семиуровневой эталонной модели взаимодействия от­крытых систем, разработанной Международной Организацией Стандартов (ISO), и поэтому может быть реализован в различ­ных типах сетей (например, в сетях TCP/IP, IPX/SPX, OSI) не­зависимо от реализации транспортного уровня. Его назначе­ние — предоставить компьютеру, работающему в режиме «кли­ент», возможности поиска и извлечения информации из другого компьютера, работающего как информационный сервер.

Особенностями протокола Z39.50 является возможность со­хранения состояний системы и присвоение каждому состоянию соответствующего идентификатора. Эта особенность протокола позволяет производить «навигацию во времени» т. е. в любой момент можно вернуться в определенную точку поиска, произ­веденного ранее. Наличие такой «памяти» позволяет использо­вать результаты, полученные ранее, в составлении дальнейших запросов.

Первоначально многие Z39.50-пршюжения создавались ис­ключительно для использования с библиографическими данны­ми (например, электронные Online-версии библиотечных ката­логов). Однако в настоящее время протокол развит настолько, что позволяет обрабатывать различные данные — финансовую, химическую, техническую информацию, тексты и изображения.

Технология сетевого доступа к базам данных по протоколу Z39.50 существенно отличается от других технологий. Различие обусловлено самой сутью протокола: его ориентацией на работу с базами данных, абстрагированных от конкретных систем.

Состав протокола Z39.50. В основе Z39.50 лежит модель аб­страктной базы данных.  Каждый элемент этой  модели  имеет описание с однозначным толкованием и стандартизуется с присвоением уникального идентификатора — OID.

Термин база данных в спецификации Z39.50 означает набор файлов  каждый из которых имеет свое уникальное имя. Единицей хранения информации, которая может быть найдена при обращении к базе данных, является запись файла. Все записи одного файла должны иметь одинаковую структуру (т. е. состоять из одного и того же набора элементов и точек доступа). Точка доступа — это уникальный или неуникальный ключ, который может быть указан самостоятельно или в совокупности с други­ми ключами в поисковом критерии. Ключ может быть элемен­том данных, состоять из нескольких элементов или быть частью элемента.

Работа с каждой конкретной СУБД согласно Z39.50 должна быть организована только через эту абстрактную модель путем обмена пакетами данных (PDU), содержащими последователь­ности объектов, идентифицируемых по меткам. В стандарте опи­саны следующие классы объектов:

•  контекст приложения (context);

•  протокольные блоки данных — protocol data unit (pdu);

•  атрибуты (attributeset);

•  диагностика (diagnostic);

•  структура записей (recordsyntax);

•  синтаксис преобразований (transfersyntax);     

•  отчет по ресурсам (resourcereport);                   

•  контроль доступа (accesscontrol);                     

•  расширенный сервис (extendedservice);

•  пользовательская информация (userinfoformat);             

•  элементы (elementspec);

•  варианты (variantset);

•  схема данных (schema);

•  схема меток (tagset).                    

Внутри класса объекты идентифицируются номерами, добав­ляемыми к номеру класса. Например, в классе recordsyntax {1.2.840.10003.5} объекты имеют OID:     

Unimarc {1.2.840.10003.5.1},              

USmarc {1.2.840.10003.5.10},             

sutrs {1.2.840.10003.5.101} и т. п.

Модель службы 239.50 предусматривает обмен сообщениями типа   «запрос—ответ»   между  соответствующими   приложениями – клиентом и сервером. Формат таких сообщений и определяется протоколом Z39.50. После установления ТСР-соединения (или любого другого, зависящего от способа передачи данных) устанавливается 239.50-соединение, посредством обмена протокольными блоками данных — Protocol Data Unit (PDU).

PDU состоят из набора тегов, определяющих тип PDU (запрос или ответ на инициализацию сессии, запрос на поиск зультат поиска, запрос представления, ответ представления, запрос или ответ на закрытие сессии и т. д.), физические парамет­ры сеанса, виды услуг, поддерживаемых клиентом и сервером параметры поиска, содержание запроса, сообщения о проведен­ном поиске и т. д.

Получив от клиента PDU на инициализацию сессии, сервер формирует ответ — сообщения о параметрах сеанса, видах услуг поддерживаемых клиентом и сервером, после получения которо­го клиентом 239.50-соединение считается установленным. Далее клиент может либо продолжить работу с такими параметрами, либо закрыть соединение и попытаться затем установить но­вое — быть может, с другими параметрами. Передавать запрос на поиск информации пользователь может только после уста­новки соединения.

Таким образом, протокол Z39.50 описывает интерактивную сессию между источником запросов и приемником, обслуживаю­щим эти запросы. Полный информационный сервис, как он по­нимается в стандарте, состоит из инициализации сессии, передачи данных и завершения сессии. Параметры сессии и ее окружение источник и приемник определяют в процессе инициализации.

Согласно Z39.50 существует семь основных видов информа­ционного обмена в рамках распределенной ИПС:

•  инициализация сессии;

•  поиск информации по запросу;

•  представление результатов поиска;

•  удаление результатов поиска;

•  контроль доступа к информационному ресурсу;

•  контроль прав доступа к информационному ресурсу;

•  завершение сессии.

Завершение сессии — это закрытие Z-соединения и после­дующее закрытие ТСР-соединения.

В течение сеанса происходит обмен PDU, инициатором которых, чаще всего, выступает клиент. Основные PDU сле­дующие:

 

 

Контрольные вопросы

 

1    Что такое архитектура «клиент—сервер» и каковы основные видности программно-аппаратных средств на клиентской и се стороне?

2   Дайте определение протокола в информационных сетях.

3.  В чем преимущества систем с коммутацией пакетов?

4.  Определите 7-уровневую модель протоколов в открытых система.

5.  На что ориентированы протоколы  1—3 уровня в 7-уровнево модели OSI?

6.  На что ориентированы протоколы 5—7 уровня в 7-уровнево модели OSI?

7.  Какой уровень прокладывает путь через сеть?

8.  Какой уровень обеспечивает обнаружение и исправление ошибок?

9.  Какой уровень определяет процедуру представления перед информации в нужную сетевую форму?

10.  Что входит в систему адресов Internet?

11.  Какую структуру имеет адрес Ethernet?

12.  Какую структуру имеет IP-адрес?

13.  Что такое выделенные IP-адреса?

14.  Что из себя представляет система доменных имен?

15.  Что такое сервер доменных имен?

16.  Какие разновидности URL вам известны?

17.  Какие протоколы транспортного уровня вы знаете?

18.  Что такое инкапсуляция и фрагментация?

19.  Что такое TCP/UDP—порт?

20.  Что представляют собой протоколы управления маршрутизацией?

21.  Какова структура пакета TCP?

22.  Что представляет собой ARP?

23.  Расставьте на места уровни в архитектуре протокола TCP/IP.

24.  Какую функцию описывает протокол TCP?

25.  Какую функцию описывает протокол IP?

26. Что такое класс локальной сети, входящей в Internet?

27. Каковы преимущества и недостатки конфигурации «звезда»? В каких локальных сетях она применяется?

28. Каковы преимущества   и   недостатки   конфигурации   «общая шина»?  В каких локальных сетях она применяется?

29.  Каковы преимущества и недостатки конфигурации «кольцо»? В каких локальных сетях она применяется?

30.  Какие смешанные топологии вам известны и с помощью какого сетевого оборудования они реализуются?

31.  Какие прикладные протоколы Internet вы знаете?

32.  Какие информационные ресурсы Internet вы знаете?

33.  Какова структура ресурса Usenet?

34.  Какова структура распределенной ФС FTP?

35.  Перечислите команды Telnet.

36.  Какие протоколы электронной почты вам известны?

37.  Перечислите программы-клиенты электронной почты.

38.  Перечислите команды прикладных протоколов электронной почты.

39.  Что такое протокол NNTP? Перечислите команды протокола.

40.  Перечислите команды протокола FTP.

41.  Назовите программы-клиенты и серверы протокола FTP.

42.  Что такое Copher? Какова структура взаимодействия программы-кли­ента и сервера?

43.  Каков состав средств Web-технологий? Что такое CGI?

44.  Перечислите команды протокола HTTP.

45.  Каков состав программного обеспечения WWW?

46.  Перечислите основные программы-клиенты и серверы WWW.

47.  Перечислите основные форматы HTML.

48.  Каковы основные возможности отображения документов?

49.  Расскажите об организации гипертекстовых ссылок.

50.  Каковы возможности браузера Netscape Navigator?

51.  В чем состоит отличие протокола Z39.50 от других прикладных прото­колов?

52.  Почему использование протокола HTTP для реализации ИПС вызывает трудности?

53.  Из каких фаз состоит взаимодействие по протоколу Z39.50?