Xerox Network Systems - Википедия - Xerox Network Systems

XNS
Стек протоколов
ЦельLAN
Разработчики)Ксерокс
Введено1977; 43 года назад (1977)
Под влиянием3 + Поделиться, Сеть / Один, IPX / SPX, ВИНА
Аппаратное обеспечениеEthernet

Сетевые системы Xerox (XNS) это компьютерная сеть набор протоколов разработан Ксерокс в пределах Архитектура сетевых систем Xerox. Обеспечивает сетевые коммуникации общего назначения, межсетевые маршрутизация и доставка пакетов, а также функции более высокого уровня, такие как надежный поток, и вызовы удаленных процедур. XNS предшествовал и повлиял на развитие Взаимодействие открытых систем (OSI) сетевая модель и оказала большое влияние на локальная сеть конструкции в течение 1980-х годов. Это мало повлияло на TCP / IP, однако, который был разработан ранее.

XNS был разработан отделом разработки систем Xerox в начале 1980-х годов, которому было поручено обеспечить Xerox Parc Исследование рынка. XNS был основан на более раннем (и столь же влиятельном) Универсальный пакет PARC (PUP) сюита конца 1970-х годов. Некоторые протоколы в наборе XNS были слегка модифицированными версиями протоколов в пакете Pup. В XNS добавлена ​​концепция номера сети, позволяющая создавать более крупные сети из нескольких более мелких, с маршрутизаторами, контролирующими поток информации между сетями.

Спецификации набора протоколов для XNS были помещены в всеобщее достояние в 1977 г. Это помогло XNS стать каноническим локальная сеть протокол, в той или иной степени скопированный практически всеми сетевыми системами, использовавшимися до 1990-х годов. XNS использовался без изменений 3Com с 3 + Поделиться и Унгерманн-Басс Net / One. Он также использовался, с изменениями, в качестве основы для Novell NetWare, и Banyan VINES. XNS был использован в качестве основы для AppleNet система, но она никогда не была коммерциализирована; при замене AppleNet использовался ряд решений распространенных проблем XNS, AppleTalk.

Описание

Общий дизайн

По сравнению с Модель OSI 7 слоев, XNS - пятиуровневая система,[1] как позже Набор интернет-протоколов.

Физический уровень и уровень канала передачи данных модели OSI соответствуют физическому уровню (уровень 0) в XNS, который был разработан для использования транспортного механизма нижележащего оборудования и не разделял канал данных. В частности, физический уровень XNS действительно Ethernet локальная сеть Система, также разрабатываемая Xerox одновременно, и ряд ее дизайнерских решений отражают этот факт.[1] Система была разработана, чтобы позволить замену Ethernet какой-либо другой системой, но это не было определено протоколом (да и не должно было быть).

Основная часть XNS - это определение внутреннего транспортного уровня (уровень 1), который соответствует сетевому уровню OSI, и именно здесь определяется основной протокол межсетевого взаимодействия, IDP. XNS объединил сессионный и транспортный уровни OSI в единый уровень межпроцессного взаимодействия (уровень 2). Уровень 3 был управлением ресурсами, подобным представлению OSI.[1][2]

Наконец, поверх обеих моделей находится уровень приложений, хотя эти уровни не были определены в стандарте XNS.[1]

Базовый межсетевой протокол

Главный объединенная сеть слой протокол это Протокол Интернет-датаграмм (IDP). IDP является близким потомком Щенка межсетевой протокол, и примерно соответствует протокол Интернета (IP) уровень в наборе Интернет-протоколов.[1]

IDP использует 48-битный адрес Ethernet в качестве основы для собственных сетевая адресация, обычно с помощью машины MAC-адрес как основной уникальный идентификатор. К этому добавлен еще один 48-битный адресный раздел, предоставляемый сетевым оборудованием; 32 бита предоставляются маршрутизаторы для идентификации номера сети в объединенной сети, а еще 16 битов определяют номер сокета для выбора службы в пределах одного хоста. Часть адреса, содержащая номер сети, также включает специальное значение, означающее «эту сеть», для использования хостами, которые (пока) не знают свой сетевой номер.[2]

В отличие от TCP / IP, номера сокетов являются частью полного сетевого адреса в заголовке IDP, поэтому протоколам верхнего уровня не требуется реализовывать демультиплексирование; IDP также предоставляет типы пакетов (опять же, в отличие от IP). IDP также содержит контрольную сумму, покрывающую весь пакет, но это необязательно, а не обязательно. Это отражает тот факт, что локальные сети обычно имеют низкий уровень ошибок, поэтому XNS удалил коррекцию ошибок из протоколов нижнего уровня, чтобы повысить производительность. Исправление ошибок может быть дополнительно добавлено на более высоких уровнях стека протоколов, например, в собственном протоколе SPP XNS. Из-за этой примечания к конструкции XNS считался более быстрым, чем IP.[1]

