Агенты транспорта

 

Применимо к:Exchange Server 2013

Последнее изменение раздела:2015-03-09

Агенты транспорта позволяют установить пользовательское программное обеспечение, созданное корпорацией Майкрософт, сторонними поставщиками или специалистами вашей организации, на сервер Exchange. Это программное обеспечение может обрабатывать сообщения электронной почты, которые проходят через транспортный конвейер. В Microsoft Exchange Server 2013 транспортный конвейер состоит из следующих процессов:

  • интерфейсная транспортная служба на серверах клиентского доступа;

  • транспортная служба на серверах почтовых ящиков;

  • транспортная служба почтовых ящиков на серверах почтовых ящиков;

  • транспортная служба на пограничных транспортных серверах.

Дополнительные сведения о транспортном конвейере см. в разделе Поток обработки почты.

Как и в предыдущих версиях Exchange, транспорт Exchange 2013 обеспечивает расширяемость посредством агентов транспорта пакета SDK Microsoft Exchange Server 2013. Версия SDK Exchange 2013 основана на Microsoft.NET Framework версии 4.0 и позволяет сторонним производителям реализовать следующие предопределенные классы:

  • SmtpReceiveAgent

  • RoutingAgent

  • DeliveryAgent

После подчинения библиотекам в SDK получившиеся сборки регистрируются в Exchange 2013, который загружает агентов и вызывает обработчиков событий во время определенных стадий SMTP сессий или обработки сообщений. Эти стадии, или события, являются частью определений агентов. Регистрационные данные агента хранятся в файле конфигурации XML.

В следующем списке описываются требования для использования агентов транспорта в Exchange 2013.

  • Транспортная служба на серверах почтовых ящиков и пограничных транспортных серверах полностью поддерживает все предопределенные классы в SDK, и, следовательно, все сторонние агенты транспорта, написанные для ролей транспортного сервера-концентратора или пограничного транспортного сервера в Microsoft Exchange Server 2010 будут работать в службе транспорта Exchange 2013.

  • Служба транспорта переднего плана поддерживает только класс SmtpReceiveAgent в SDK, и сторонние агенты не могут работать с SMTP событием OnEndOfData.

  • Служба транспорта почтовых ящиков вообще не поддерживает SDK, поэтому нельзя использовать сторонних агентов в службе транспорта почтовых ящиков.

Поддержка устаревших агентов транспорта на основе версии .NET Framework до версии 4.0 не включена по умолчанию, но ее можно включить. Дополнительные сведения см. в разделе Включение поддержки устаревших агентов транспорта.

Содержание

Обновления для службы управления агентами транспорта

Агенты транспорта и события SMTP

Приоритет агентов транспорта

Встроенные агенты транспорта

Устранение неполадок агентов транспорта

В связи с обновлениями для транспортного конвейера Exchange 2013 командлеты агента транспорта должны различать службу транспорта и службу транспорта переднего плана, особенно если сервер клиентского доступа и сервер почтовых ящиков установлены на одном компьютере. Дополнительные сведения см. в разделе Управление агентами транспорта.

Командные командлеты агента транспорта работают с файлом конфигурации, расположенным по адресу %ExchangeInstallPath%TransportRoles\Shared. Для службы транспорта на серверах почтовых ящиков и пограничных транспортных серверах — файл agents.config. Для интерфейсной транспортной службы на серверах клиентского доступа — файл fetagents.config. Оба файла используют тот же формат, что и в Exchange 2010. Дополнительные сведения об управлении агентами транспорта см. в разделе Управление агентами транспорта.

В начало

Агенты транспорта используют события SMTP. Такие события возникают при передаче сообщений через транспортный конвейер. События SMTP предоставляют агентам транспорта доступ к сообщениям в особых точках в процессе сеансов связи SMTP и при маршрутизации сообщений через организацию.

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

В следующих таблицах приведены события SMTP, предоставляющие доступ к сообщениям в конвейере транспорта.

События приема SMTP

Последовательность событие SMTP Описание

