64 килобайта о Фидо
Шрифт:
Различают статический и динамический роутинг. Статический роутинг как правило осуществляется эхопроцессором, и присущ системам на базе BinkleyStyle мейлера. Определяется специальная схема событий, т.е. набор интервалов времени, во течение которых действует определенная схема роутинга. Если эхопроцессор был вызван во время действия одного события и маршрутизировал письмо, то при повторном вызове во время другого события уже обработанные письма не будут перенаправлены в соответствии с новой схемой.
Динамический роутинг осуществляется исключительно ArcMail-Attach системами. При этом в зависимости от текущего
Заметим, что для отправки нетмайла напрямую (директом, direct) адресату в сети существует так называемый зоновый почтовый час (Zone Mail Hour, ZMH). В этот период все *узлы* сети обязаны :
— отвечать на звонки
— остановить передачу файлов, ArcMail-пакетов
— закрыть доступ к BBS
— запретить файл-реквесты
— передавать и принимать только непакованный нетмайл.
Поинты сети не обязаны соблюдать ZMH. В Москве, помимо ZMH действует еще и MMH (Moscow Mail Hour), начинающийся сразу следом за ZMH. Таким образом с 5:30 до 7:30 утра по Московскому времени все узлы сети принимают и передают только нетмайл.
Для эхопочты понятие роутинга не определено, поскольку письмо в эхо не содержит сетевого адреса станции получателя. Таким образом ArcMail-пакет всегда передается на узел, от которого получена соответствующая конференция, при помощи прямой связи.
ArcMail-Attach мейлеры.
Как правило, основой функционирования любого ArcMail-Attach мейлера является каталог, содержащий письма сетевой почты (т.н. NetMail folder). В большинстве случаев каждое письмо хранится в отдельном файле, имеющем расширение .MSG. В таком случае принято говорить, что имеется область сетевой почты в *.MSG стиле (*.MSG-style netmail area).
В этом каталоге (дальше я буду употреблять жаргонное слово «фолдер») находятся письма, адресованные данному узлу, и письма, написанные на этом узле. Транзитные письма, проходящие через узел, в этом каталоге не размещаются. Мейлер осуществляет ресканирование фолдера с определенными промежутками времени в поиске новых сообщений, либо проделывает это при появлении соответствующего флага (пустого файла со специфическим именем типа REPACK.T-M или FDRESCAN.NOW в специальном каталоге флагов).
Обнаружив в фолдере письмо, ArcMail-Attach мейлер преобразует его в почтовый пакет (имеющий расширение .PKT) и переносит этот пакет в специальный каталог пакетов, называемый аутбаундом. Hеобходимость в таком преобразовании обьясняется тем, что письма, за редким исключением, не передаются напрямую адресату, а проходят по цепочке из нескольких станций. При этом каждая станция сама определяет на основании плана маршрутизации сетевой почты (netmail routing scheme) на какой узел следует передавать письма для указанного в заголовке письма адресата.
Поскольку заголовки писем не могут модифицироваться (будет потеряна информация об адресе истинного получателя), письма преобразуются в пакеты, в заголовке которых указан адрес отправителя пакета (не совпадающий в общем случае с адресом автора письма) и адрес получателя пакета (также не равный в общем случае адресу получателя). Hапример, если почта от 157.49 предается на 54.46 таким образом :
/157.49 —> /157.0 —> /1.0 —> /54.0 —> /54.46
то на этапе (/1 —> /54) пакет будет адресован от /1 для /54, хотя фактический отправитель и получатель имеют другие адреса.
Пакет может содержать несколько писем, общей особенностью которых является их текущая маршрутизация. Hа следующем узле будет действовать уже другой план роутинга, и письма могут быть упакованы в разные пакеты.
Помимо обычных писем, аркмейл-аттач мейлеры способны понимать также некоторые спициальные письма — так называемые файл-аттачи (fileattach) или просто «аттачи». Файл-аттач представляет собой обычное письмо, имеющее особый атрибут (F/a — File/Attach) и содержащее в поле темы имя передаваемого файла.
При обнаружении такого письма мейлер ищет соответствующий файл по указанному в поле темы пути и имени, и, обнаружив его, упаковывает письмо в почтовый пакет. При передаче этого письма будет передан также и файл, который данное письмо описывало. При этом считается, что файл прикреплен (приаттачен, Attached) к письму.
Помимо обычных аттачей, мейлеры класса ArcMail-Attach имеют особый вид аттачей — ArcMail-Attach письма. Эти письма создает эхопроцессор при создании ArcMail-пакета для заданного адреса. Такое письмо отличается от обычного аттача тем, что написано от «магического» имени робота «ArcMail». При нахождении письма от этого робота мейлер не создает .PKT файла, и передает при установлении соединения только сам файл с ArcMail-пакетом.
Binkley-style мейлеры.
Для мейлера типа BinkleyTerm одним из основных отличий от ArcMail-Attach является тот факт, что такой мейлер никоим образом не работает с письмами. Таким образом, вместо NetMail-фолдера в Binkley-style мейлерах используется понятие аутбаунда (outbound). Для каждой из зон, в которые станция отправляет письма и файлы, создается специальный каталог (аутбаунд).
Для каждого адреса, на который должна быть отправлена почта создаются особые файлы с уникальным именем (шестнадцатиричная запись 3D-адреса узла) и расширением .?LO, задающие флавор (атрибут, flavour) для данного адреса, а также содержащие указания мейлеру на передачу тех или иных файлов в виде путей. Первая буква расширения задает флавор. Для нетмайла создается аналог файла .PKT — ?UT. Все эти манипуляции осуществляются не мейлером, а отдельной утилитой, либо эхопроцессором.
При посылке почты мейлер типа BinkleyTerm передает соответствующий файл с неупакованной сетевой почтой (.?UT), в виде файла .PKT, образовав имя .PKT файла непосредственно в момент начала передачи. Таким образом, при обрывах связи с последующим перезвоном .PKT файлы имеют уже другие имена, а следовательно принимаются не с места обрыва, а заново.
Поскольку в восьмисимвольном поле имени файла DOS невозможно разместить 4D-адрес в шестнадцатиричной форме, для адресов назначения, являющихся поинтами создаются отдельные подкаталоги аутбаунда. Такие подкаталоги имеют шестнадцатиричные имена соответствующие адресу босс-ноды (т.е. 3D-адресу) и содержат файлы .?UT и .?LO с шестнадцатиричным номером поинта.