В соответствии с подключениями к локальной сети с малой задержкой, в которых он работает, XNS использует небольшой размер пакета, что улучшает производительность в случае низкой частоты ошибок и короткого времени обработки. Пакеты IDP имеют длину до 576 байт, включая 30-байтовый IDP. заголовок.[2] Для сравнения, IP требует, чтобы все хосты поддерживали на наименее 576, но поддерживает пакеты размером до 65 Кбайт. Отдельные пары хостов XNS в конкретной сети могут использовать пакеты большего размера, но для их обработки не требуется маршрутизатор XNS, и не определен механизм для определения того, поддерживают ли промежуточные маршрутизаторы пакеты большего размера. Кроме того, пакеты нельзя фрагментировать, как в IP.

В Протокол маршрутной информации (RIP), потомок Pup Информационный протокол шлюза, используется в качестве системы обмена информацией маршрутизатора и (с небольшими изменениями для соответствия синтаксису адресов других наборов протоколов) по-прежнему используется сегодня в других наборах протоколов, таких как набор протоколов Интернет.[2]

XNS также реализует простой протокол эха на межсетевом уровне, аналогичный IP. пинг, но работает на более низком уровне в сетевом стеке. Вместо добавления данных ICMP в качестве полезной нагрузки в IP-пакет, как в ping, эхо XNS помещало команду непосредственно в базовый пакет IDP.[2] То же самое можно было бы достичь в IP, расширив ICMP. Протокол поле заголовка IP.

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

Существует два основных протокола транспортного уровня, которые сильно отличаются от своих предшественников Pup:

  • Последовательный пакетный протокол (SPP) - это подтвержденный транспортный протокол, аналогичный TCP; одно главное техническое отличие состоит в том, что порядковые номера подсчитывают пакеты, а не байты, как в TCP и BSP PUP; это прямой предшественник Novell IPX / SPX.
  • Протокол обмена пакетами (PEP) - ненадежный протокол без установления соединения, аналогичный по своей природе UDP и предшествующий Novell PXP.

XNS, как и Pup, также использует EP, то Протокол ошибок, как система отчетов о таких проблемах, как потерянные пакеты. Это обеспечило уникальный набор пакетов, которые можно отфильтровать для поиска проблем.[2]

Протоколы приложений

Курьерский RPC

В исходной концепции Xerox такие прикладные протоколы, как удаленная печать, архивирование, рассылка и т. Д., Использовали удаленный вызов процедур протокол назван Курьер. Courier содержал примитивы для реализации большинства функций Xerox. Язык программирования Mesa вызовы функций. Приложениям приходилось вручную сериализовать и десериализовать вызовы функций в Courier; не было автоматического средства преобразования кадра активации функции в RPC (т.е. не было "компилятора RPC"). Поскольку Courier использовался всеми приложениями, в документах протокола приложения XNS указаны только интерфейсы вызова функций курьера и кортежи привязки модуля + функции. В Courier было специальное средство, позволяющее вызову функции отправлять или получать массовые данные.[2]

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

Из-за тесной интеграции с Mesa в качестве базовой технологии многие из традиционных протоколов более высокого уровня не были частью самой системы XNS. Это означало, что все поставщики, использующие протоколы XNS, создали свои собственные решения для обмен файлами и принтер поддерживать. Хотя многие из этих сторонних продуктов теоретически могли взаимодействовать друг с другом на уровне пакетов, возможности вызова сервисов приложений друг друга были ограничены или отсутствовали. Это привело к полной фрагментации рынка XNS и было названо одной из причин, по которой IP легко вытеснил его.[1]

Аутентификация

Протоколы XNS также включают протокол аутентификации и службу аутентификации для его поддержки. Его «сильная репутация» была основана на том же Протокол Нидхема – Шредера который позже был использован Kerberos. После обращения в службу аутентификации для получения учетных данных этот протокол предоставил облегченный способ цифровой подписи вызовов процедур Courier, чтобы получатели могли проверять подпись и аутентифицировать отправителей через Интернет XNS без необходимости повторно связываться со службой аутентификации в течение протокол сеанса связи.[3]

Печать

Язык печати Xerox, Интерпресс, был стандартом в двоичном формате для управления лазерными принтерами. Разработчики этого языка Джон Варнок и Чак Гешке позже покинули Xerox PARC, чтобы начать. Adobe Systems. Перед уходом они осознали сложность задания двоичного языка печати, где функции сериализации задания печати были громоздкими и затрудняли отладку ошибочных заданий печати. Чтобы понять ценность задания как программируемого, так и легко отлаживаемого задания на печать в ASCII, Варнок и Гешке создали язык Postscript в качестве одного из первых продуктов Adobe.

Протоколы удаленной отладки

Поскольку все 8000+ машин в корпоративной интрасети Xerox работали с архитектурой Wildflower (разработанной Батлером Лэмпсоном), для микрокода существовал протокол удаленной отладки. По сути, функция просмотра и нажатия может останавливать и управлять состоянием микрокода машины серии C или D в любом месте на Земле, а затем перезапускать машину.

Также был протокол удаленной отладки для отладчика всемирной подкачки.[4] Этот протокол может с помощью «куска» отладчика заморозить рабочую станцию, а затем просмотреть и вытащить различные части памяти, изменить переменные и продолжить выполнение. Если бы символы отладки были доступны, неисправную машину можно было бы удаленно отлаживать из любой точки Земли.

История

Истоки в Ethernet и ПНП

В его последний год в Гарвардский университет, Боб Меткалф начал интервью в ряде компаний и был тепло встречен Джерри Элкинд и Боб Тейлор в Xerox PARC, которые начали работать на сетевых компьютерных рабочих станциях, которые станут Xerox Alto. Он согласился присоединиться к PARC в июле после защиты диссертации. В 1970 году, когда диванный серфинг в Стив Крокер дома во время посещения конференции, Меткалф взял копию Труды осенней совместной компьютерной конференции со стола с целью заснуть во время чтения. Вместо этого он был очарован статьей о АЛОХАНЕТ, более ранняя глобальная сетевая система. К июню он разработал свои собственные теории сетей и представил их своим профессорам, которые отвергли их, и он был «брошен мне на задницу».[5]

Меткалфа приветствовали в PARC, несмотря на его неудачную диссертацию, и вскоре он начал разработку того, что тогда называлось «ALOHAnet in a wire». Он объединился с Дэвид Боггс чтобы помочь с электронной реализацией, и к концу 1973 года они создали работающее оборудование со скоростью 3 Мбит / с. Затем пара начала работать над простым протоколом, который будет работать в системе. Это привело к развитию Универсальный пакет PARC (Pup), и к концу 1974 года у них был Pup, успешно работающий в сети Ethernet. Они подали патент на концепцию, Меткалф добавил несколько других имен, потому что считал, что они заслуживают упоминания, а затем представил документ о концепции в Коммуникации ACM на "Ethernet: распределенная коммутация пакетов для локальных компьютерных сетей", опубликованный в июле 1976 года.[5]

ЩЕНОК в XNS

К 1975 году, задолго до того, как ПНП была завершена, Меткалф уже раздражался под жестким руководством Xerox. Он считал, что компании следует немедленно запустить Ethernet в производство, но не нашел особого интереса среди высшего руководства. Знаменательное событие произошло, когда профессора из Массачусетский технологический институт знаменитый Лаборатория искусственного интеллекта обратились к Xerox в 1974 году с намерением купить Ethernet для использования в их лаборатории. Руководство Xerox отказалось, полагая, что Ethernet лучше использовать для продажи собственного оборудования. Затем лаборатория искусственного интеллекта продолжит создание собственной версии Ethernet, Хаоснет.[6]

Меткалф в конце концов покинул Xerox в ноябре 1975 года и перешел в Transaction Technology, подразделение Ситибанк поручено продвинуть разработку продукта. Однако семь месяцев спустя его заманили обратно в Xerox. Дэвид Лиддл, который недавно организовал в Xerox подразделение разработки систем специально для вывода на рынок концепций PARC. Меткалф немедленно начал перепроектировать Ethernet для работы на скорости 20 Мбит / с и начал попытки переписать Pup в производственной версии. В поисках помощи по Pup, Меткалф подошел Йогин Далал, который в то время писал диссертацию в Винт Серф в Стэндфордский Университет. Далала также активно нанимали Боб Кан с ARPANET команда (работающая над TCP / IP), но когда Серф ушел, чтобы присоединиться DARPA Далал согласился переехать в PARC и начал работать там в 1977 году.[7]

Далал создал команду, в которую вошли Уильям Краутер и Хэл Мюррей, и начал с полного обзора Pup. Далал также попытался продолжить работу по TCP, проводимую в DARPA, но в конце концов сдался и полностью сосредоточился на Pup. Далал объединил свой опыт работы с ARPANET с концепциями Pup, и к концу 1977 года они опубликовали первый проект спецификации Xerox Network System. По сути, это была версия Pup с добавленной концепцией сокетов и объединенной сети, которая позволяла маршрутизаторам пересылать пакеты по подключенным сетям.[8]

К началу 1978 года новая система работала, но руководство все еще не предпринимало никаких шагов для ее коммерциализации. Как выразился Меткалф:

Когда я вернулся в Xerox в 1976 году, до отгрузки продукции оставалось около двух с половиной лет, а в 1978 году - около двух с половиной лет с момента отгрузки продукции.[7]

Когда никаких дальнейших действий не последовало, Меткалф покинул компанию в конце 1978 года.[7]

Влияние

Последний раз использовался Xerox для связи с DocuTech 135 Publishing System, XNS больше не используется из-за повсеместного распространения IP. Тем не менее, он сыграл важную роль в развитии сетевых технологий в 1980-х годах, заставив поставщиков программного и аппаратного обеспечения серьезно задуматься о необходимости поддержки вычислительных платформ более чем одного стека сетевых протоколов одновременно.

Широкий спектр проприетарных сетевых систем был основан непосредственно на XNS или предлагал незначительные вариации по теме. Среди них были Net / One, 3+,[1] Баньян Вайнс[9] и Novell IPX / SPX.[10] Эти системы добавили свои собственные концепции поверх системы адресации и маршрутизации XNS; VINES добавил справочная служба среди других услуг, а Novell NetWare добавил ряд сервисов, ориентированных на пользователя, таких как печать и обмен файлами. AppleTalk использовал маршрутизацию, подобную XNS, но имел несовместимые адреса с более короткими номерами.

XNS также помог проверить дизайн 4.2BSD сетевая подсистема, предоставляя второй набор протоколов, существенно отличающийся от интернет-протоколов; реализовав оба стека в одном ядре, Исследователи Беркли продемонстрировали, что дизайн подходит не только для IP.[11] В конечном итоге потребовались дополнительные модификации BSD для поддержки всего диапазона Взаимодействие открытых систем (OSI) протоколы.

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

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

Цитаты
  1. ^ а б c d е ж грамм час Стивенс 1989, п. 15.
  2. ^ а б c d е ж грамм час cisco.
  3. ^ «Стандарт системной интеграции Xerox 098404 - Протокол аутентификации» (PDF). Корпорация Xerox. 1984 г.
  4. ^ "Мировые отладчики". 1999-01-25. Получено 2013-07-05.
  5. ^ а б Пелки, 6.7.
  6. ^ Пелки, 6.8.
  7. ^ а б c Пелки, 6.9.
  8. ^ Пелки, 6.10.
  9. ^ Banyan VINES, cisco
  10. ^ Протоколы NetWare, cisco
  11. ^ Ларус, Джеймс (1983). «О выполнении вызовов удаленных процедур Courier в BSD 4.1c» (PDF). Калифорнийский университет в Беркли Департамент ECE. Получено 2013-07-05.
Библиография
  • Марк Стивенс, «Уровень 3 OSI отличает системное ПО», InfoWorld, 6 марта 1989 г., стр. 15.
  • cisco, "Xerox Network Systems", cisco.com
  • Джеймс Пелки, "Предпринимательский капитализм и инновации: история компьютерных коммуникаций 1968-1988",
  • Стандарт системной интеграции Xerox - Транспортные протоколы Интернета (Xerox, Стэмфорд, 1981 г.)
  • Стандарт системной интеграции Xerox - Courier: протокол удаленного вызова процедур (Xerox, Стэмфорд, 1981 г.)
  • Оппен, округ Колумбия, и Далал, Ю.К., Информационная служба: децентрализованный агент для обнаружения именованных объектов в распределенной среде. Пало-Альто: Xerox Corporation, подразделение офисных систем, 1981 Октябрь: технический отчет OSD-T8103.
  • Израиль, Дж. Э., и Линден, Т. А., Аутентификация в звездных и сетевых системах Xerox. Пало-Альто: Xerox Corporation, подразделение офисных систем, 1982 г. Май: технический отчет OSD-T8201.
  • Технологии офисных систем - взгляд в мир продуктов серии Xerox 8000: рабочие станции, услуги, Ethernet и разработка программного обеспечения », (под редакцией Теда Линдена и Эрика Харслема), технический отчет Xerox OSD-R8203, ноябрь 1982 г. Сборник документов 24 документа, описывающих все аспекты Xerox STAR Workstation и сетевых протоколов, большинство из них были репринтами журналов и публикаций конференций.

внешняя ссылка