Глава 16. AppleTalk.
Глава 16. AppleTalk.
В начале 1980 гг. Apple Computer готовилась
к выпуску компьютера Macintosh.
Инженеры компании знали, что в
скором времени сети станут
насущной необходимостью, а не
просто интересной новинкой. Они
хотели также добиться того, чтобы
базирующаяся на компьютерах Macintosh
сеть была бесшовным расширением
интерфейса пользователя Macintosh,
совершившим подлинную революцию в
этой области. Имея в виду эти два
фактора, Apple решила встроить
сетевой интерфейс в каждый Macintosh и
интегрировать этот интерфейс в
окружение настольной
вычислительной машины. Новая
сетевая архитектура Apple получила
название Apple Talk.
Хотя Apple Talk является
патентованной сетью, Apple
опубликовала характеристики Apple Talk,
пытаясь поощрить разработку при
участии третьей стороны. В
настоящее время большое число
компаний успешно сбывают на рынке
базирующиеся на Apple Talk изделия; в их
числе Novell, Inc. и Мicrosoft Corparation.
Оригинальную реализацию Apple Talk,
разработанную для локальных
рабочих групп, в настоящее время
обычно называют Apple Talk Phase I.
Однако после установки свыше 1.5 мил.
компьютеров Macintosh в течение первых
пяти лет существования этого
изделия, Apple обнаружила, что
некоторые крупные корпорации
превышают встроенные возможности
Apple Talk Phase I, поэтому протокол был
модернизирован. Расширенные
протоколы стали известнны под
названием Apple Talk Phase II. Oни
расширили возможности
маршрутизации Apple Talk, обеспечив их
успешное применение в более
крупных сетях.
Apple Talk была разработана как
система распределенной сети
клиент- сервер. Другими словами,
пользователи совместно пользуются
сетевыми ресурсами (такими, как
файлы и принтеры). Компьютеры,
обеспечивающие эти ресурсы,
называются служебными
устройствами (servers); компьютеры,
использующие сетевые ресурсы
служебных устройств, называются
клиентами (clients). Взаимодействие
со служебными устройствами в
значительной степени является
прозрачным для пользователя, т.к.
сам компьютер определяет
местоположение запрашиваемого
материала и обращается к нему без
получения дальнейшей информации от
пользователя. В дополнение к
простоте использования,
распределенные системы также имеют
экономические преимущества по
сравнению с системами, где все
равны, т.к.важные материалы могут
быть помещены в нескольких, а не во
многих местоположениях.
Apple Talk относительно хорошо
согласуется с эталонной моделью OSI.
На Рис. 16-1 "Apple Talk и эталонная
модель OSI" представлены
протоколы Apple Talk, смежные с теми
уровнями OSI, с которыми у них
установлено соответствие. Этот
рисунок отличается от других
изображений связи пакета
протоколов Apple Talk с моделью OSI тем,
что на нем NBP, ZIP и RTMP размещены на
Уровне 3, а АЕР-на Уровне 7. По мнению
Cisco, NBP, ZIP и RТМP по своим
функциональным возможностям стоят
в ряду ближе к Уровню 3 модели OSI,
хотя они и пользуются услугами DDP,
другого протокола Уровня 3.
Аналогично, Cisco полагает, что АРЕ
следует включить в перечень
протоколов прикладного уровня, т.к.
он обычно используется для
обеспечения функциональных
возможностей прикладного уровня. В
частности, АЕР помогает определить
возможность отдаленных узлов
принимать следующие соединения.
Apple разработала AppleTalk таким
образом, чтобы он был независимым
от канального уровня. Другими
словами, теоретически он может
работать в дополнение к любой
реализации канального уровня. Apple
обеспечивает различные реализации
канального уровня, включая Ethernet, Token
Ring, FDDI и LocalTalk. Apple ссылается на AppleTalk,
работающий в Ethernet, как нa EtherTalk, в
Тоkеn Ring-кaк на TokenTalk и в FDDI-как на
FDDITalk. Информация о технических
характеристиках Ethernet, TokenRing и FDDI
приведена соответственно в главе 5 "Ethernet/IEEE 802.3", главе 6 "Token Ring/IEEE 802.5" и главе
7 "FDDI".
LocalTalk - это запатентованная
компанией Apple система доступа к
носителю. Он базируется на
конкуренции на получение доступа,
топологии об'единения с помощью
шины и передаче сигналов базовой
полосы (baseband signaling) и работает на
носителе, представляющим собой
экранированную витую пару, со
скоростью 230.4 Kb/сек. Физическим
интерфейсом является RS-422; это
сбалансированный интерфейс для
передачи электрических сигналов,
поддерживаемый интерфейсом RS-449.
Сегменты LocalTalk могут переноситься
на расстояния до 300 метров и
обеспечивать до 32 узлов.
В данном разделе описываются
концепции, принятые для сетевого
уровня AppleTalk, и протоколы для этого
уровня. В нем рассматриваются
назначение адреса протокола,
сетевые об'екты и протоколы AppleTalk,
которые обеспечивают
функциональные возможности Уровня
3 эталонной модели OSI.
Назначения адреса
протокола
Для обеспечения минимальных
затрат, связанных с работой
администратора сети, aдреса узлов
AppleTalk назначаются динамично. Когда
Macintosh, прогоняющий AppleTalk, начинает
работать, он выбирает какой-нибудь
адрес протокола (сетевого уровня) и
проверяет его, чтобы убедиться, что
этот адрес используется в данный
момент. Если это не так, то этот
новый узел успешно присваивает
себе какой-нибудь адрес. Если этот
адрес используется в данный момент,
то узел с конфликтным адресом
отправляет сообщение, указывающее
на наличие проблемы, а новый узел
выбирает другой адрес и повторяет
этот процесс. На Рис. 16-2 представлен
процесс выбора адреса AppleTalk.
Фактические механизмы выбора
адреса AppleTalk зависят от носителя.
Для установления связи адресов
AppleTalk с конкретными адресами
носителя используется протокoл
разрешения адреса AppleTalk (AARP). AARP
также устанавливает связи между
адресами других протоколов и
аппаратными адресами. Если пакет
протоколов AppleTalk или любого другой
пакет протоколов должен отправить
пакет данных в другой сетевой узел,
то адрес протокола передается в AARP.
AARP сначала проверяет адресный кэш,
чтобы определить, является ли уже
установленной связь между адресом
этого протокола и аппаратным
адресом. Если это так, то эта связь
передается в запрашивающий пакет
протоколов. Если это не так, то AARP
инициирует широковещательное или
многопунктовое сообщение,
запрашивающее об аппаратном адресе
данного протокольного адреса. Если
широковещательное сообщение
доходит до узла с этим протокольным
адресом, то этот узел в ответном
сообщении указывает свой
аппаратный адрес. Эта информация
передается в запрашивающий пакет
протоколов, который использует
этот аппаратный адрес для связи с
этим узлом.
Сетевые объекты
AppleTalk идентифицирует несколько
сетевых об'ектов. Самым простым
является узел (node), который
является просто любым устройством,
соединенным с сетью AppleTalk. Наиболее
распространенными узлами являются
компьютеры Macintosh и лазерные
принтеры, однако многие другие
компьютеры также способны
осуществлять связь AppleTalk, в том
числе компьютеры IBM PC, Digital Equipment
Corparation VAX и различные АРМ. Следующим
об'ектом, определяемым AppleTalk,
является сеть. Сеть AppleTalk
представляет собой просто
отдельный логический кабель. Хотя
этот логический кабель часто
является отдельным физическим
кабелем, некоторые вычислительные
центры используют мосты для
об'единения нескольких физических
кабелей. И наконец, зона (zone)
АppleTalk является логической группой
из нескольких сетей (возможно
находящихся далеко друг от друга).
Об'екты AppleTalk изображены на Рис. 16-3.
Основным протоколом сетевого
уровня AppleTalk является протокол DDP. DDP
обеспечивает обслуживание без
установления соединения между
сетевыми гнездами. Гнезда могут
назначаться либо статистически,
либо динамически. Адреса AppleTalk,
назначаемые DDP, состоят из 2
компонентов: 16-битового номера сети
(network number) и 8-битового номера
узла (node number). Эти два компонента
обычно записываются в виде
десятичных номеров, разделенных
точкой (например, 10.1 означает сеть
10, узел 1). Если номер сети и номер
узла дополнены 8-битовым гнездом (socket),
обозначающим какой-нибудь особый
процесс, то это означает, что в сети
задан какой-нибудь уникальный
процесс.
AppleTalk Phase II делает различие между
нерасширенными (nоnextended) и
расширенными (extended) сетями. В
нерасширенных сетях, таких как
LocalTalk, номер каждого узла AppleTalk
уникален. Нерасширенные сети были
единственным типом сети,
определенным в AppleTalk Phase I. В
расширенных сетях, таких как EtherTalk и
TokenTalk, уникальной является
комбинация номер каждой сети/номер
узла.
Зоны определяются управляющим
сети AppleTalk в процессе конфигурации
роутера. Каждый узел AppleTalk
принадлежит к отдельной конкретной
зоне. Расширенные сети могут иметь
несколько зон, которые
ассоциируются с ними. Узлы в
расширенных сетях могут
принадлежать к любой отдельной
зоне, которая ассоциируется с этой
расширенной сетью.
Протокол поддепжки
маршрутной таблицы (RTMP)
Протокол, который организует и
поддерживает маршрутные таблицы
AppleTalk, называется Протоколом
поддержки маршрутной таблицы (RTMP).
Маршрутные таблицы RTMP содержат
данные о каждой сети, до которой
может дойти дейтаграмма. В эти
данные входит порт роутера, который
ведет к сети пункта назначения, ID
узла следующего роутера, который
принимает данный пакет, расстояние
до сети назначения, выраженное
числом пересылок, и текущее
состояние этих данных (хорошее,
подозрительное или плохое).
Периодический обмен маршрутными
таблицами позволяет роутерам
об'единенных сетей гарантировать
обеспечение непротиворечивой
текущей информацией. На Рис. 16-4
представлен образец таблицы RTMP и
соответствующая архитектура сети.
Протокол привязки по именам AppleTalk
(Name Binding Protocol - NBP) устанавливает
связь имен AppleTalk (которые
выражаются как об'екты, видимые для
сети - network-visible entities, или NVE) с
адресами. NVE является адресуемой
сетью AppleTalk услугой, такой как
гнездо. NVE ассоциируются с более,
чем одним именем об'ектов и
перечнем атрибутов. Имена об'ектов
представляют собой
последовательность символов,
например такую: printer@net1, в то
время как перечень атрибутов
определяет характеристики NVE.
Связь между NVE с присвоенными
именами и сетевыми адресами
устанавливается через процесс
привязки имени. Привязка имени
может быть произведена в момент
запуска узла или динамично,
непосредственно перед первым
использованием. NBP управляет
процессом привязки имени, в который
входят регистрация имени,
подтверждение имени, стирание
имени и поиск имени.
Зоны позволяют проводить поиск
имени в группе логически связанных
узлов. Чтобы произвести поиск имен
в пределах какой-нибудь зоны,
отправляется запрос о поиске в
местный роутер, который рассылает
широковещательный запрос во все
сети, которые имеют узлы,
принадлежащие заданной зоне.
Протокол информации зоны (Zone
Information Protocol - ZIP) координирует эти
действия.
ZIP поддерживает соответствие
номер сети/номер зоны в
информационных таблицах зоны (zone
information tables-ZIT). ZIT хранятся в
роутерах, которые являются
основными пользователями ZIP, однако
конечные узлы используют ZIP в
процессе запуска для выбора своих
зон и получения межсетевой
информации о зонах. ZIP использует
маршрутные таблицы RTMP для
отслеживания изменений в топологии
сети. Если ZIP находит данные о
маршрутной таблице, которох нет в
данной ZIT, она образует запись
данных о новой ZIT. На Рис. 16-5
представлен образец ZIT.
Network number |
Zone |
1 |
My |
2 |
Your |
3 |
Marketing |
4 |
Documentation |
5-5 |
Sales |
Figure 16-5
Транспортный уровень AppleTalk
реализуется двумя основными
протоколами AppleTalk: AppleTalk Transaction
Protocol (ATP) (Протокол транзакций
AppleTalk) и AppleTalk Data Stream Protocol (ADSP)
(Протокол потока данных АppleTalk). АТР
является
транзакционно-ориентированным, в
то время как ADSP является
ориентированным по потоку данных.
Протокол транзакций
AppleTalk (ATP)
ATP является одним из протоколов
транспортного уровня Appletalk. АТР
пригоден для применений,
базирующихся на транзакциях,
которые можно встретить в банках
или магазинах розничной торговли.
В транзакции АТР входят запросы
(от клиентов) (requests) и ответы (от
служебных устройств) (replies).
Каждая пара запрос/ответ имеет
отдельный ID транзакции. Транзакции
имеют место между двумя гнездами
клиентов. АТР использует
транзакции "точно-один раз" (exactly
once - XO) и "по крайней мере один
раз" (at-least-once - ALO), Транзакции
ХО требуются в тех ситуациях, когда
случайное выполнение транзакции
более одного раза неприемлемо.
Банковские транзакциии являются
примером таких неидемпотентных (nonidempotent)
ситуаций (ситуаций, когда
повторение какой-нибудь транзакции
вызывает проблемы, что достигается
тем, что делаются
недействительными данные,
участвующие в данной транзакции).
АТР способен выполнять наиболее
важные функции транспортного
уровня, в том числе подтверждение о
приеме данных и повторную передачу,
установление последовательности
пакетов, а также фрагментирование и
повторную сборку. АТР ограничивает
сегментирование сообщений до 8
пакетов; пакеты АТР не могут
содержать более 578 информационных
байтов.
Протокол потока данных
AppleTalk (ADSP)
ADSP является другим важным
протоколом транспортного уровня
Apple Talk. Как видно из его названия, ADSP
является ориентированным по потоку
данных, а не по транзакциям. Он
организует и поддерживает
полностью дублированный поток
данных между двумя гнездами в
об'единенной сети AppleTalk.
ADSP является надежным протоколом в
том плане, что он гарантирует
доставку байтов в том же порядке, в
каком они были отправлены, а также
то, что они не будут дублированы. ADSP
нумерует каждый байт, чтобы
отслеживать отдельные элементы
потока данных.
ADSP также определяет механизм
управления потоком. Пункт
назначения может в значительной
степени замедлять передачи
источника путем сокращения размера
об'явленного окна на прием.
ADSP также обеспечивает механизм
сообщений управления "выхода из
полосы" (out-of-band) между двумя
об'ектами AppleTalk. В качестве средства
для перемещения сообщений
управления выхода из полосы между
двумя об'ектами AppleTalk используются
пакеты "внимания" (attention
packets).Эти пакеты используют
отдельный поток номеров
последовательностей, чтобы можно
было отличать их от обычных пакетов
данных ADSP.
AppleTalk обеспечивает несколько
протоколов высшего уровня.
Протокол сеансов AppleTalk ( AppleTalk Session
Protocol - ASP) организует и
поддерживает сеансы (логические
диалоги) между клиентом AppleTalk и
служебным устройством. Протокол
доступа к принтеру ( Printer Access Protocol
- РАР) AppleTalk является
ориентированным по связи
протоколом, который организует и
поддерживает связи между клиентами
и служебными устройствами
(использование термина printer в
заголовке этого протокола является
просто исторической традицией).
Эхо-протокол AppleTalk (AppleTalk Echo Protocol
- AEP) является очень простым
протоколом, генерирующим пакеты,
которые могут быть использованы
для проверки способности различных
узлов сети создавать повторное эхо.
И наконец, Протокол ведения
картотеки AppleTalk (AppleTalk Filing Protocol -
AFP) помогает клиентам коллективно
использовать служебные файлы в
сети.
[Назад] [Содержание] [Вперед]
|