Поскольку mime-кодирование может увеличить размер сообщения на 33%, что мне нужно сделать для фильтрации сообщений размером более 45 МБ? Нужна ли вообще математика?
Изменится ли математика в разных версиях Exchange?
Предельный размер Exchange - это действительно размер фактического сообщения, а не размер декодированного вложения. Так что да, вам придется посчитать. Кодировка Base64 не меняется от версии Exchange к версии Exchange, они постоянно ограничивают размер сообщения в очереди почтовой программы (т. Е. Закодированные).
Этот размер - полный размер сообщения в блоке DATA диалога SMTP. Это заголовки, тело и вложения в кодировке base64 (и в очень редких случаях вложения UUENCODED! Они все еще работают). Так как это MIME, а не простой b64, математические вычисления дают коэффициент расширения 1,37 (ссылка на сайт). Это 3 байта в 4 байта расширения (+.33) плюс терминальные символы CRLF после всех 72 символов (+.04). Выше и выше фиксированная стоимость заголовков, фактического тела сообщения и заголовков MIME внутри тела; в зависимости от размера навесного оборудования эти затраты могут быть незначительными.
Простой B64 - 1,33, а MIME - 1,37.
Итак, для ограничения размера сообщения 45 МБ (46080 КБ) необходимо установить ограничение в 63130 КБ.