UUCP

редактировать
UUCP
Автор (ы) Майк Леск
Разработчик (и) ATT Bell Laboratories
Первый выпуск1979 г.; 41 год назад (1979)
Операционная система Unix и Unix-подобная, DOS, OS / 2, OpenVMS, AmigaOS, classic Mac OS, CP / M
Тип Команда

UUCP - это аббревиатура из Копирование из Unix в Unix . Этот термин обычно относится к набору компьютерных программ и протоколов, позволяющих удаленно выполнять команды и передавать файлы, электронную почту и <32.>netnews между компьютерами.

Команда с именем uucpявляется одной из программ в комплекте; он предоставляет пользовательский интерфейс для запроса операций копирования файлов. Набор UUCP также включает uux(пользовательский интерфейс для удаленного выполнения команд), uucico(коммуникационная программа, которая выполняет передачу файлов), uustat(сообщает статистику по недавняя активность), uuxqt(выполнение команд, отправленных с удаленных машин) и uuname(сообщает имя UUCP локальной системы). Некоторые версии пакета включают uuencode /uudecode(преобразование 8-битных двоичных файлов в 7-битный текстовый формат и наоборот).

Хотя UUCP был первоначально разработан для Unix в 1970-х и 1980-х годах и наиболее тесно связан с Unix-подобными системами, реализации UUCP существуют для нескольких не-Unix -подобные операционные системы, включая DOS, OS / 2, OpenVMS (только для оборудования VAX), AmigaOS, classic Mac OS и даже CP / M.

Содержание

  • 1 Технология
    • 1.1 Сеансы
      • 1.1.1 Первоначальное установление связи
      • 1.1.2 Запросы файлов
      • 1.1.3 Окончательное рукопожатие
    • 1.2 g-protocol
    • 1.3 Другие протоколы
  • 2 История
  • 3 Маршрутизация почты
    • 3.1 Путь взлома
  • 4 UUCPNET и отображение
  • 5 Соединения с Интернетом
  • 6 Удаленные команды
  • 7 Отклонить
  • 8 Последние использования и устаревшие
  • 9 См. Также
  • 10 Ссылки
  • 11 Внешние ссылки

Технология

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

Со временем коммутируемые ссылки были заменены подключениями к Интернету, а UUCP добавил ряд новых протоколов канального уровня. Эти новые соединения также снизили потребность в UUCP вообще, так как новые протоколы приложений были разработаны для использования преимуществ новых сетей. Сегодня UUCP редко используется по коммутируемым каналам, но иногда используется по TCP / IP. Количество задействованных систем на начало 2006 года составляло от 1500 до 2000 сайтов на 60 предприятиях. Долговечность UUCP можно объяснить его низкой стоимостью, обширным протоколированием, встроенным аварийным переключением для коммутируемого доступа и постоянным управлением очередью.

Сеансы

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

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

  1. Первоначальное рукопожатие
  2. Файловый запрос (ы)
  3. Окончательное рукопожатие

Начальное рукопожатие

При запуске uucico ответит отправкой строка идентификации, \ 20Shere = hostname \ 0, где \ 20 - это управляющий символ P, а \ 0 - конечный ноль. UUCP вызывающего абонента отвечает \ 20Shostname options \ 0, где options - это строка, содержащая ноль или более Unix-подобных переключателей. Сюда могут входить размеры пакетов и окон, максимальный поддерживаемый размер файла, параметры отладки и другие.

В зависимости от настроек двух систем звонок может здесь закончиться. Например, когда вызывающий абонент отвечает своим системным именем, вызываемая система может опционально повесить трубку, если она не распознает вызывающего абонента, отправив строку ответа RYou are unknown to me \ 0и затем отключится.

Запросы файлов

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

Sвызывает отправку файла от вызывающего абонента в вызываемую систему (загрузка). Предоставляются имена от и до, позволяющие изменять имя файла на приемнике. Когда вызываемая система получает команду S, она отвечает SY, если она прошла успешно и готова принять файл, или SNx, если она не удалась, где x - причина сбоя. Если вызывающий абонент получает SY, он начинает загрузку файла с использованием протокола, выбранного во время первоначального рукопожатия (см. Ниже). Когда передача завершена, вызываемая система отвечает CY, если она успешно получила файл, или CN5, если это не удалось.
R- это запрос для вызываемой системы на отправку файла вызывающей стороне (загрузка). В остальном он похож на S, с использованием RY и RN, чтобы указать, что команда была принята, и она начнет отправлять данные или возникла проблема, и ожидает CY и CN5 от вызывающего абонента в конце передачи.
Xзагружает команды для исполнения в вызываемой системе. Это можно использовать, чтобы заставить эту систему вызывать другую и доставлять ей файлы. Вызываемая система отвечает XY, если это удалось, или XN, если это не удалось.
Hдля Hangup означает, что вызывающий завершил работу. Вызываемая система отвечает HY в случае успеха или HN в случае неудачи.

