Unknown's avatar

About Michel de Rooij

Michel de Rooij, with over 25 years of mixed consulting and automation experience with Exchange and related technologies, is a consultant for Rapid Circle. He assists organizations in their journey to and using Microsoft 365, primarily focusing on Exchange and associated technologies and automating processes using PowerShell or Graph. Michel's authorship of several Exchange books and role in the Office 365 for IT Pros author team are a testament to his knowledge. Besides writing for Practical365.com, he maintains a blog on eightwone.com with supporting scripts on GitHub. Michel has been a Microsoft MVP since 2013.

Identity Lifecycle Manager 2007 FP1 SP1 released


Today Microsoft released Service Pack 1 for Service Pack 1 Identity Lifecycle Manager 2007 Feature Pack 1. Besides many hotfixes and features already contained in rollups, ILM 2007 FP1 SP1 also supports the long awaited support to provision Exchange Server 2010. The article states the following in relation to provisioning Exchange 2010:

You can use the GALSync management agent or a customized Active Directory management agent to perform provisioning for Exchange Server 2010. To use this feature, the following conditions must be true:

  • The ILM 2007 Synchronization service account must be a domain account.
  • The ILM 2007 Synchronization server must be joined to a domain. However, the server does not have to be joined to the domain in which the provisioning occurs.

For more information on using GALSync for provisioning Exchange 2010, consult this TechNet website. Click here to see the SP1 knowledgebase article.

Identity Lifecycle Manager is a metadirectory product and is a successor to the MIIS (Microsoft Identity Integration Server) and MMS (Microsoft Metadirectory Services). MMS was acquired by Microsoft from ZoomIt back in 1999. ILM matches the concept of Identity Management in organizations, where identities (e.g. accounts) exist in many places, e.g. directories and applications. ILM provisions (creation, changes and removed) identities in these directories and applications in their “native format” through agent technology. If you’re interested in ILM check out the Microsoft product page here.

Exchange 2010 & Outlook 2003 Notifications


Update (13 apr 2011): Rollup 3 for Exchange 2010 SP1 contains UDP support. To enable it, apply RU3 and set HKLM\SYSTEM\CurrentControlSet\Services\MSExchangeRPC\ParametersSystem\EnablePushNotifications to 1 (REG_DWORD). More information in support article kb2009942.

New e-mail notifications from Exchange to Outlook, we receive them all the time. Most of us never look at the technique, because in most cases this works so there’s no need. But what if it doesn’t or you are experiencing delays? With Exchange 2010 this situation is more likely to occur than with earlier versions of Exchange, because many people are still using Outlook 2003 or earlier clients.  To understand why this happens, you need to understand how these notifications work (or should I say worked).

Note: To improve readability, you should read “Outlook 2003 or earlier versions in online mode” when it reads “Outlook 2003” from here on, unless states otherwise.

When Outlook 2003 connects to Exchange, it tries to register itself to receive notifications. If registration is successful, Outlook 2003 tells Exchange on what port it expects (UDP) packages to arrive, and it by default this is in the port range 1024-65535. When sending notifications, the Exchange server will also open a dynamic port in this range and connect to the registered client port. After receiving the notification, Outlook 2003 will retrieve the message, will display it in the appropriate folder, make a sound, show a systray icon, change your cursor, etc. When the registration for new mail notifications fails, Outlook 2003 will use a polling mechanism the check for changes.

Now, with Exchange 2010 this behavior has changed because Exchange 2010 does not send these kind of notifications to Outlook 2003 (i.e. UDP notifications were removed). Therefor, Outlook 2003 will revert to polling, which by default is set to 1 minute. This means in worst case users will be notified of new e-mail after approximately 1 minute, where (sort of) real-time feedback is expected. To make things worse in terms of user experience, this also means delays in visible feedback on any folder updates, e.g. e-mail seems to stay in outbox, deleted items not being deleted, moved items not being moved, etc.

The related knowledge base article (kb2009942) mentions two solutions. One solution is a mere pretext and explains increasing the polling frequency. To do so, it requires applying Exchange 2010 Rollup 1 on the CAS server and configuring the following registry key on that CAS server:

HKLM\CurrentControlSet\Services\MSExchangeRPC\ParametersSystem\Maximum Polling Freqeuency (DWORD, range 5000-120000)

The reason for performing this step on the CAS server is that Exchange 2010 will determine the polling frequency, not the client. The setting will work immediately, but clients need to reconnect in order for the new value to become effective. Note that setting this value lower than 5000 has no effect because Outlook 2003’s minimum poll rate is 5000.

Another solution is to enable cached mode for Outlook 2003 clients. This will not solve the delay in receiving new e-mail notifications, but it will solve the most annoying issue, being the delay in visual feedback. In cached mode users won’t notice the delay because they’re working with a local copy of their mailbox. Any changes (sends, deletes, moves) will happen in the local cached file (OST), and Outlook will update their Exchange mailbox in the background.

The article fails to mention the third solution: upgrade! The reason Outlook 2007 doesn’t have this issue is that Outlook 2007 (and later) support a third method: asynchronous (push notification). And as you’ve probably guessed, Exchange 2010 (and Exchange 2007) supports this method as well.

Exchange 2010’s CAS Arrays & NLB


A question reached me asking what the relationship was between Network Load Balancing (NLB) and Exchange 2010 CAS Arrays and if CAS Arrays superseded NLB configuration of CAS servers.

To answer this question, first you have to know that the difference between CAS servers in Exchange 2007 and Exchange 2010 is that Exchange 2007 CAS servers only process IMAP, POP, Web and Web Services. With Exchange 2010, CAS servers will also handle MAPI traffic. So, besides balancing ports 80, 443 etc. you also need to balance ports 135 (TCP) and 6005-65535 (TCP/UDP) for MAPI RPC ports. Note that you can also use static ports when required, consult kb270836 (it’s an old article, but still valid).

Now on to the new CAS array. CAS array are built on top of load balanced configurations – being hard- or software based. Since the role of CAS servers is becoming more important because it handles all client traffic, it is important to create redundancy at this level. Here’s when Exchange 2010’s CAS array comes into play. With CAS arrays you can create one “virtual CAS server” where you can point all mailbox servers.

The process of creating a CAS array is as follows:

  1. Install CAS servers;
  2. Set up load balancing, either using NLB or hardware. Don’t forget to add the MAPI RPC ports (see above);
  3. Create a DNS record (A) for the virtual IP address of the CAS array, e.g. myarray.contoso.com;
  4. Create the CAS array object using the New-ClientAccessArray cmdlet, e.g.New-ClientAccessArray –Name “My Array” –Fqdn “myarray.contoso.com”

Note that there’s a limit of 1 CAS array per site and you can define the site for the CAS array using the Site parameter when required.

(image by Henrik Walter)

The final step depends on the overall installation sequence and if any Mailbox servers existed before the creation of the CAS array, you may need to correct Mailbox servers configuration. These will probably still point to the individual CAS servers, which we can correct using the Set-MailboxDatabase cmdlet like this:

Set-MailboxDatabase Mbx1 -RpcClientAccessServer “myarray.contoso.com”

Note that when a CAS array is present, Mailbox servers will be configured to use that instead of the first CAS server at installation time.

So the answer to the question is CAS Arrays are built on load balanced configurations, load balancing configuration (software or hardware) is still required. For more background information on Client Access Servers in Exchange 2010, consult this TechNet topic.

Dell Exchange 2010 Advisor Tools


Dell has released an updated set of advisor tools for Exchange 2010. The tools can be used for rough sizing of servers and storage and utilizes Dell’s Equalogic, PowerVault, EMC and PowerEdge components. Unfortunately, and contrary to the HP Sizing Tools for Exchange 2010, the Dell Advisor can only be used online, so solutions can’t be saved or re-used. To be honest, the tool is more like a linear Wizard. It only supports single-site solutions, but it supports Database Availability Groups (DAG), DAS or or SAN-based storage, high availability and client options, but in a very limited fashion (i.e. Yes/No type of questions).

You can start the Dell Exchange 2010 Advisor by clicking here.

Note that for those involved with OCS, Dell also released the Unified Communications Advisor Tool for OCS 2007 R2.

Exchange 2010 Webcasts


For those interested, Microsoft is having three Webcasts on Exchange 2010 this late February / March:

The Performance/Scalability & Availability sessions are level 300; the Outlook Web App and Transport sessions are level 200. This means sufficient depth for those starting with Exchange 2010 as well as those with an Exchange background who want to get an update. Note that the Performance and Scalability session will be presented by Netapp’s John Fullbright, so I assume it will contain information on Netapp’s proposition as well.