AppleTalk - AppleTalk

AppleTalk
Стек протоколов
Логотип AppleTalk на Панели управления.gif
Разработчики)Apple Inc.
Введено1985; 35 лет назад (1985)
Аппаратное обеспечениеLocalTalk, другие

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

AppleTalk был выпущен в 1985 году и был основным протоколом, используемым устройствами Apple в 1980-х и 1990-х годах. Также были выпущены версии для IBM PC и совместимые и Apple IIGS. Поддержка AppleTalk также была доступна в большинстве сетевых принтеров (особенно лазерные принтеры ), немного файловые серверы, и ряд маршрутизаторы.

Подъем TCP / IP в течение 1990-х годов привели к повторной реализации большей части этих типов поддержки для этого протокола, и AppleTalk перестала поддерживаться с момента выпуска Mac OS X v10.6 в 2009 году. Многие из более продвинутых функций автоконфигурации AppleTalk с тех пор были представлены в Bonjour, пока Универсальный Plug and Play обслуживает аналогичные потребности.

История

AppleNet

После выхода Яблочная Лиза компьютер в январе 1983 года, Apple вложила значительные усилия в разработку локальная сеть (LAN) система для машин. Известный как AppleNet, он был основан на Xerox XNS стек протоколов[1] но работает на кастоме 1 Мбит / с коаксиальный кабель система, а не 2,94 Мбит / с Xerox Ethernet. AppleNet была анонсирована в начале 1983 года с полным внедрением по целевой цене 500 долларов за подключаемые карты AppleNet для Lisa и Яблоко II.[2]

В то время первые системы LAN только выходили на рынок, в том числе Ethernet, Token Ring, Эконет и ARCNET. В то время это была тема больших коммерческих усилий, доминирующих в шоу, таких как Национальная компьютерная конференция (NCC) в Анахайме в мае 1983 года. Все системы боролись за положение на рынке, но даже в то время широкое признание Ethernet предполагало, что он должен стать де-факто стандарт.[3] Именно на этом шоу Стив Джобс задал Гуршаран Сидху, казалось бы, безобидный вопрос: «Почему нетворкинг не прижился?»[4]

Четыре месяца спустя, в октябре, AppleNet закрыли. В то время они объявили, что «Apple осознала, что создание сетевой системы - не бизнес. Мы построили и использовали AppleNet внутри компании, но мы поняли, что если бы мы ее поставили, то увидели бы появление новых стандартов. "[5] В январе Джобс объявил, что вместо этого поддержит IBM Token Ring, который он рассчитывал выпустить через «несколько месяцев».[5]

AppleBus

В этот период Apple глубоко погрузилась в разработку компьютера Macintosh. Во время разработки инженеры приняли решение использовать Зилог 8530 микросхема последовательного контроллера (SCC) вместо более дешевой и более распространенной UART предоставлять Серийный порт соединения.[6] SCC стоил примерно на 5 долларов больше, чем UART, но предлагал гораздо более высокие скорости до 250 килобит в секунду (или выше с дополнительным оборудованием) и внутренне поддерживал ряд базовых сетевых протоколов, таких как протокол IBM. Bisync.[7]

SCC был выбран, потому что он позволял подключать к порту несколько устройств. Периферийные устройства оснащенные аналогичными SCC, могут обмениваться данными с использованием встроенных протоколов, чередуя свои данные с другими периферийными устройствами на той же шине. Это устранило бы необходимость в большем количестве портов на задней панели машины и позволило бы исключить Слоты расширения для поддержки более сложных устройств. Первоначальная концепция была известна как AppleBus, предполагая систему, управляемую хостом Macintosh, опрашивающую «немые» устройства способом, подобным современным универсальная последовательная шина.[8]

Сеть AppleBus

Команда Macintosh уже начала работу над тем, что станет LaserWriter, и рассмотрел ряд других вариантов ответа на вопрос о том, как совместно использовать эти дорогие машины и другие ресурсы. В серии заметок Боба Белвилля эти концепции разъясняются, в частности, Mac, LaserWriter и файловый сервер система, которая станет Macintosh Office.[4] К концу 1983 года стало ясно, что IBM Token Ring не будет готова к запуску Mac и может пропустить запуск других продуктов. В конце концов, Token Ring не будет поставляться до октября 1985 года.[9]

Предыдущий вопрос Джобса Сидху уже породил ряд идей. Когда в октябре AppleNet была закрыта, Сидху возглавил усилия по разработке новой сетевой системы на базе оборудования AppleBus. Эта новая система не должна была соответствовать никаким существующим предубеждениям и была разработана, чтобы быть достойной Mac - системы, которую можно было установить пользователем, с нулевой конфигурацией и без фиксированных сетевых адресов - короче говоря, настоящая подключаемая и -игровая сеть.[10][требуется сторонний источник ] Потребовались значительные усилия, но к тому времени, когда был выпущен Mac, основные концепции были изложены, и некоторые из низкоуровневых протоколов находились на стадии завершения. Сидху рассказал о работе Бельвиллу всего через два часа после анонса Mac.[4]

«Новый» AppleBus был анонсирован в начале 1984 г.[N 1] позволяя прямое подключение с Mac или Lisa через небольшую коробку, которая подключается к последовательному порту и подключается с помощью кабелей к следующему компьютеру в восходящем и нисходящем направлениях. Адаптеры для Яблоко II и Яблоко III также были объявлены.[11] Apple также объявила, что сети AppleBus могут быть присоединены к системе Token Ring и будут выглядеть как единственный узел внутри нее.[5] Детали того, как это будет работать, были отрывочными.[5]

AppleTalk

Незадолго до своего выпуска в начале 1985 года AppleBus был переименован. AppleTalk. Система имела ряд ограничений, включая скорость всего 230,4 кбит / с, максимальное расстояние 1000 футов от конца до конца и всего 32 узла на LAN.[12] Но поскольку базовое оборудование было встроено в Mac, добавление узлов стоило всего около 50 долларов за блок адаптера. Для сравнения, карты Ethernet или Token Ring стоят сотни или тысячи долларов. Кроме того, весь сетевой стек требовалось всего около 6 КБ ОЗУ, что позволяло запускать его на любом Mac.[13]

Относительно низкая скорость AppleTalk позволила дополнительно снизить стоимость. Вместо того, чтобы использовать RS-422 сбалансированные цепи передачи и приема, Персональная сеть AppleTalk проводка использовалась единственная общая электрическое заземление, который ограничивал скорость примерно до 500 кбит / с, но позволял удалить один провод. Это означало, что для проводки можно было использовать обычные трехжильные кабели. Кроме того, адаптеры были спроектированы так, чтобы быть «самоограничивающимися», что означает, что узлы в конце сети могли просто оставить свой последний разъем неподключенным. Не было необходимости снова соединять провода в петлю, не было необходимости в концентраторах или других устройствах.

Система была разработана для будущего расширения; система адресации позволяла расширяться до 255 узлов в локальной сети (хотя в то время можно было использовать только 32), а с помощью «мостов» (которые стали известны как «маршрутизаторы», хотя технически не то же самое) можно было соединить LAN в более крупные коллекции. «Зоны» позволяли адресовать устройства в подключенном по мосту Интернету. Кроме того, AppleTalk с самого начала разрабатывался так, чтобы можно было использовать его с любой потенциальной базовой физической связью.[14]

Основным преимуществом AppleTalk было то, что он не требовал обслуживания. Чтобы подключить устройство к сети, вы просто подключили адаптер к машине, а затем подключили кабель от него к любому свободному порту на любом другом адаптере. Внутренние протоколы AppleTalk согласовали номер рабочего сетевого адреса, автоматически дали компьютеру удобочитаемое имя и собрали список имен и типов других машин в сети, чтобы пользователь мог просматривать устройства через графический интерфейс. Выборщик. AppleTalk был настолько прост в использовании, что специальные сети, как правило, появлялись всякий раз, когда несколько компьютеров Mac находились в одной комнате.[15] Позже Apple будет использовать это в рекламе, показывающей сеть, создаваемую между двумя сиденьями в самолете.[16]

PhoneNet и другие адаптеры

В течение следующих нескольких лет развивался процветающий рынок сторонних устройств AppleTalk. Одним из наиболее ярких примеров был альтернативный адаптер, разработанный BMUG и коммерциализируется Farallon as PhoneNet в 1987 г.[17] По сути, это была замена разъема Apple, у которого был обычный телефонные розетки вместо круглых разъемов Apple. PhoneNet позволял соединять сети AppleTalk с помощью обычных телефонных проводов, и с очень небольшими дополнительными усилиями можно было использовать аналоговые телефоны и AppleTalk по одному четырехжильному телефонному кабелю.

Другие компании воспользовались способностью SCC считывать внешние часы, чтобы поддерживать более высокие скорости передачи, до 1 Мбит / с. В этих системах внешний адаптер также имел собственный Часы, и использовал это для подачи сигналов на входные контакты синхронизации SCC. Самой известной такой системой была Centram FlashTalk, который работал со скоростью 768 кбит / с и предназначался для использования с их ТОПЫ сетевая система.[18] Аналогичным решением была скорость 850 кбит / с. DaynaTalk, в котором использовался отдельный блок, который вставлялся между компьютером и обычным блоком LocalTalk / PhoneNet. Dayna также предлагала карту расширения для ПК, которая работала со скоростью до 1,7 Мбит / с при разговоре с другими картами Dayna для ПК.[19][20] Существовало также несколько других систем с еще более высокой производительностью, но для них часто требовались специальные кабели, несовместимые с LocalTalk / PhoneNet, а также требовались исправления для сетевого стека, которые часто вызывали проблемы.

AppleTalk через Ethernet

По мере того как Apple расширялась на коммерческие и образовательные рынки, им требовалось интегрировать AppleTalk в существующие сетевые установки. Многие из этих организаций уже вложили средства в очень дорогую инфраструктуру Ethernet, и прямого способа подключить Macintosh к Ethernet не существовало. AppleTalk включал в себя структуру протокола для соединения подсетей AppleTalk, и поэтому в качестве решения EtherTalk изначально создавался для использования Ethernet в качестве магистрали между подсетями AppleTalk (в то время LocalTalk). Для этого организациям потребуется приобрести Мост LocalTalk-to-Ethernet и Apple предоставила третьим сторонам право производить эти продукты.[21] Ответили несколько компаний, в том числе Hayes и несколько недавно созданных компаний, таких как Kinetics.

EtherTalk, TokenTalk и AppleShare

К 1987 году Ethernet явно выигрывал битву стандартов над Token Ring, и в середине того же года Apple представила EtherTalk 1.0 для недавно выпущенного Macintosh II компьютер, первый Macintosh от Apple со слотами для шины, позволяющими использовать совместимые карты сторонних производителей, не принадлежащих Apple. Операционная система включала новую сеть панель управления это позволяло пользователю выбирать, какое физическое соединение использовать для работы в сети (от «Встроенное» или «EtherTalk»). На момент выпуска интерфейсные карты Ethernet были доступны в 3Com и кинетика, подключенная к Нубус слот в машине. Новый сетевой стек версии также расширил систему до 255 узлов в каждой локальной сети. С его выпуском персональная сеть AppleTalk была переименована. LocalTalk.[22] Token Ring в конечном итоге будет поддерживаться аналогичным TokenTalk продукт, который использовал ту же панель управления сетью и соответствующее программное обеспечение. В конце концов, многие сторонние компании представят совместимые карты Ethernet и Token Ring, использующие те же драйверы.

Появление Macintosh с прямым подключением Ethernet также усугубило проблему совместимости Ethernet и LocalTalk: сети с новыми и старыми Mac нуждались в каком-то способе связи друг с другом. Это может быть так же просто, как сеть Ethernet Mac II, пытающаяся поговорить с LaserWriter, который подключен только к LocalTalk. Первоначально Apple полагалась на вышеупомянутые мостовые продукты LocalTalk-to-Ethernet, но вопреки мнению Apple, это будут продукты небольшого объема, к концу 1987 года уже использовалось 130 000 таких сетей. В то время AppleTalk была самой используемой сетевой системой в мире, ее количество было в три раза больше, чем у любого другого поставщика.[23][требуется сторонний источник ]

1987 год также ознаменовал введение AppleShare продукт, специальный файловый сервер который работал на любом Mac с 512 КБ баран или больше. Обычная машина AppleShare была Mac Plus с внешним SCSI жесткий диск. AppleShare была №3 сетевая операционная система в конце 80-х, позади Novell NetWare и Microsoft MS-Net.[24] AppleShare фактически заменила неудачные попытки Macintosh Office, которые основывались на выделенном устройстве файлового сервера.

AppleTalk Phase II и другие разработки

Значительный редизайн был выпущен в 1989 году как AppleTalk, фаза II. Во многих отношениях фазу II можно рассматривать как попытку сделать более раннюю версию (никогда не называемую фазой I) более общей. Теперь локальные сети могут поддерживать более 255 узлов, а зоны больше не связаны с физическими сетями, а представляют собой полностью виртуальные конструкции, используемые просто для организации узлов. Например, теперь можно создать зону «Принтеры», в которой будут перечислены все принтеры в организации, или можно разместить это же устройство в зоне «2-й этаж», чтобы указать его физическое местоположение. Фаза II также включала изменения в лежащие в основе межсетевые протоколы, чтобы сделать их менее «болтливыми», что ранее было серьезной проблемой для сетей, соединенных через глобальные сети.[25]

К этому моменту Apple разрабатывала широкий спектр коммуникационных продуктов, и многие из них были анонсированы вместе с AppleTalk Phase II. К ним относятся обновления EtherTalk и TokenTalk, программного обеспечения AppleTalk и оборудования LocalTalk для IBM PC, EtherTalk для Apple A / UX Операционная система позволяя ему использовать LaserPrinters и другие сетевые ресурсы, а Mac X.25 и MacX товары.

К 1990 году Ethernet стал почти универсальным, и пришло время встраивать Ethernet в Mac прямо с завода. Однако физическая проводка, используемая в этих сетях, еще не была полностью стандартизирована. Apple решила эту проблему, используя единственный порт на задней панели компьютера, к которому пользователь мог подключить адаптер для любой данной кабельной системы. Этот FriendlyNet система была основана на отраслевом стандарте Интерфейс навесного устройства или AUI, но сознательно выбрали нестандартный разъем, который был меньше и проще в использовании, который они назвали «Apple AUI», или AAUI. FriendlyNet был впервые представлен на Quadra 700 и Quadra 900 компьютеры, и какое-то время использовались на большей части линейки Mac.[26] Как и в случае с LocalTalk, быстро появился ряд сторонних адаптеров FriendlyNet.

В качестве 10BASE-T стала де-факто кабельной системой для Ethernet второго поколения Power Macintosh машины добавили порт 10BASE-T в дополнение к AAUI. В PowerBook 3400c и более дешевые Power Mac также добавили 10BASE-T. В Power Macintosh 7300 /8600 /9600 были последними компьютерами Mac с поддержкой AAUI, а 10BASE-T стал универсальным, начиная с Power Macintosh G3 и PowerBook G3.

Интернет с большой буквы

С самого начала AppleTalk пользователи хотели подключить Macintosh к сетевым средам TCP / IP. В 1984 году Билл Крофт в Стэндфордский Университет был пионером в разработке IP-пакетов, инкапсулированных в DDP, в рамках проекта SEAGATE (Stanford Ethernet - AppleTalk Gateway). SEAGATE был коммерциализирован Kinetics в их мосте LocalTalk-to-Ethernet в качестве дополнительной опции маршрутизации. Несколькими годами позже, MacIP, был отделен от кода SEAGATE и стал де-факто методом маршрутизации IP-пакетов по сетям LocalTalk. К 1986 году Колумбийский университет выпустил первую версию пакета Columbia AppleTalk Package (CAP), который обеспечил более высокую интеграцию сред Unix, TCP / IP и AppleTalk. В 1988 году Apple выпустила MacTCP, система, которая позволила Mac поддерживать TCP / IP на машинах с подходящим оборудованием Ethernet. Однако из-за этого многие университеты столкнулись с проблемой поддержки IP на своих многочисленных Mac с LocalTalk. Вскоре стало обычным включать поддержку MacIP в мосты LocalTalk-to-Ethernet.[26] MacTCP не станет стандартной частью Классическая Mac OS до 1994 года,[27] к тому времени он также поддерживал SNMP и PPP.

В течение некоторого времени в начале 1990-х Mac был основным клиентом быстро расширяющегося Интернета.[нужна цитата ] Среди наиболее известных широко используемых программ были Fetch, Eudora, eXodus, NewsWatcher и пакеты NCSA, особенно NCSA Мозаика[28] и его потомство, Netscape Navigator.[29] Кроме того, появился ряд серверных продуктов, которые позволили Mac размещать Интернет-контент. За этот период у компьютеров Mac было в 2–3 раза больше клиентов, подключенных к Интернету, чем на любой другой платформе.[30][требуется сторонний источник ] несмотря на относительно небольшую общую долю рынка микрокомпьютеров.

Поскольку мир быстро перешел на IP для использования как в LAN, так и в WAN, Apple столкнулась с необходимостью поддерживать две все более устаревшие кодовые базы на все более широкой группе машин, а также с введением PowerPC на базе машин. Это привело к Открытый транспорт усилия, которые повторно реализовали MacTCP и AppleTalk на совершенно новой базе кода, адаптированной из стандарта Unix ПОТОКИ. В ранних версиях были проблемы, и они некоторое время не становились стабильными.[31] К тому моменту Apple была глубоко в своей окончательно обреченной Copland усилия.

Наследие и заброшенность

При покупке Следующий и последующее развитие Mac OS X, AppleTalk был строго устаревшей системой. Поддержка была добавлена ​​в OS X, чтобы обеспечить поддержку большого количества существующих устройств AppleTalk, в частности лазерные принтеры и общие файловые ресурсы, но альтернативные решения для подключения, распространенные в то время, особенно USB для принтеров, ограничивали их спрос. Поскольку Apple отказалась от многих из этих категорий продуктов, и все новые системы были основаны на IP, AppleTalk становился все менее и менее распространенным. Поддержка AppleTalk была окончательно удалена из MacOS в Mac OS X v10.6 в 2009.[32]

Однако утрата AppleTalk не уменьшила потребность в сетевых решениях, сочетающих простоту использования с IP-маршрутизацией. Apple руководила разработкой многих подобных проектов, начиная с выпуска AirPort маршрутизатор к разработке Сеть с нулевой конфигурацией система и их реализация, Bonjour.

Дизайн

Дизайн AppleTalk строго следовал Модель OSI многоуровневого протокола. В отличие от большинства ранних LAN систем, AppleTalk не был построен с использованием архетипических Xerox XNS система. Предполагаемой целью был не Ethernet, и у него не было 48-битных адресов для маршрутизации. Тем не менее, многие части системы AppleTalk имеют прямые аналоги в XNS.

Одним из ключевых отличий AppleTalk было то, что он содержал два протокола, предназначенных для полной самоконфигурации системы. В Протокол разрешения адресов AppleTalk (AARP) позволяет хостам AppleTalk автоматически генерировать свои собственные сетевые адреса, а Протокол привязки имени (NBP) была динамической системой для сопоставления сетевых адресов с именами, читаемыми пользователем. Хотя системы, подобные AARP, существовали и в других системах, Banyan VINES например, ничего подобного NBP не существовало до недавнего времени.[нужна цитата ].

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

Обращение

Адрес AppleTalk был четырехбайтовым числом. Он состоял из двухбайтового номера сети, однобайтового номера узла и однобайтового номера сокета. Из них только сетевой номер требовал какой-либо конфигурации, полученной от маршрутизатора. Каждый узел динамически выбирает свой собственный номер узла в соответствии с протоколом (первоначально это протокол доступа к каналу LocalTalk LLAP, а позже для Ethernet / EtherTalk, протокол разрешения адресов AppleTalk, AARP)[33] которые обрабатывали конкуренцию между разными узлами, случайно выбирая один и тот же номер. Для номеров сокетов несколько хорошо известных номеров были зарезервированы для специальных целей, специфичных для самого протокола AppleTalk. Помимо этого, все протоколы уровня приложений должны были использовать динамически назначаемые номера сокетов как на стороне клиента, так и на стороне сервера.

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

Поскольку имена NBP переводятся в адрес, который включает номер сокета, а также номер узла, имя в AppleTalk отображается непосредственно на служба предоставлялась машиной, которая была полностью отделена от названия самой машины. Таким образом, службы можно было перенести на другую машину, и, пока они сохраняли одно и то же имя службы, пользователям не нужно было делать что-то другое, чтобы продолжить доступ к службе. И на одной машине может размещаться любое количество экземпляров служб одного типа без каких-либо конфликтов сетевых подключений.

Сравните это с Записи в DNS, в котором имя переводится в адрес машины, не включая номер порта, который может предоставлять услугу. Таким образом, если люди привыкли использовать конкретное имя машины для доступа к определенной службе, их доступ прервется, когда служба будет перемещена на другую машину. Это можно смягчить, если настаивать на использовании Записи CNAME указание службы, а не фактических имен компьютеров для ссылки на службу, но нет никакого способа гарантировать, что пользователи будут следовать такому соглашению. Некоторые новые протоколы, такие как Kerberos и Active Directory использовать DNS Записи SRV идентифицировать сервисы по имени, что намного ближе к модели AppleTalk.[оригинальное исследование? ]

Протоколы

Протокол разрешения адресов AppleTalk

AARP разрешает адреса AppleTalk в уровень связи, обычно MAC, адреса. Функционально эквивалентен ARP и получает разрешение адреса методом, очень похожим на ARP.

AARP - довольно простая система. При включении машина AppleTalk передает сообщение Пакет зонда AARP запрашивая сетевой адрес, намереваясь получить ответ от контроллеров, таких как маршрутизаторы. Если адрес не указан, он выбирается случайным образом из «базовой подсети», 0. Затем он транслирует другой пакет с сообщением «Я выбираю этот адрес», а затем ждет, чтобы увидеть, не пожалуется ли кто-нибудь еще в сети. Если другой компьютер имеет этот адрес, он выберет другой адрес и будет продолжать попытки, пока не найдет свободный. В сети с большим количеством машин может потребоваться несколько попыток, прежде чем будет найден свободный адрес, поэтому в целях производительности успешный адрес «записывается» в NVRAM и в будущем будет использоваться как адрес по умолчанию. Это означает, что в большинстве реальных установок, где машины добавляются по несколько за раз, требуется только одна или две попытки, прежде чем адрес станет фактически постоянным.

Протокол потока данных AppleTalk

Это было сравнительно позднее добавление к набору протоколов AppleTalk, сделанное, когда стало ясно, что TCP Требовался надежный транспорт, ориентированный на соединение. Существенными отличиями от TCP были следующие:

  • попытка подключения может быть отклонена
  • не было «полуоткрытых» соединений; как только один конец инициирует разрыв соединения, все соединение будет закрыто (т.е., ADSP есть полнодуплексный, нет двойной симплекс ).
  • В AppleTalk была встроенная система сообщений о внимании, которая позволяла отправлять короткие сообщения в обход обычного потока данных. Они были доставлены надежно, но вышли из строя по отношению к потоку. Любое предупреждающее сообщение будет доставлено как можно скорее вместо того, чтобы ждать, пока текущая точка последовательности байтов потока станет текущей.[34]

Протокол хранения Apple

В Протокол хранения Apple (AFP), ранее называвшийся протоколом AppleTalk Filing Protocol, это протокол для связи с AppleShare файловые серверы. Построен на основе протокола сеанса AppleTalk (для устаревшего AFP поверх DDP) или Интерфейс потока данных (для AFP через TCP) он предоставляет услуги для аутентификации пользователей (с возможностью расширения для различных методов аутентификации, включая двусторонний обмен случайными числами) и для выполнения операций, специфичных для Macintosh. HFS файловая система. AFP все еще используется в macOS, хотя большинство других протоколов AppleTalk объявлены устаревшими.

Протокол сеанса AppleTalk

ASP был промежуточным протоколом, построенным на основе ATP, который, в свою очередь, был основой AFP. Он предоставляет базовые услуги для запроса ответов на произвольные команды d выполнение внеполосных запросов состояния. Это также позволило серверу отправлять асинхронные внимание сообщения клиенту.

Протокол доставки дейтаграмм

DDP был транспортным протоколом нижнего уровня, независимым от канала передачи данных. Это обеспечило дейтаграмма сервис без гарантий доставки.Все протоколы прикладного уровня, включая протоколы инфраструктуры NBP, RTMP и ZIP, были построены на основе DDP. DDP AppleTalk близко соответствует сетевому уровню взаимодействия открытых систем (OSI ) коммуникационная модель.

Протокол привязки имени

Протокол привязки имен был динамической распределенной системой для управления именами AppleTalk. Когда служба запускается на машине, она регистрирует для себя имя, выбранное администратором-человеком. На этом этапе NBP предоставила систему для проверки того, что никакая другая машина еще не зарегистрировала то же имя. Позже, когда клиент хотел получить доступ к этой службе, он использовал NBP для запроса компьютеров, чтобы найти эту службу. NBP обеспечивает возможность просмотра («как называются все доступные службы?»), А также возможность найти службу с определенным именем. Имена были удобочитаемыми, содержали пробелы, прописные и строчные буквы и включали поддержку поиска.

Протокол AppleTalk Echo

AEP (AppleTalk Echo Protocol) - это протокол транспортного уровня, предназначенный для проверки доступности сетевых узлов. AEP генерирует пакеты для отправки на сетевой узел и идентифицируется в поле Type пакета как пакет AEP. Пакет сначала передается исходному DDP. После того, как он идентифицирован как пакет AEP, он пересылается на узел, где пакет проверяется DDP в пункте назначения. После того, как пакет идентифицируется как пакет AEP, пакет затем копируется, и поле в пакете изменяется для создания пакета ответа AEP, а затем возвращается на узел источника.

Протокол доступа к принтеру

PAP был стандартным способом общения с PostScript принтеры. Он был построен на основе ATP. Когда было открыто соединение PAP, каждая сторона отправляла другой запрос ATP, что в основном означало «отправить мне больше данных». Ответ клиента серверу заключался в отправке блока кода PostScript, в то время как сервер мог ответить любыми диагностическими сообщениями, которые могли быть сгенерированы в результате, после чего был отправлен другой запрос «отправить больше данных». Это использование АТФ обеспечивало автоматическое управление потоком; каждый конец мог отправлять данные на другой конец, только если имелся ожидающий ответа запрос ATP.

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

Протокол обслуживания таблицы маршрутизации

RTMP - это протокол, с помощью которого маршрутизаторы информируют друг друга о топологии сети. Это была единственная часть AppleTalk, которая требовала периодических незапрошенных широковещательных рассылок: каждые 10 секунд каждый маршрутизатор должен был рассылать список всех сетевых номеров, о которых он знал, и предполагаемого расстояния до них.

Протокол информации о зоне

ZIP был протоколом, по которому номера сети AppleTalk были связаны с именами зон. А зона было подразделением сети, понятным людям (например, «Бухгалтерия»); но хотя номер сети должен был быть назначен топологически непрерывному участку сети, зона могла включать в себя несколько различных несмежных частей сети.

Физическая реализация

Местный кабель и внутренняя печатная плата, вид со стороны портов
Выключатель автоматического завершения со снятой пылезащитной крышкой, вид сзади
Интерьер интерфейсного блока Apple LocalTalk. В 1989 году эти коробки обычно стоили 90 долларов США каждая. Разъемы оснащены автоматическим электрическое завершение сигнальной шины LocalTalk; вставка кабеля шины LocalTalk снижает нормально замкнутый выключатель за разъемом, отключая оконечную нагрузку для этого разъема.
Адаптер Farallon PhoneNET

Первоначальной аппаратной реализацией по умолчанию для AppleTalk был высокоскоростной последовательный протокол, известный как LocalTalk который использовал Macintosh встроенный RS-422 порты на скорости 230,4 кбит / с. LocalTalk использовал разделитель в порту RS-422 для обеспечения восходящего и нисходящего кабеля от одного порта. Топология была автобус: кабели были соединены гирляндной цепью от каждой подключенной машины к следующей, максимум 32 разрешенных на любой LocalTalk сегмент. Система была медленной по сегодняшним меркам, но в то время дополнительные затраты и сложность организации сети на компьютерах ПК были такими, что Mac были обычным делом, единственными подключенными к сети персональными компьютерами в офисе. Другие большие компьютеры, такие как рабочие станции UNIX или VAX, обычно объединяются в сеть через Ethernet.

Также были доступны другие физические реализации. Очень популярной заменой LocalTalk была PhoneNet, стороннее решение от Farallon Computing, Inc. (переименовано Нетопия, приобретенный Motorola в 2007 г.), который также использовал порт RS-422 и был неотличим от LocalTalk в том, что касается драйверов порта Apple LocalTalk, но проходил через два неиспользуемых провода в стандартной четырехпроводной телефонной разводке. Предвосхищая современные сетевые концентраторы и коммутаторы, Farallon предоставил решения для PhoneNet, которые можно использовать как в конфигурации «звезда», так и в конфигурации шины, как с «пассивными» соединениями звездой (с телефонными проводами, просто соединенными мостом друг с другом в центральной точке), так и с активная «звезда» с оборудованием концентратора «PhoneNet Star Controller». Разъемы Apple LocalTalk не имели функции блокировки, поэтому разъемы могли легко отсоединиться, а конфигурация шины приводила к тому, что любой свободный разъем приводил к отключению всей сети и их было трудно отследить. Разъемы PhoneNet RJ-11, с другой стороны, защелкивались, и в звездообразной конфигурации любая проблема с проводкой затрагивала только одно устройство, и проблемы было легко определить. Низкая стоимость, гибкость и простота устранения неполадок PhoneNet сделали его доминирующим выбором для сетей Mac в начале 1990-х годов.

Протоколы AppleTalk также стали работать через Ethernet (сначала коаксиальный, а затем по витой паре) и Token Ring физические уровни, обозначенные Apple как EtherTalk и TokenTalk, соответственно. EtherTalk постепенно стал доминирующим методом реализации AppleTalk, поскольку Ethernet стал широко популярным в индустрии ПК на протяжении 1990-х годов. Помимо AppleTalk и TCP / IP, любая сеть Ethernet также может одновременно передавать другие протоколы, такие как DECnet и IPX.

Сетевая модель

Модель OSIСоответствующие уровни AppleTalk
ЗаявлениеПротокол хранения Apple (AFP)
ПрезентацияПротокол хранения Apple (AFP)
СессияПротокол информации о зоне (ZIP )
Протокол сеанса AppleTalk (ASP)
Протокол потока данных AppleTalk (ADSP)
ТранспортПротокол транзакций AppleTalk (ATP)
Протокол AppleTalk Echo (AEP)
Протокол привязки имен (NBP )
Протокол обслуживания таблицы маршрутизации (RTMP)
СетьПротокол доставки дейтаграмм (DDP )
Канал передачи данныхПротокол доступа к каналу EtherTalk (ELAP)
Протокол доступа к каналу LocalTalk (LLAP)
Протокол доступа к каналу TokenTalk (TLAP)
Оптоволоконный распределенный интерфейс данных (FDDI )
ФизическийLocalTalk Водитель
Драйвер Ethernet
Token Ring Водитель
FDDI Водитель

Версии

Версия AppleTalkПротокол хранения AppleСоответствуетПримечания
56Система 7.0
57.0.4Система 7.12
58.1.1Система 7.1.2
58.1.3Система 7.5
60.3Mac OS 7.6.1Открытый транспорт 1.3
60.0a6Mac OS 8.6Открытый транспорт 2.0.3
3.0Mac OS X 10.0.3
2.1, 2.0 и даже 1.1Mac OS X v10.2
2.2, 3.0 и 3.1Mac OS X v10.3
3.2Mac OS X v10.4

Кросс-платформенные решения

Когда AppleTalk был впервые представлен, доминирующей платформой офисных вычислений был ПК, совместимый с MS-DOS. Apple представила карту AppleTalk PC Card в начале 1987 года, позволив ПК подключаться к сетям AppleTalk и печатать на принтерах LaserWriter.[35] Годом позже был выпущен AppleShare PC, позволяющий ПК получать доступ к файловым серверам AppleShare.[36]

«TOPS Teleconnector»[37] Сетевая система MS-DOS через систему AppleTalk позволила ПК с MS-DOS взаимодействовать через сетевое оборудование AppleTalk; он состоял из интерфейсной карты AppleTalk для ПК и набора сетевого программного обеспечения, обеспечивающего такие функции, как совместное использование файлов, дисков и принтеров. Помимо создания сети AppleTalk только для ПК, он позволял осуществлять связь между ПК и Mac с установленным программным обеспечением TOPS. (Mac без установленного TOPS могут использовать ту же сеть, но только для связи с другими машинами Apple.) Программное обеспечение Mac TOPS не соответствовало качеству собственного Apple ни по простоте использования, ни по надежности и отсутствию сбоев, но программное обеспечение DOS было относительно прост в использовании в терминах DOS и был надежен.

В BSD и Linux операционные системы поддерживают AppleTalk через проект с открытым исходным кодом под названием Netatalk, который реализует полный набор протоколов и позволяет им действовать как собственные файловые серверы или серверы печати для компьютеров Macintosh, а также печатать на принтеры LocalTalk по сети.

В Windows Серверные операционные системы поддерживали AppleTalk, начиная с Windows NT и заканчивая после Windows Server 2003. Miramar включил AppleTalk в свой продукт для ПК MacLAN, производство которого было прекращено CA в 2007 году. GroupLogic продолжает связывать свой протокол AppleTalk со своим ExtremeZ-IP серверное программное обеспечение для интеграции Macintosh-Windows, которое поддерживает Windows Server 2008 и Виндоус виста а также предыдущие версии. HELIOS Software GmbH предлагает проприетарную реализацию стека протоколов AppleTalk как часть своего сервера HELIOS UB2. По сути, это набор файловых серверов и серверов печати, которые работают на самых разных платформах.

Кроме того, Колумбийский университет выпустил пакет Columbia AppleTalk Package (CAP), в котором реализован набор протоколов для различных версий Unix, включая Ultrix, SunOS, *BSD и IRIX. Этот пакет больше не поддерживается.

Смотрите также

Примечания

  1. ^ AppleBus упоминается по имени в презентации Macintosh Стива Джобса на собрании компьютерного общества в Бостоне в 1984 году. Он появляется сразу после отметки 7:20. в видео.

Рекомендации

Цитаты

  1. ^ Джон Марков, «Apple планирует более медленную и доступную локальную сеть», InfoWorld, 14 февраля 1983 г., стр. 14
  2. ^ Оппенгеймер 2004, Слайд 3.
  3. ^ Дэвид Аль, "Национальная компьютерная конференция 1983 года, 16-19 мая, Анахайм, Калифорния", Творческие вычисления, Август 1983 г., стр. 188
  4. ^ а б c Сидху, Эндрюс и Оппенгеймер 1989, п. xxiii.
  5. ^ а б c d Бартимо 1984, п. 45.
  6. ^ Оппенгеймер 2004, Слайд 6.
  7. ^ Zilog Z8530 Руководство пользователя, Зилог, стр. 1-1
  8. ^ Оппенгеймер 2004, Слайд 9.
  9. ^ «Техническое резюме Token-Ring» В архиве 22 апреля 2012 г. Wayback Machine, Раздел 1.2
  10. ^ Оппенгеймер 2004, Слайд 10.
  11. ^ Джим Баримо, «Apple, ожидая сети IBM, связывает микросхемы с AppleBus», InfoWorld, 26 марта 1984 г., стр. 45–46.
  12. ^ Оппенгеймер 2004, Слайд 15.
  13. ^ Оппенгеймер 2004, Слайд 19.
  14. ^ Оппенгеймер 2004, Слайд 17.
  15. ^ Ли Ларсон, "LocalTalk к EtherTalk?", Louisville Computer News, Октябрь 1999 г.
  16. ^ "Apple Computer Ad - сеть Powerbook"
  17. ^ Оппенгеймер 2004, Слайд 28.
  18. ^ Тим Браун, «AppleTalk стал быстрее», Сетевой мир, 26 октября 1987 г., стр. 27
  19. ^ Джон Баттель, "Корабль ускорителей DaynaTalk", MacWEEK, 23 мая 1989 г.
  20. ^ "Получите больше работы от вашей сети", InfoWorld, 11 декабря 1989 г.
  21. ^ Оппенгеймер 2004, Слайд 31.
  22. ^ Оппенгеймер 2004, Слайд 30.
  23. ^ Оппенгеймер 2004, Слайд 32.
  24. ^ Лаура ДиДио, «Исследование показало, что предпочтительной ОС является NetWare», Сетевой мир, 11 июля 1988 г., стр. 17.
  25. ^ Оппенгеймер 2004, Слайд 34.
  26. ^ а б Оппенгеймер 2004, Слайд 36.
  27. ^ Оппенгеймер 2004, Слайд 43.
  28. ^ Калор, Майкл. "22 апреля 1993 г ​​.: браузер Mosaic освещает Интернет цветом и творчеством". ПРОВОДНОЙ. Получено 14 октября 2017.
  29. ^ Оппенгеймер 2004, Слайд 46.
  30. ^ Оппенгеймер 2004, Слайд 51.
  31. ^ Оппенгеймер 2004, Слайд 54.
  32. ^ «Mac OS X v10.6: Mac 101 - Печать». Проверено 2 сентября 2009 г.
  33. ^ Сидху, Эндрюс и Оппенгеймер 1989.
  34. ^ Сидху, Эндрюс и Оппенгеймер 1989, п. 12-19.
  35. ^ Мария Петроски, "AppleShare наконец-то выходит в эфир", Сетевой мир, 2 февраля 1987 г., стр. 4
  36. ^ «Apple начинает поставки программного обеспечения AppleShare для ПК», InfoWorld, 18 января 1988 г., стр. 29
  37. ^ Марк Стивенс, «Телеконнекторы TOPS связывают ПК с собственными сетями Flashtalk», InfoWorld, 25 января 1988 г., стр. 12

Библиография