Окончательное рукопожатие

После отправки команды H вызывающая система отправляет последний пакет \ 20OOOOOO \ 0(control-P, шесть омов, нулевой символ конца), и вызываемая система отвечает \ 20OOOOOO \ 0(control-P, семь омов, нулевой символ конца). Некоторые системы просто повесят трубку при успешном приеме команды H и не будут беспокоиться о последнем рукопожатии.

g-protocol

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

Формат пакета состоял из 6-байтового заголовка, а затем от нуля до 4096 байтов в полезной нагрузке. Пакет начинается с одиночного \ 020 (control-P). За ним следует один байт, известный как «K», содержащий значение от 1 до 8, указывающее размер пакета от 32 до 4096 байтов, или 9, указывающее пакет управления. Многие системы поддерживают только K = 2, что означает 64 байта. Следующие два байта представляли собой 16-битную контрольную сумму полезной нагрузки, не включая заголовок. Следующий байт - это тип данных и, наконец, последний байт - это XOR заголовка, позволяющий проверять его отдельно от полезной нагрузки.

Управляющий байт состоит из трех битовых полей в формате TTXXXYYY. TT - это тип пакета, 0 для пакетов управления (что также требует, чтобы K = 9 было действительным), 1 для альтернативных данных (не используется в UUCP), 2 для данных и 3 указывает на короткий пакет, который заново определяет значение K. В пакете данных XXX - это номер этого пакета от 0 до 7, а YYY - это последний правильно полученный пакет. Это обеспечивает до 8 пакетов в окне. В пакете управления XXX указывает команду, а YYY используется для различных параметров. Например, передача начинается с отправки короткого контрольного пакета с TT = 0 (контроль), XXX = 7 и YYY, количество пакетов в окне, затем отправки другого пакета с XXX = 6 и YYY в качестве длины пакета (закодированного как это будет в K), а затем третий пакет, который идентичен первому, но XXX = 5.

g-протокол использует простую систему скользящего окна для обработки потенциально больших задержек между конечные точки. Протокол позволяет пакетам иметь размер от 64 до 4096 8-битных байтов и окнам, которые включают от 1 до 7 пакетов. Теоретически система, использующая 4k пакетов и 7 окон пакетов (4096x7), предложит соответствие производительности или превзойдет лучшие протоколы передачи файлов, такие как ZMODEM. На практике многие реализации поддерживали только одну настройку 64x3. В результате g-протокол имеет незаслуженную репутацию из-за низкой производительности. Путаница с размерами пакетов и окон привела к G-протоколу, отличавшемуся только тем, что он всегда использовал 4096x3. Taylor UUCP не поддерживал G, но поддерживал любое допустимое запрошенное окно или размер пакета, поэтому удаленные системы, запускающие G, будут нормально работать с G Тейлора, в то время как две системы Taylor могут согласовывать даже более быстрые соединения.

Использовались модемы Telebit спуфинг протокола для повышения производительности передачи по протоколу g путем обнаружения маркеров конца пакета, отправляемых в удаленную систему, и немедленной отправки ACKобратно на локальный хост, делая вид, что удаленная система уже получила пакет и правильно его декодировала. Это заставило программный стек отправить следующий пакет так быстро, что передача стала почти непрерывной. Данные между двумя модемами были исправлены с использованием проприетарного протокола на основе MNP, который работал через полудуплексные соединения Telebit намного лучше, чем обычно это делал бы протокол g, потому что в обычном случае 64x3 удаленная система будет будет посылать постоянный поток ACKs, который переполняет низкоскоростной обратный канал. В сочетании с естественно более высокой скоростью передачи данных модема они значительно улучшили общую пропускную способность и, как правило, работали примерно в семь раз быстрее, чем модем со скоростью 2400 бит / с. Они широко использовались на хостах UUCP, так как могли быстро окупиться за счет снижения платы за междугороднюю связь.

Другие протоколы

Реализации UUCP также включают другие протоколы передачи для использования по определенным каналам.

f-протокол предназначен для работы по 7-битным каналам с исправленными ошибками. Первоначально это было предназначено для использования в ссылках X.25, которые какое-то время были популярны в 1980-х годах. Он не упаковывает данные, вместо этого весь файл отправляется как одна длинная строка, за которой следует контрольная сумма всего файла. Подобный x-протокол, похоже, практически не нашел применения. d-протокол был похож на x, но предназначался для использования в устаревшей сети DataKit.

t-протокол возник в версиях UUCP BSD и предназначен для обработки 8-битных ошибок -бесплатные ссылки TCP / IP. В нем вообще нет исправления ошибок, и протокол состоит просто из разбиения данных команд и файлов на пакеты размером 512 или 1024 байта, чтобы легко уместить их в типичные кадры TCP. Менее используемый электронный протокол, который возник в версиях HoneyDanBer, в отличие от t из BSD, отличается только тем, что команды не упаковываются в пакеты и вместо этого отправляются как обычные строки, а файлы дополняются до ближайших 20 байт.

История

UUCP был первоначально написан в ATT Bell Laboratories Майком Леском. К 1978 году он использовался на 82 машинах UNIX внутри системы Bell, в основном для распространения программного обеспечения. Он был выпущен в 1979 году как часть версии 7 Unix. Первоначальный UUCP был переписан исследователями ATT Питером Ханиманом, Дэвидом А. Новицем и Брайаном Э. Редманом около 1983 года. Переписанный код упоминается как HDB или HoneyDanBer uucp, который позже был улучшен, исправлены ошибки и переупакован как BNU UUCP («Базовые сетевые утилиты»).

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

UUCP был также реализован для операционных систем, отличных от UNIX, в первую очередь для систем DOS. Такие пакеты, как UUSLAVE / GNUUCP (Джон Гилмор, Гарри Паксинос, Тим Позар), UUPC (Дрю Дербишир) и FSUUCP (Кристофер Амблер из IODesign), обеспечивали раннее подключение к Интернету персональных компьютеров, расширяя сеть за пределы взаимосвязанных университетских систем. FSUUCP послужил основой для многих пакетов системы доски объявлений (BBS), таких как Major BBS от Galacticomm и Wildcat! От Mustang Software ! BBS для подключения к сети UUCP и обмена электронной почтой и Usenet трафиком. Например, UFGATE (Джон Гэлвин, Гарри Паксинос, Тим Позар) был пакетом, который обеспечивал шлюз между сетями, использующими протоколы Fidonet и UUCP.

FSUUCP был единственной другой реализацией расширенного протокола «i» Тейлора, значительного улучшения по сравнению со стандартным протоколом «g», используемым в большинстве реализаций UUCP.

Маршрутизация почты

Визитная карточка с Адрес электронной почты UUCP

Возможности uucpи uuxqtмогут использоваться для отправки электронной почты между машинами с помощью подходящих почтовых пользовательских интерфейсов и программ агента доставки. Простой почтовый адрес UUCP был сформирован из имени соседней машины, восклицательного знака (часто произносится как бэнг), за которым следует имя пользователя на соседней машине. Например, пользователь в адресной строке! Будет ссылаться на пользователя-пользователя на соседнем компьютере.

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

Пользователь barbox! Пользователь обычно публикует свой адрес электронной почты UUCP в такой форме, как…! Bigsite! Foovax! Barbox! User. Это побуждает людей направлять свою почту на машину bigsite (предположительно, хорошо известную и доступную для всех машину с хорошим подключением), а оттуда через машину foovax на учетную запись пользователя на barbox. Публиковать полный путь было бы бессмысленно, потому что он был бы другим в зависимости от того, где находится отправитель. (например, Энн с одного сайта, возможно, придется отправить по пути gway! tcol! canty! uoh! bigsite! foovax! barbox! user, тогда как откуда-то Билл должен отправить по пути pdp10! router22! bigsite! foovax! barbox! пользователь). Многие пользователи будут предлагать несколько маршрутов с разных крупных известных сайтов, обеспечивая даже лучшее и, возможно, более быстрое соединение с отправителем почты.

Путь взлома

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

«Псевдодомен», заканчивающийся .uucp, иногда использовался для обозначения имени хоста как доступного для сети UUCP, хотя это никогда не было официально зарегистрировано в система доменных имен (DNS) как домен верхнего уровня. Сообщество uucp самоуправлялось и не соответствовало методам и правилам администрирования, регулирующим DNS;.uucp работает там, где нужно; некоторые хосты отправляют почту из очереди SMTP в очереди uucp на машинах шлюза, если адрес.uucp распознается при входящем SMTP-соединении.

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

В общем, как и другие старые форматы адресов электронной почты, пути вызова теперь заменены «@ notation », даже на сайтах, все еще использующих UUCP. Сайт, работающий только с UUCP, может зарегистрировать доменное имя DNS, и DNS-сервер, который обрабатывает этот домен, предоставляет записи MX, которые вызывают доставку интернет-почты на этот сайт на хост UUCP в Интернете, который затем может доставить почту на сайт UUCP.

UUCPNET и отображение

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

Проект UUCP Mapping Project был добровольной и в значительной степени успешной попыткой построить карту соединений между машинами, которые были открыты почтовые ретрансляторы и установили управляемое пространство имен. Каждый системный администратор должен был отправить по электронной почте список систем, к которым они будут подключаться, вместе с рейтингом для каждого такого подключения. Эти отправленные записи карты были обработаны автоматической программой, которая объединила их в единый набор файлов, описывающих все соединения в сети. Затем эти файлы ежемесячно публиковались в группе новостей , посвященной этой цели. Файлы карты UUCP могут затем использоваться программным обеспечением, таким как "pathalias", для вычисления наилучшего маршрута от одного компьютера к другому для почты и для автоматического предоставления этого маршрута. На картах UUCP также была указана контактная информация для сайтов, что давало сайтам, желающим присоединиться к UUCPNET, простой способ найти потенциальных соседей.

Соединения с Интернетом

Многие хосты UUCP, особенно в университетах, также были подключены к Интернету в первые годы своего существования и к шлюзам электронной почты между Интернетом Были разработаны почта на основе SMTP и почта UUCP. Таким образом, пользователь системы с подключениями UUCP может обмениваться почтой с пользователями Интернета, а ссылки в Интернете могут использоваться для обхода больших участков медленной сети UUCP. «Зона UUCP» была определена в пространстве имен домена Интернета для облегчения этих интерфейсов.

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

Удаленные команды

uux - удаленное выполнение команд через UUCP. Команда uux используется для выполнения команды в удаленной системе или для выполнения команды в локальной системе с использованием файлов из удаленных систем. Команда запускается демоном uucico, который обрабатывает запросы удаленного выполнения как просто другой вид файла для пакетной отправки в удаленную систему всякий раз, когда доступен узел следующего перехода. Затем удаленная система выполнит запрошенную команду и вернет результат, когда исходная система будет доступна. Обе эти передачи могут быть косвенными, через многоэлементные пути, с произвольными окнами доступности. Даже при выполнении команды на всегда доступном соседе uux не выполняется мгновенно.

Упадок

Использование UUCP начало исчезать с ростом интернет-провайдеров, предлагающих недорогие услуги SLIP и PPP.. Проект сопоставления UUCP был официально закрыт в конце 2000 года.

Протокол UUCP в настоящее время в основном заменен протоколами на основе Internet TCP / IP SMTP для почты и NNTP для новостей Usenet.

В июле 2012 года голландский интернет-провайдер XS4ALL закрыл свою службу UUCP, заявив, что он «вероятно был одним из последних провайдеров в мире, которые все еще предлагали ее»; в то время у него было всего 13 пользователей (однако до закрытия он отказывался от запросов от новых пользователей в течение нескольких лет).

Последнее использование и устаревшее

Одна из сохранившихся функций UUCP - это формат файла чата, в значительной степени унаследованный программным пакетом Expect.

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

В середине 2000-х годов UUCP поверх TCP / IP (часто зашифрованный, с использованием протокола SSH ) был предложен для использования, когда компьютер не имеет фиксированных IP-адресов, но все еще готов выполнять стандартную пересылку почты. агент (MTA), например, Sendmail или Postfix.

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

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

См. Также

Ссылки

Внешние ссылки

Последняя правка сделана 2021-06-20 08:54:03
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте