共用方式為


了解 Exchange 2007 SP1 和 SP2 中的優先佇列

 

適用版本: Exchange Server 2007 SP2, Exchange Server 2007 SP1

上次修改主題的時間: 2009-05-20

「優先佇列」是 Microsoft Exchange Server 2007 Service Pack 1 (SP1) 和 Exchange 2007 Service Pack 2 (SP2) 的一項功能,可讓寄件者定義郵件的優先順序,以影響安裝 Hub Transport server role 的 Exchange 伺服器對郵件的處理方式。

當寄件者建立和傳送郵件時,寄件者可以在 Microsoft Outlook 中指派郵件優先順序。寄件者可以在 Outlook 中設定下列任何郵件優先順序值:

  • 低重要性
  • 普通重要性
  • 高重要性

在 Outlook 或 Microsoft Outlook Web Access 中建立的郵件,都是預設為「普通」優先順序。郵件優先順序是儲存在郵件標頭的 X-Priority: 標頭欄位中。

在 Exchange 2007 組織中傳送或接收的每封郵件,必須先在 Hub Transport Server 上分類,才能路由和傳遞該郵件。Hub Transport Server 上的分類程式會從提交佇列中一次提取一個郵件,並且先在郵件上執行收件者解析、路由解析及內容轉換,然後才將郵件放入傳遞佇列。如需相關資訊,請參閱傳輸結構

傳遞佇列是根據郵件的目的地以動態方式建立。如果郵件的目的 Mailbox Server 與 Hub Transport Server 位於相同的 Active Directory 目錄服務站台,則會為這些郵件建立信箱傳遞佇列。如果郵件的目的 Mailbox Server 不是在 Hub Transport Server 所在的 Active Directory 站台,以及對於寄至遠端網域的郵件,將會為這些郵件建立遠端傳遞佇列。如需相關資訊,請參閱管理佇列

相同目的地的所有郵件都會放入相同的傳遞佇列中。優先佇列會影響郵件從傳遞佇列傳輸至目的郵件伺服器。啟用優先佇列之後,「高」優先順序郵件會比「普通」優先順利郵件更早傳送至目的地,而「普通」優先順序郵件會比「低」優先順序郵件更早傳送至目的地。根據郵件優先順序來設定郵件的傳遞優先順序,有助於系統管理員為郵件傳遞時間定義特定的服務等級協定 (SLA) 需求。

用來設定優先佇列的選項

佇列優先順序的組態選項可在 C:\Program Files\Microsoft\Exchange Server\Bin 目錄中的 EdgeTransport.exe.config 應用程式組態檔中設定。EdgeTransport.exe.config 檔案是與 EdgeTransport.exe 檔案關聯的 XML 應用程式組態檔。EdgeTransport.exe 和 MSExchangeTransport.exe 是 Microsoft Exchange Transport 服務所使用的可執行檔。每個 Hub Transport Server 或 Edge Transport Server 上都會執行這個服務。重新啟動 Microsoft Exchange Transport 服務之後,儲存至 EdgeTransport.exe.config 檔案的變更就會生效。如果發生下列任一狀況,將強制使用預設值:

  • 組態選項遺失。
  • 組態選項存在,並含有預設值。

下列範例顯示 EdgeTransport.exe.config 檔案的一般結構:

<configuration>

<runtime>

<gcServer enabled="true" />

</runtime>

<appSettings>

<add key=" 組態選項 " value=" " />

...

</appSettings>

</configuration>

您可以在 <appSettings> 區段加入新的組態選項或修改現有的組態選項。有許多可用的組態選項與優先佇列完全無關。所有與背壓無關的組態選項皆不在本主題的討論範圍內。

啟用或停用優先佇列

PriorityQueuingEnable 參數可在 Hub Transport Server 上啟用或停用優先佇列。預設值為 False。若要啟用優先佇列,請在 EdgeTransport.exe.config 檔案中將 PriorityQueuingEnable 參數值設定為 True,然後重新啟動 Microsoft Exchange Transport 服務。

設定高優先順序郵件的大小上限

MaxHighPriorityMessageSize 參數會控制高優先順序郵件允許的大小上限。預設值為 250 KB。如果高優先順序郵件大於 MaxHighPriorityMessageSize 參數的值,郵件會從「高」優先順序自動降級為「普通」優先順序。

當您輸入值時,請以下列其中一個單位來限定值:

  • KB (千位元組)
  • MB (百萬位元組)
  • GB

MaxHighPriorityMessageSize 參數的值應該明顯小於 Set-TransportConfig 指令程式上 MaxMessageSize 參數的值。MaxMessageSize 參數的預設值是 10 MB。較小的 MaxHighPriorityMessageSize 值有助於確保「高」優先順序郵件有一致且可預測的傳遞時間。

根據郵件優先順序設定延遲通知逾時

每次郵件傳遞失敗之後,Hub Transport Server 就會產生延遲傳遞狀態通知 (DSN) 郵件並將其放在佇列中,等待傳遞給無法傳遞郵件的寄件者。此延遲的 DSN 郵件僅會在指定的延遲通知逾時間隔後,且失敗的郵件在這段時間仍然無法傳遞,才會傳送。此項延遲可避免因暫時性的郵件傳輸失敗,而傳送不必要的延遲 DSN 郵件。

下表顯示根據郵件優先順序的延遲 DSN 通知逾時選項。

根據郵件優先順序的延遲 DSN 通知逾時選項

參數名稱 預設值

LowPriorityDelayNotificationTimeout

8:00:00 (8 小時)

NormalPriorityDelayNotificationTimeout

4:00:00 (4 小時)

HighPriorityDelayNotificationTimeout

00:30:00 (30 分鐘)

若要指定延遲通知逾時的值,請輸入時間範圍:dd.hh:mm:ss,其中 d = 天數、h = 小時數、m = 分鐘數,s = 秒數。如果值小於 1 天,您可以省略時間範圍的天數部分。

郵件傳輸失敗後,如果後來可以在特定期間內順利傳遞,則會將其視為暫時現象。此期間的定義為 Hub Transport Server 之 TransientFailureRetryCountTransientFailureRetryInterval 參數值的乘積。這些參數是使用 Set-TransportServer 指令程式予以設定。如果郵件在此期間順利傳遞,則會將郵件傳輸失敗視為暫時現象。若要確定未送出暫時失敗的延遲 DSN,則 NormalPriorityDelayNotificationTimeoutHighPriorityDelayNotificationTimeout 選項的值應該一律大於 TransientFailureRetryCount 乘上 TransientFailureRetryInterval 的值。

根據郵件優先順序設定郵件到期逾時

「郵件到期逾時」會指定 Hub Transport Server 嘗試傳遞失敗郵件的最長時間。如果無法在到期逾時間隔之前順利傳遞郵件,則包含原始郵件或郵件標題的未傳遞回報 (NDR) 會傳遞給寄件者。

下表顯示根據郵件優先順序的郵件到期逾時選項。

根據郵件優先順序的郵件到期逾時選項

參數名稱 預設值

LowPriorityMessageExpirationTimeout

2.00:00:00 (2 天)

NormalPriorityMessageExpirationTimeout

2.00:00:00 (2 天)

HighPriorityMessageExpirationTimeout

8:00:00 (8 小時)

若要指定郵件到期逾時的值,請輸入時間範圍:dd.hh:mm:ss,其中 d = 天數、h = 小時數、m = 分鐘數,s = 秒數。如果值小於 1 天,您可以省略時間範圍的天數部分。

根據郵件優先順序設定每個網域的連線數目上限

每個網域的連線數目上限會指定 Hub Transport Server 對任何單一遠端網域可開放的連線數目上限。使用遠端傳遞佇列和 Hub Transport Server 上的傳送連接器時,將對遠端網域建立傳出連線。

下表顯示根據郵件優先順序的每個網域連線數目上限選項。

根據郵件優先順序的每個網域連線數目上限選項

參數名稱 預設值

MaxPerDomainLowPriorityConnections

2

MaxPerDomainNormalPriorityConnections

15

MaxPerDomainHighPriorityConnections

3

MaxPerDomainLowPriorityConnections 參數、MaxPerDomainNormalPriorityConnections 參數及 MaxPerDomainHighPriorityConnections 參數的總和,應該小於或等於 Set-TransportServer 指令程式上 MaxPerDomainOutboundConnections 參數的值。MaxPerDomainOutboundConnections 參數的預設值是 20

優先佇列如何影響 Hub Transport Server 上的其他郵件限制

通過 Hub Transport Server 的所有郵件都會受到各種郵件重試、重新提交及到期的限制。如需相關資訊,請參閱管理郵件重試、重新提交及到期間隔

Set-TransportServer 指令程式中可用的某些郵件限制,在 EdgeTransport.exe.config 組態檔中也有對應的優先佇列郵件限制可用。下表顯示這些對應的郵件限制。

Set-TransportServer 指令程式中的郵件限制與 EdgeTransport.exe.config 組態檔中對應的優先佇列郵件限制

來源 參數 預設值

Set-TransportServer

DelayNotificationTimeOut

04:00:00 (4 小時)

EdgeTransport.exe.config

NormalPriorityDelayNotificationTimeout

4:00:00 (4 小時)

Set-TransportServer

MessageExpirationTimeOut

2.00:00:00 (2 天)

EdgeTransport.exe.config

NormalPriorityMessageExpirationTimeout

2.00:00:00 (2 天)

當優先佇列停用時,將會忽略 EdgeTransport.exe.config 組態檔中存在的所有優先佇列郵件限制。Set-TransportServer 指令程式上的所有郵件限制,都適用於經過 Hub Transport Server 的所有郵件。

啟用優先佇列之後,EdgeTransport.exe.config 組態檔中的優先佇列郵件限制就會覆寫 Set-TransportServer 指令程式中對應的郵件限制。Set-TransportServer 指令程式中的其他所有郵件限制,仍然適用於經過 Hub Transport Server 的「低」優先順序、「普通」優先順序及「高」優先順序郵件。

優先佇列的使用者設定

Exchange 管理命令介面中的 Set-Mailbox 指令程式具有 DowngradeHighPriorityMessagesEnabled 參數。預設值為 False。當此參數設定為 True 時,從信箱傳送的任何「高」優先順序郵件都會自動降級為「普通」優先順序。如需相關資訊,請參閱Set-Mailbox

若要確保您目前閱讀的是最新資訊,並尋找其他的 Exchange Server 2007 說明文件,請造訪 Exchange Server 技術資源中心.