Смекни!
smekni.com

Технологии создания сетей (стр. 57 из 62)

следования ответов. Если размер ответа в транзакции не превосходит по длине

числа буферов, выделенных инициатором транзакции, то последний фрагмент

ответа соответствующим образом помечается. При всем при этом осуществляется

переповтор только недостающих фрагментов ответа. Иллюстрация ситуации

переповтора приведена на рис. 28-5.

[ запрос ]

[ шкала=(00001111) ]

[И] [ ответ(0) ] [Р]

[Н] [ ответ(1) ] [Е]

[И] [ ответ(2) ] [С]

[ Время ] [Ц] [П]

[И] [Потеря] [О]

[А] [ ответ(3) ] [Н]

[T] [ запрос ] [Д]

[O] [шкала=(0000100)] [Е]

[P] [Н]

[ ответ(2) ] [T]

[5]Рис. 28-5. Многофрагментарная ATP транзакция

[КС 28-15]

[5]Протокол передачи потока данных AppleTalk (ADSP - AppleTalk Data

Streame Protocol)

[5]Протокол ADSP обеспечивает набор услуг, основанный на полнодуплексной

надежной передаче данных с управлением потоком, ориентированной на

соединение, которое поддерживается протоколм DDP. В отличие от ATP протокол

ADSP не основан на методе транзакций. Протокол ADSP является традиционным

транспортным механизмом функционально похожим на протокол TCP (глава 23).

Соединение ADSP устанавливается между двумя гнездами. Считается, что

соединение открыто, когда установлено логическое отношение между двумя

гнездами; соединение закрыто, когда такого отношения нет. В протоколе ADSP

предусмотрен механизм обнаружения и закрытия полуоткрытых соединений

(соединений, на одной из сторон которых отсутствуют ресурсы для поддержания

его работоспособности).

Данные в ADSP обрабатываются как поток байтов. Два байтовых потока могут

передаваться по соединению в противоположных направлениях. Для того, чтобы

гарантировать корректный порядок доставки, каждому байту потока присваивается

последовательный номер. В протоколе ADSP постоянно поддерживается номер байта,

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

Реакция на нарушение последовательности принимаемых данных является зависимой

от реализации. В основном при достаточном объеме буферного пространства в

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

"ранее прибывшие" данные до тех пор, пока не будут получены недостающие

данные.

[5]Механизм управления потоком реализуется на основе оконной техники. Каждая

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

которое может быть принято. Максимальный размер окна составляет 64 Кбайта.

В протоколе ADSP специализированы два типа пакетов: данные и управление. В

пакетах управления не передается никакая пользовательская информация. Для

этого применяются пакеты типа данные. Примером пакетов типа управления

являются пакеты открытия и закрытия соединения, пакеты подтверждения.

[КС 28-16]

[ AppleTalk и ]

[ Сеансовый уровень ]

[ Прикладной ]

[ Представительный ]

[ Сеансовый ]

[ Транспортный ]

[ Сетевой ]

[ Канальный ]

[ Физический ]

[ к рис. на стр. 28-17 (в поле рисунка)]

[1]Протоколы сеансового уровня

[5]Протокол печати (PAP - Printer Access Protocol) устанавливает,

поддерживает и завершает соединение с удаленным печатающим устройством.

На самом деле протокол PAP обладает гораздо более универсальными свойствами,

чем это следует из его названия. Протокол PAP может быть использован для

обслуживания соединения между рабочими станциями и сервером любого типа

(печати, файлов и т.д.).

[5]Протокол печати (PAP)

[5]Протокол PAP отрабатывается следующим образом. Некоторое приложение

(PAP-клиент) применяет директиву "open" для установления диалога с сервером.

В протоколе PAP используются услуги протокола NBP для получения адреса

сеансовой точки взаимодействия (гнезда) сервера и услуги протокола ATP для

установления соединения. Когда соединение установлено, приложение имеет

возможность читать и писать данные из/на сервер. Данные передаются в

соответствии с протоколом ATP в режиме ХО. После завершения передачи данных

сеанс закрывается.

Одно PAP-соединение устанавливается на каждую работу (job), которую

необходимо выполнить. Максимальное число работ, которое одновременно

выполняет сервер зависит от конкретной реализации сервера.

[КС 28-17]

[5]Сеансовый протокол AppleTalk (ASP)

[5]Протокол ASP (AppleTalk Session Protocol) является протоколом Сеансового

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

сеансов. Протокол ASP использует услуги протокола ATP (клиент ATP) для

предоставления полноценных транспортных услуг процессам более высокого уровня.

Также, как для протокола ATP центральным понятием является транзакция, для

протокола ASP таким понятием является сеанс. Сеанс всегда устанавливается по

инициативе рабочей станции (в противоположность серверу). С данным сервером

может установить соединение целое множество рабочих станций. Рабочие станции

используют протокол ASP для передачи последовательности команд серверу.

Протокол ASP гарантирует доставку команд в той последовательности, в которой

они передавались рабочей станцией, без каких-либо дублирований. Протокол

ASP информирует своих собственных клиентов (процессов более высокого уровня)

о результате исполнения конкретной операции.

[5]Серверы регистрируют самих себя посредством открытия ATP-гнезда,

связанного с их именами. Затем серверы выполняют "прослушивают" запросы

на своих гнездах. При установлении сеанса рабочая станция использует услуги

протокола ASP. Протокол ASP совместно с протоколом ATP обеспечивают

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

Серверы могут посылать рабочим станциям команды "Внимание" ("ASP

attention"). Обычно это применяется, чтобы информировать рабочие станции об

изменении состояния сервера. После приема команды "Внимание" рабочая станция

может запросить сервер уточнить изменения состояния. Протокол ASP

предоставляет рабочим станциям услугу получения информации о состоянии

сервера до того, как выполнить установление сеанса.

Как указывалось выше, протокол ASP гарантирует доставку информации в том

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

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

сеансовом соединении присваивается последовательный номер. В протоколе ASP

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

"задержанного дубля", т.е. обработки сервером информации, которая является

дублем ранее обработанных данных.

[КС 28-18]

[ AppleTalk и ]

[ Представительный уровень ]

[ Прикладной ]

[ Представительный ]

[ Сеансовый ]

[ Транспортный ]

[ Сетевой ]

[ Канальный ]

[ Физический ]

[ к рис. на стр. 28-19 (в поле рисунка)]

[1]Протоколы представительного уровня

[5]Во многих отношениях Протокол файлов AppleTalk (AFP - AppleTalk Filing

Protocol) является центральной частью Архитектуры AppleTalk. AFP - протокол,

с помощью которого осуществляется доступ к удаленным (remote) файлам. Он

также обеспечивает защиту системы файлов.

[5]Протокол файлов AppleTalk (AFP)

[5]Как правило, протокол AFP выполняется на основе протокола ASP. Однако он

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

Функционально протокол AFP аналогичен системам NFS, XDR и RPC (см. главу 23).

[КС 28-19]

[5]В протоколе AFP модель доступа к файлам предусматривает следующий сценарий

взаимодействия. Прикладные программы, выполняемые на рабочих станциях,

инициируют команды доступа к файлам, имеющие естественную семантику локальной

файловой системы. В объекте AFP выполняется анализ каждой команды для того,

чтобы определить, адресована ли она к локальному или удаленному файлу. Если

команда предназначена локальным файлам, то AFP передает команду на исполнение

в локальную файловую систему. Если же команда адресована удаленным (не

локальным) файлам, то AFP, прибегая к услугам низкоуровневых протоколов

AppleTalk, пересылает команду по сети в сервер, на котором требуемый файл

располагается. Интерфейс с протоколами AppleTalk низкого уровня специфицирован

под названием AppleTalk Filing Interface (AFI) - Интерфейс Файлов Appletalk.

На сервере файловые команды обрабатываются соответствующей управляющей

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

AFT в прикладную программу на рабочей станции.

[ Рабочая станция ]

[ Прикладные ]

[ программы ]

[ Локальная ] [ AFP ]

[ Файловая система ] [ Транслятор ] [ Сервер ]

[ Диск ] [ Интерфейс ] [ Локальная ] [ Программа ]

[ Файлов ] [ Диск ] [ Файловая ] [ Управления ]

[ AppleTalk ] [ система ] [ Файл-Сервером]

[ сеть ]

[5] Рис. 28-6. Модель доступа к файлам AFP

[5]В случае, когда удаленный файл не имеет структуру Macintosh, то

транслятор AFP преобразует файл в представление удаленной файловой системы.

Если команда файловой системы не имеет локального аналога (эквивалента),

то вызовы AFP могут быть непосредственно переданы в AFI.

[КС 28-20]

[5]В протоколе AFP поддерживается многотомность. Том представляет собой

элемент файлохранилища, обычно располагаемый на всем диске или на некоторой

его части. Тома имеют уникальные в рамках сервера имена и идентификаторы. Тома

содержат каталоги или справочники (directories) - логические группы файлов.

Некоторые тома содержат только один каталог, другие - целое множество.

Протокол AFP обеспечивает доступ к томам.

[Том=Vol 1] [Том=Vol 3]

[Vol 2]

[Vol 1] [Vol2] [Vol 3]

[Спр А] [Спр В] [Спр С] [Спр D Спр Е]

[Спр F Спр G]

[Файл 1 Файл 2 Файл 3] [Файл 4 Файл 5]

[5] Рис.28-7. Структура файловой системы AFP.

[5]Протокол AFP включает в себя систему безопасности, разработанную для

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

протоколе AFP предусматриваются три способа обеспечения безопасности: