Кратко

  • RFC 1153 в 1990 году задокументировал формат, которым уже пользовались модераторы рассылок с большим потоком писем: внешнее письмо с предисловием, одним или несколькими вложенными сообщениями и окончанием.
  • Во вложенной копии сохранялись выбранные поля, включая Date, From, Subject и Message-ID. Остальные удалялись, особенно Received. У готового дайджеста появлялся собственный маршрут доставки, а старые цепочки серверов отдельных писем в него не переносились.

Почтовое отделение купило большой конверт

По свидетельству RFC 1153, крупные рассылки с большим потоком сообщений возникали уже в середине 1970-х. Отправлять каждую запись каждому подписчику отдельно означало многократно нагружать почтовую программу и снова передавать заголовки. Модераторы начали упаковывать несколько писем в одно составное. RFC объяснял снижение нагрузки количеством объединённых сообщений и отмечал экономию пропускной способности благодаря урезанным внутренним заголовкам. В апреле 1990 года Frank Wancho описывал фактически принятый, добровольный экспериментальный формат. К тому времени письменные правила догнали формат, которым модераторы рассылок пользовались уже много лет.

Снаружи дайджест выглядел как обычное письмо. Внутри его тело делилось на предисловие, минимум одно сообщение и окончание. Предисловие обычно содержало оглавление из тем писем и могло включать объявления администрации списка. Ряд из 70 дефисов и пустая строка отделяли его от сообщений. Между вложенными письмами стояли пустая строка, ровно 30 дефисов, ещё одна пустая строка. В конце фраза, начинающаяся с «End of», объявляла конец выпуска, а звёздочки под ней служили подчёркиванием. Разные размеры перегородок помогали программам разбирать пакет обратно. Из потока реплик получался маленький номер журнала.

Вложенное письмо сохраняло опознавательные таблички. Если в исходнике были Date, From, To, Cc, Subject, Message-ID и Keywords, их следовало оставить и расставить в заданном порядке. Summary был необязателен. Читатель видел автора, дату и предмет разговора. Затем формат отсекал остальное: другие внутренние заголовки подлежали удалению, а Received назывались особо. Следы серверов, через которые отдельное письмо добралось до модератора, в копию для дайджеста не вкладывались.

Когда дайджест доходил до подписчика, в его заголовках могли присутствовать Received. Они относились к новому внешнему письму и отмечали доставку готового выпуска. Вложенный текст прошёл другую, более раннюю дорогу, чья цепочка была отброшена. Штемпель на журнале показывает путь журнала к читателю. Он не восстановит путь каждого рукописного листа до редакции. Объединение облегчало доставку и одновременно меняло набор транспортных свидетельств в руках подписчика.

Тело исходного письма тоже могло испытать небольшую механическую правку. RFC разрешал убирать пустые строки в начале и конце. Если автор написал в тексте строку ровно из 30 дефисов, её первый знак можно было заменить пробелом: иначе программа приняла бы текст за границу следующего письма. Глаз может пропустить правку, побайтовое сравнение — нет. Записанные правила позволяли разным программам одинаково собирать и разбирать выпуск; они прямо разрешали убрать крайние пустые строки и изменить опасную строку из 30 дефисов.

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

В качестве типичного размера документ упоминал около 15 тысяч знаков, но фиксированного предела не задавал; промежуточные почтовые шлюзы могли вводить свои ограничения. RFC также отличал этот специальный формат списка от общей инкапсуляции писем в RFC 934. Практика дайджестов возникла раньше и оставалась удобной для своей задачи. Записанная грамматика помогала другим программам собирать и разделять выпуски согласованно.

Большой конверт сократил повторные отправки и дал читателям удобное оглавление. Имена и темы участников оставались, прежние Received отдельного письма — нет. Экономия перевозки оказалась ещё и выбором того, какие квитанции о перевозке переживут публикацию.