BSO
BSO (от англ. Binkley Style Outbound) — формат почтового ящика сети Фидонет, наиболее популярный в настоящее время.
Возможности и ограничения[править | править код]
- С точки зрения фидонетовской адресации BSO следует рассматривать как формат, не поддерживающий указание домена, зато всегда поддерживающий указание номера зоны и пойнта. Это обстоятельство либо ограничивает использование BSO только теми станциями FTN, которые имеют адрес только в одном домене FTN, либо принуждает давать левонетам отдельные номера зон.
- Формат BSO (в отличие, например, от ASO или Long BSO) способен действовать в файловых системах с жёстким ограничением «8.3» на длину имени и расширения файла (например, FAT12 и FAT16), а не только в современных системах с длинными именами файлов (например, VFAT, HPFS, NTFS, Ext2 и др.).
- Согласно формату BSO файлы, предназначенные на отправку разным линкам, иногда располагаются в различных каталогах (или подкаталогах). Это обстоятельство может сокращать задержки при сканировании исходящих бандлов на узле с большим количеством линков.
Описание формата[править | править код]
Каталоги зон[править | править код]
Почта для каждой из зон Фидонета хранится в отдельном каталоге. В зависимости от того, к какой зоне принадлежит та фидонетовская система (то есть узел или пойнт), на которой настроен BSO, один из каталогов становится основным; имя этого каталога указывается в настройках системы, а имена каталогов с почтою для других зон получаются добавлением расширения, содержащего шестнадцатиричный номер зоны.
Например, если фидонетовский адрес системы — «2:5020/1234», а в настройках имя каталога с исходящей почтою указано как /ftn/outbound, то возможные имена каталогов таковы:
/ftn/outbound— для почты к узлам из зоны 2;
/ftn/outbound.001— для почты к узлам из зоны 1;
/ftn/outbound.003— для почты к узлам из зоны 3;
/ftn/outbound.0c5— для почты к узлам из зоны 197 (пример левонета).
В настройках некоторых программ (например, binkd) основная зона задаётся в явном виде, а не зависит от адреса системы.
Имена файлов и подкаталогов[править | править код]
Каждый такой каталог содержит файлы, предназначенные для отправки к линкам-узлам.
Имена файлов формируются из адреса назначения по шаблону nnnnffff.ext, где:
nnnn— шестнадцатиричный номер сети,ffff— шестнадцатиричный номер узла (ноды),ext— тип файла.
Почта, предназначенная для пойнтов, раскладывается в дополнительные подкаталоги (по одному каталогу на узел), так что имена её файлов формируются из адреса назначения по шаблону nnnnffff.pnt/pppppppp.ext, где:
nnnn— шестнадцатиричный номер сети,ffff— шестнадцатиричный номер узла (ноды),.pnt— буквально строка символов «.pnt»,pppppppp— шестнадцатиричный номер пойнта,ext— тип файла.
Типы файлов[править | править код]
Тип файла (ext) может принимать следующие значения:
hlo— FLO-файл (список бандлов) приоритета «hold»;flo— FLO-файл (список бандлов) приоритета «normal»;dlo— FLO-файл (список бандлов) приоритета «direct»;clo— FLO-файл (список бандлов) приоритета «crash»;ilo— FLO-файл (список бандлов) приоритета «immediate»;
hut— нетмейловый пакет (PKT) приоритета «hold»;out— нетмейловый пакет (PKT) приоритета «normal»;dut— нетмейловый пакет (PKT) приоритета «direct»;cut— нетмейловый пакет (PKT) приоритета «crash»;iut— нетмейловый пакет (PKT) приоритета «immediate»;
bsy— файл-флаг «линк занят» (обозначает, что в этот момент установлен сеанс связи с линком).
Кроме того, некоторые мейлеры (например, binkd) используют дополнительно собственные типы файлов аутбаунда:
csy— файл-флаг «звонок»; обозначает, что в этот момент иницируется сеанс связи с линком (используется во многих мейлерах);stc— файл с информацией о статусе соединения (используется в binkd);hld— файл-индикатор приостановки попыток соединения с линком.
Примеры[править | править код]
- Неупакованный нетмейл на узел
2:5063/88с приоритетом «crash» будет лежать в файле13C70058.cut, где «13C7» и «0058» — шестнадцатиричные «5063» и «88» соответственно.
- Список бандлов на пойнт
2:5020/1519.249с приоритетом «hold» будет лежать в файле139C05EF.pnt/000000F9.hlo, где «139C», «05EF» и «000000F9» — шестнадцатиричные «5020», «1519» и «249» соответственно.
