Ограничение размера отправляемых и получаемых сообщений в Exchange 2010
На мой взгляд, тема управления ограничением размера сообщений достаточно популярная и на форумах часто встречаются вопросы касающиеся того как увеличить/уменьшить размер сообщений, которые может отправлять/получать пользователь организации Exchange. В этой статье я постараюсь описать основные регулирующие механизмы, которые работают во время передачи сообщений между различными узлами почтовой системы предприятия и покажу как они конфигурируются.
Типы ограничений и их область действия
Начнем с самого начала и определимся с тем, какие типы ограничений существуют для сообщений, передаваемых в среде Microsoft Exchange, и на каких уровнях они настраиваются.
Существуют следующие виды ограничений размера:
- Заголовка – суммарный размер всех полей заголовка сообщения. Определяется параметрами MaxHeaderSize иPickupDirectoryMaxHeaderSize;
- Сообщения – общий размер сообщения, включая вложения, заголовок и текстовую часть. Определяется параметрами MaxMessageSize, MaxSendSize, MaxReceiveSize;
- Вложения – размер каждого конкретного вложения. Определяется параметром AttachmentSizeOver;
- Количества получателей – все получатели, указанные в полях To:, Cc:, Bcc. Группа рассылки – один получатель. Определяется параметрами MaxRecipientPerMessage,RecipientLimits,PickupDirectoryMaxRecipientPerMessage (для сервера) иMaxRecipientEnvelopeLimit (для организации).
Также есть несколько уровней, на которых могут применяться озвученные выше ограничения:
- Ограничения организации – применяются ко всем транспортным сервера организации Exchange. Устанавливаются командлетом Set-TransportConfig.
- Глобальные ограничения – автоматически копируются из ограничений организации, и хранятся в базе данных Active Directory. До выхода Microsoft Exchange Server 2007 SP1 автоматического копирования не происходило и в случае конфликта применялось наименьшее значение.
- Ограничения соединителя – устанавливаются для конкретных соединителей получения/отправки. Также устанавливаются для связей между сайтами Active Directory (Site Link) и для соединителей групп маршрутизации, в случае наличия серверов MS Exchange 2003/2000. ПроНастройку ограничения на размер сообщений для внутренней маршрутизации можно почитать в библиотеке TechNet.
- Ограничения сервера – ограничение для отдельных HUB и Edge серверов. Не хранятся в базе данных Active Directory. Устанавливаются командлетом Set-TransportServe.Параметр AttachmentSizeOver устанавливается командлетом Set-TransportRule.
- Ограничения пользователя – применяются к конкретному объекту – почтовому ящику пользователя, группе, контакту и т.п.
Приоритет ограничений
Раз областей действия ограничений несколько, то логично, что применяться они должны в соответствии с определенными правилами. Для лучшего понимания механизма применения ограничений давайте рассмотрим две стандартные ситуации – получение письма из Интернета через Edge сервер и отправку пользователем организации сообщения в Интернет, также через Edge сервер.
Процесс пересылки сообщений
Для начала, напомню процесс получения/отправки сообщений при использовании схемы с Edge сервером. Данный процесс изображен на рис.1:
Рис.1: Процесс пересылки сообщений.
Из рисунка можно сделать вывод, что при получении письмо проходит минимум через три соединителя, ровно как и при отправке. Следовательно, необходимо учитывать ограничения, установленные на всех 3-х соединителях. При этом ещё существуют глобальны ограничения организации и ограничения пользователя.
Порядок применения ограничений при получении сообщения
При получении сообщения сервером Exchange 2010 из сети Интернет, имеет место быть следующий порядок применения ограничений (рис.2):
Рис.2: Порядок применения ограничений при получении сообщения из Интернета.
Примечание: Конфигурация транспорта для Edge сервера и для организации – это разные вещи! В конфигурации транспорта на Edge`e не используются такие параметры как MaxReceiveSize и MaxRecipientEnvelopeLimit (установлены вunlimited), т.к. здесь применяются ограничения соединителей. При этом на соединителе приема не будет отрабатывать ограничение на размер сообщения, т.к. Edge сервер входит в группу ExchangeServers, которая имеет полномочие Ms-Exch-Bypass-Message-Size-Limit, разрешающее прохождение сообщений через соединитель приема без проверки размера сообщения.
Порядок применения ограничений при отправке сообщений
В случае отправки сообщения порядок применения ограничений будет следующим:
Рис.3: Отправка сообщений пользователем организации Exchange в сеть Интернет.
Примечание: Здесь, аналогично процедуре получения сообщений, на Edge сервере не используются параметры MaxReceiveSize и MaxRecipientEnvelopeLimit (установлены вunlimited), т.к. эти фильтры применяются на соответствующих соединителях.
Настройка ограничений
На рис.2 и рис.3 изображены параметры, которые участвуют в фильтрации сообщений, и их значения по умолчанию для сервера Exchange 2010. Для того, чтобы изменить значения по умолчанию, необходимо воспользоваться соответствующими средствами управления.
Организация
Настройки организации можно редактировать как через EMC так и через EMS.
В графической консоли управления, параметры транспорта можно найти на уровне Конфигурирования организации –Транспортный сервер-концентратор – Глобальные параметры – Параметры транспорта (рис.4).
Рис.4: Конфигурирование глобальных транспортных параметров организации.
В PowerShell параметры транспорта можно задать командлетомSet-TransportConfig:
1. Получаем текущие значения:
Get-TransportConfig | fl *size*
2. Изменяем максимальный размер отправляемых сообщений:
Set-TransportConfig –MaxSendSize 20Mb
Рис.5: Конфигурирование глобальных транспортных параметров организации через PowerShell.
Соединители
Для редактирования ограничений на соединителях можно открыть Exchange Management Console – Уровень конфигурирования организации либо Уровень серверов –Транспортный сервер-концентратор – Соединитель … (рис.6):
Рис.6: Управление ограничением размера сообщений на соединителях.
И изменить значение в поле «Максимальный размер сообщения (КБ)».
Либо воспользоваться PowerShell:
1. Получаем список коннекторов:
Get-SendConnector или Get-ReceiveConnector
2. Устанавливаем значения ограничений, например:
Set-SendConnector -Identity <имя_коннектора> -MaxMessageSize <значение, например 20Mb>
Сервер
Настройка конкретных серверов производится командлетомSet-TransportServer с параметрами:
- PickupDirectoryMaxHeaderSize – максимальный размер заголовка сообщения;
- PickupDirectoryMaxRecipientsPerMessage – максимальное количество получателей
Получатель либо отправитель
В данном случае в роли получателя, либо отправителя сообщения может быть любой объект организации с включенной поддержкой почты, например пользователи, группы, контакты и т.п.. В каждом отдельном случае ограничения будут устанавливаться по-разному, но принцип здесь один - в графической консоли подобные настройки делаются вСвойствах объекта, на вкладке Параметры потока почты(рис.7):
Рис.7: Редактирование параметров потока почты для почтового ящика пользователя.
В командной консоли они устанавливаются командлетам Set-Mailbox, -MailUser, -MailContact, -DistributionGroup, -DynamicDistributionGroup, -MailPublicFolder с соответсоответствующими параметрами –MaxReceiveSize, -MaxSendSize, - RecipientLimits, -MaxRecipientPerMessage.
Нюансы
Разобравшись с принципами применения различных фильтров сообщений в организации Exchange, я хочу обратить ваше внимание на несколько нюансов, которые стоит учитывать при настройке ограничений.
Размер сообщения
При входе сообщения в организацию, сервер Exchange рассчитывает общий размер сообщения и записывает его в настраиваемый заголовок в поле
X-MS-Exchange-Organization-OriginalSize
последующие сервера Exchange, участвующие в пересылке, не пересчитывают размер сообщения, а используют значение этого параметра. Здесь нужно понимать, что при «путешествии» сообщения по серверам в организации Exchange его размер может изменяться вследствие преобразования, кодирования, обработки агентами и т.п..
Реальный размер вложения
Следует знать, что при отправке сообщения с вложениями внешнему получателю, сервер Exchange перекодирует его в формат MIME, используя алгоритм Base64. Это приводит к росту размера сообщения примерно на 30%. Данное перекодирование осуществляется по причине того, что стандартное SMTP сообщение может содержать только символы кодовой таблицы US-ASCII, следовательно, любые отличные символы должны быть конвертированы в этот формат.
«Раздувания» сообщений при пересылке между внутренними пользователями организации Exchange не происходит.
Ограничение числа получателей
Ограничение числа получателей на соединителях устанавливается параметром MaxRecipientsPerMessage и по умолчанию ограничивается числом 200. Это означает, что если анонимный отправитель попытается превысить число получателей, то сервер примет сообщение только для первых 200. Но большинство SMTP серверов распознают подобные ограничения и отправляют сообщения группами по 200 получателей.
Ограничение размера вложений в MS Outlook
Иногда, настроек, сделанных на стороне сервера, бывает не достаточно, т.к. сам MS Outlook не хочет прикреплять большие вложения и «радует» пользователя сообщением с рис.8:
Рис.8: Ограничение размера вложений в MS Outlook.
В таком случае, для MS Outlook 2010, необходимо поправить настройки реестра на локальном компьютере пользователя, а именно – создать ключ DWORD с именемMaximumAttachmentSize в ветке
HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Outlook\Preferences
И указать для него значение 0 – для отмены ограничений, либо значение отличное от ноля, в килобайтах (КБ), для установки своих собственных ограничений.
Ограничение в Outlook Web App
Outlook Web App тоже ограничивает размер вложений, по умолчанию это ограничение равно 30 000 КБ. Чтобы изменить эту настройку необходимо открыть файл Web.config, обычно расположенный в c:\Program Files\Microsoft\ExchangeServer\ClientAccess\Owa и найти там строку вида
<httpRuntime maxRequestLength="30000" />
Далее для параметра maxRequestLength необходимо указать свое значение, в килобайтах (КБ).
Заключение
Помните, что если вы планируете вносить изменения в настройки ограничений размера пересылаемых сообщений, то новая схема должна быть хорошо продумана, т.к. неправильные настройки могут привести к серьезному падению производительности ваших транспортных серверов. Завышенные ограничения могут привести к тому, что письма будут проходить внутрь организации и отбрасываться на самых последних стадиях фильтра.
Также стоит понимать, что если ваши внутренние пользователи могут отправлять большие сообщения, то это совсем не означает, что сервер получателя сможет их принять.
В статье рассмотрены две наиболее часто встречающиеся ситуации маршрутизации сообщений. Кроме этих двух случаев у вас может возникнуть необходимость конфигурирования других транспортных потоков в организации, например обмен сообщений между HUB-серверами в рамках одного леса, либо между лесами Active Directory и другие.
Оставьте заявку и мы подробно ответим на все Ваши вопросы!