1

OnConnectEvent

Это событие инициируется первоначальным подключением удаленного узла SMTP.

2

OnHeloCommand

Это событие инициируется, когда удаленный узел SMTP передает команду HELO.

3

OnEhloCommand

Это событие инициируется, когда удаленный узел SMTP передает команду EHLO.

4

OnStartTlsCommand

Это событие инициируется, когда удаленный узел SMTP передает команду STARTTLS.

5

OnAuthCommand

Это событие инициируется, когда удаленный узел SMTP передает команду AUTH.

6

OnProcessAuthentication

Это событие инициируется, когда выполняется обработка проверки подлинности с помощью удаленного узла SMTP.

7

OnEndOfAuthentication

Это событие инициируется, когда удаленный узел SMTP завершил проверку подлинности.

8

OnXSessionParamsCommand

Это событие инициируется, когда удаленный узел SMTP передает команду XSESSIONPARAMS.

9

OnMailCommand

Это событие инициируется, когда удаленный узел SMTP передает команду MAIL FROM.

10

OnRcptToCommand

Это событие инициируется, когда удаленный узел SMTP передает команду RCPT TO.

11

OnDataCommand

Это событие инициируется, когда удаленный узел SMTP передает команду DATA (текст) или BDAT (двоичные данные).

12

OnEndOfHeaders

Это событие инициируется, когда удаленный узел SMTP завершает передачу заголовков сообщений электронной почты. На это указывает пустая строка (<CRLF>), которая разделяет заголовки и текст сообщения.

13

OnProxyInboundMessage

Это событие инициируется, когда входящий сеанс SMTP ретранслируется или передается через прокси-сервер службой транспорта переднего плана на сервере клиентского доступа в службу транспорта на сервере почтовых ящиков.

14

OnEndOfData

Это событие инициируется, когда удаленный узел SMTP передает команду окончания данных. Для текстовых сеансов, запущенных командой DATA, индикатором окончания данных выступает команда <CRLF>.<CRLF>. Для двоичных сеансов, запущенных командой BDAT, индикатором окончания данных выступает команда BDAT LAST.

**

OnHelpCommand

Это событие инициируется, если удаленный узел SMTP передает команду HELP.

**

OnNoopCommand

Это событие инициируется, если удаленный узел SMTP передает команду NOOP.

**

OnReject

Это событие инициируется, если узел-получатель SMTP передает временный или постоянный код уведомления о доставке (DSN) узлу-отправителю SMTP.

**

OnRsetCommand

Это событие инициируется, если узел-отправитель SMTP передает команду RSET.

15

OnDisconnectEvent

Это событие инициируется при прекращении сеанса связи SMTP узлом-отправителем или узлом-получателем SMTP. Обычно это происходит, когда удаленный узел SMTP передает команду QUIT.

** Эти события могут возникать в любое время между событиями OnConnectEvent и OnDisconnectEvent.

Классификатор событий

Последовательность Событие классификатора Описание

1

OnSubmittedMessage

Это событие инициируется, когда сообщение попадает в очередь передачи в службе транспорта на принимающем сервере почтовых ящиков или пограничном транспортном сервере.

2

OnResolvedMessage

Это событие возникает после разрешения всех получателей, но до определения следующего перехода для каждого получателя. Событие маршрутизации OnResolvedMessage позволяет последующим событиям переопределять способ маршрутизации по умолчанию с помощью метода SetRoutingOverride, выполняемого для отдельных получателей.

3

OnRoutedMessage

Это событие инициируется после завершения классификации сообщений, расширения списков рассылки и разрешения получателей.

4

OnCategorizedMessage

Это событие инициируется, когда классификатор завершает обработку сообщения.

В начало

Порядок действия агентов транспорта на сообщения в транспортном конвейере определяют два фактора:

  1. Событие SMTP, в котором зарегистрирован агент транспорта, и момент, когда такое событие SMTP обнаруживает сообщения.

  2. Значение приоритета, назначенное агенту транспорта, если в одном событии SMTP зарегистрировано несколько агентов. Самый высокий приоритет — 1. Чем больше значение, тем ниже приоритет агента.

Например, предположим, что настроены следующие агенты транспорта:

  • В событии SMTP OnEndOfHeaders зарегистрированы агент транспорта А с приоритетом 1 и агент транспорта В с приоритетом 2.

  • В событии SMTP OnMailCommand зарегистрирован агент транспорта Б с приоритетом 4.

Сначала к сообщениям применяется агент транспорта Б, так как событие OnMailCommand обнаруживает сообщения раньше, чем событие OnEndOfHeaders. Когда сообщения достигают события OnEndOfHeaders, сначала применяется агент транспорта А, а затем — В, так как у первого из них приоритет выше (целое значение меньше).

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

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

Интересные встроенные агенты транспорта на серверах почтовых ящиков

Имя агента Управляемость Приоритет События SMTP или классификатора

Агент правил транспорта

Да

1

OnResolvedMessage

Агент защиты от вредоносных программ

Да

2

OnSubmittedMessage

Агент маршрутизации обмена текстовыми сообщениями

Да

3

OnSubmittedMessage

Агент доставки обмена текстовыми сообщениями

Да

4

Недоступно

Агент ведения журнала

Нет

Не настраивается

OnRoutedMessage

Агент расшифровки отчетов журнала

Нет

Не настраивается

OnCategorizedMessage

Агент расшифровки RMS

Нет

Не настраивается

OnSubmittedMessage

Агент шифрования RMS

Нет

Не настраивается

OnSubmittedMessage, OnRoutedMessage

Агент расшифровки протокола RMS

Нет

Не настраивается

OnEndOfData

На пограничных транспортных серверах большинство встроенных агентов транспорта доступны для командлетов агентов транспорта и других командлетов и могут контролироваться с их помощью.

Другие интересные встроенные агенты транспорта на пограничных транспортных серверах описаны в таблице ниже. Обратите внимание, что в таблицу не включены невидимые агенты транспорта, которыми невозможно управлять.

Интересные встроенные агенты транспорта на пограничных транспортных серверах

Имя агента Управляемость Приоритет События SMTP или классификатора

Агент фильтрации подключений

Да

1

OnConnectEvent, OnMailCommand, OnRcptComand, OnEndOfHeaders

Агент переопределения адресов входящих сообщений

Да

2

OnRcptCommand, OnEndOfHeaders

Агент пограничных правил

Да

3

OnEndOfData

Агент фильтра содержимого*

Да

4

OnEndOfData

Агент идентификации отправителей*

Да

5

OnEndOfHeaders

Агент фильтра отправителей*

Да

6

OnMailCommand, OnEndOfHeaders

Агент фильтра получателей

Да

7

OnRcptCommand

Агент анализа протоколов*

Да

8

OnConnectEvent, OnEndOfHeaders, OnEndOfData, OnReject, OnRsetCommand, OnDisconnectEvent

Агент фильтрации вложений

Да

9

OnEndOfData

Агент переопределения адресов исходящих сообщений

Да

10

OnSubmittedMessage, OnRoutedMessage

* Эти агенты защиты от нежелательной почты можно также установить и настроить на серверах почтовых ящиков. Дополнительные сведения см. в разделе Включение функции защиты от нежелательной почты на сервере почтовых ящиков.

В начало

Устранить неполадки агентов транспорта можно с помощью следующих функций:

  • Get-TransportPipeline   Этот командлет отображает события SMTP и соответствующие агенты транспорта, которые обнаруживают сообщения на сервере Exchange. Дополнительные сведения см. в разделе Просмотр агентов транспорта в транспортном конвейере.

  • Конвейерная трассировка создает точный снимок всего сообщения до и после его обработки каждым агентом транспорта. Это позволяет обнаружить агент транспорта, который приводит к неожиданным результатам. Дополнительные сведения см. в разделе Трассировка конвейера.

В начало

 
Показ: