Exchange Server Role Requirements Calculator 7.8

Exchange 2010 Mailbox Role Sizing Calculator 16.4The Exchange team today published an update for the Exchange 2013 Server Role Requirements Calculator as well. The new version number is 7.8. This version incorporates sizing for Exchange 2016 as well and includes support for ReFS (default for Exchange 2016). The version number is also dropped from the calculator.

More or less complementary to the calculator is the updated sizing guidance for Exchange 2016, which was also published today here. No big changes here, apart from multi-role only option and a slight increase in CPU requirements to cover for unforeseen circumstances as the team is still learning from real-world behavior. This makes sense, looking at the speed in which the calculator was released compared to the one for Exchange 2013. Kudos to the Exchange team!

New and enhanced functionality since version 7.6:

  • Added support for Exchange 2016
  • Included CPU utilization guidance changes for Exchange 2016
  • Diskpart.ps1 and CreateDAG.ps1 now support ReFS
  • Moved DataMoveReplicationConstraint setting from CreateMBDatabases.ps1 to CreateMBDatabaseCopies.ps1
  • Revised all of the Distribution dialog controls to load their defaults from variables rather than use hard-coded values
  • The DAG name from the Input tab now flows through as the default on the Export DAG dialog
  • Updated Distribution tab dialog controls to persist the global catalog value during a session
  • Added conditional formatting for ReplayLagTime and SafetyNetThreshold
  • Removed 2013 from the name of the calculator

Fixes since version 7.6:

  • Fixed inaccuracies with “Number of Exchange Data Volumes per Server” input
  • Fixed calcActDBPDCWorst formula to take into account non-HA deployments
  • Fixed multiple dbs / volume calculation to take into account ReplayLagManager
  • Fixed calcNumDBCopyInSDC formula to take into account proper number of lagged copies
  • Fixed MaxPreferredActive not being displayed for A/A (Single DAG) site resilient solutions
  • Fixed an issue with Fail* buttons on Distribution tab when using some regional settings
  • Fixed an issue with volume path persistence on the Distribution tab Mount Points dialog

You can download the calculator here. For more information, please consult the list of changes here or Read Me here.

Exchange 2013 Server Role Requirements Calculator 7.6

Exchange 2010 Mailbox Role Sizing Calculator 16.4The Exchange team published an update for the Exchange 2013 Server Role Requirements Calculator as well. The new version number is 7.6.

Changes since version 6.6:

  • Added support for ReplayLagManager
  • Added support for PreferredMaximumActiveDatabases
  • Added new table that exposes theoretical CPU utilization for each mode (normal runtime, first server failure, second server failure, site failure, site failure + 1 failure)
  • Added Restore-DatabaseAvailabilityGroup scenario support in Distribution algorithm
  • Added warning about designs that include more than24 processor cores / server and 96GB of memory
  • Added support for DAGs without Administrative Access Point (default behavior is no administrative access point) in the CreateDAG script
  • Changed default for Deleted Item Retention in export file to be the highest profile value for Deleted Item Retention
  • Changed default for Circular Logging in export file to be true when using Exchange Native Protection
  • Added ability to save scripts and CSV files to OneDrive for Business
  • Fixed CreateDAG.ps1 script error for DAG creation without administrative IP address
  • Modified CreateMBDatabases.ps1 to ignore CircularLogging choice and modified CreateMBDatabaseCopies.ps1 to enforce CircularLogging choice
  • Fixed Export DAG list function to use the correct value for MaximumActiveDatabases
  • Added support for MaximumPreferredActiveDatabases and AutoDatabaseMountDial in Export DAG List function and createdag.ps1
  • Modified CreateMBDatabaseCopies.ps1 to remove sleep timer, improving copy creation significantly
  • Fixed createdag.ps1 to not generate an error when there is no alternate witness server provided

Fixes since version 6.6:

  • Fixed an issue that prevented the calculator from displaying results when site resilience was disabled while Active/Active (Single DAG) was selected
  • Changed Processor Cores/Server to not use a list drop down, thereby enabling customers to enter in configurations they are deploying.
  • Fixed bugs in Diskpart script with PrepareAutoReseedVolume switch and WhatIf processing
  • Fixed bug in Diskpart with escaping quotes in some languages
    Fixed bug with display of lag copies in single site design
  • Fixed multiple databases / volume calculation to take into account symmetric designs that utilize an odd number of servers in a single site
  • Fixed scenario to count number of servers in A/P scenario where the only copy deployed in DR is a lagged copy
  • Fixed #NAME error in Database Copy Configuration table for standalone configurations
  • Updated DC1 memory sizing to take into account site failure mode for A/A (Single DAG) designs involving a 2 copy architectures
  • Updated Distribution Tab error reporting and Lastrow calculation
  • Fixed copy count validation formula for site resilient scenarios to not allow more copies in the primary datacenter than the number of servers
  • Added support for 10TB and 12TB capacity disks
  • Fixed run-time error on distribution tab when disabling site resilience
  • Fixed distribution error when disabling cross-site failover
  • Fixed bug in Distribution tab ActiveServer formula when modeling Cross Site Failover behavior
  • Fixed an issue with the distribution tab throwing an error when two files were opened at the same time
  • Fixed distribution algorithm where lagged copies were not always represented correctly
  • Blocked unsupported A/A (Single DAG) scenario where copy count is not the same in both datacenters

You can download the calculator here. For more information, please consult the list of changes here or Read Me here.

Exchange data: NTFS vs. ReFS

chartFor Exchange, NTFS has been the file system of choice since time immemorial. In 2012, Windows Server 2012 introduced a new file system: Resilient File System or just ReFS. ReFS was designed to overcome some of the limitations of NTFS, in particular in the area of maintaining data integrity. More information on ReFS in comparison to NTFS can be found here.

At that time Windows Server 2012 went RTM, the latest version of Exchange, Exchange 2010, was not supported to run on ReFS. Present day, Exchange 2010 still doesn’t support ReFS. However, when Exchange 2013 entered the arena shortly after Windows Server 2012, it came with support for both NTFS and ReFS file systems. NTFS was still considered best practice, with ReFS being a supported option with the added recommendation to turn off ReFS’ integrity checking feature, and disabling it for Content Index-exclusive volume is optional. It may therefor come as no surprise that nearly all customers are deploying Exchange 2013 on NTFS volumes only.

That may change with Exchange 2016. As announced at Ignite 2015, for Exchange 2016 more emphasis will be put on following the Preferred Architecture design when deploying Exchange on-premises. The Exchange 2016 Preferred Architecture contains guidance to use ReFS formatted, BitLocker encrypted data volumes with Exchange 2016. The latter option is of course to protect organizations against theft of physical storage devices.

With some time to spare, I was interested to see what the impact would be on the storage performance when using NTFS or ReFS, and especially the performance penalty when enabling BitLocker on a volume. Similar to a comparison I did between Exchange 2010 and Exchange 2013 on different operating systems, I ran a JetStress 2013 test utilizing these 3 file systems to get a sense of what to expect.

The ESE engine files from Exchange 2013 CU8 were used for testing, along with the following parameters:

Mode Test Disk Subsystem Throughput
Thread Count 12 (fixed)
Min/Max DB Cache 32 MB / 256 MB
Ins / Del / Repl / Read % 40/20/5/35
Lazy Commits 70%
Run Background DB Maintenance True
Databases 1 x DB (186GB), 3 Copies
Running Time 2 Hours

Databases and logs were stored on a DAS SSD drive, and the volume was GPT partitioned with 64K allocation units. ReFS Integrity checking was disabled for the volume using:

Format-Volume –DriveLetter X -FileSystem ReFS -AllocationUnitSize 65536 -SetIntegrityStreams $false

The drive supported hardware encryption for BitLocker, which offloads encryption to the drive. You can verify that hardware encryption is used after enabling BitLocker on the volume by inspecting the BitLocker status using the manage-bde utility or Get-BitLockerVolume cmdlet:


As you can see from the EncryptionMethod property, this volume is protected using hardware-based BitLocker encryption. Perhaps needless to say, but the CPU performance penalty is substantial when using BitLocker with software encryption, and this mode is not to be used with I/O intensive applications like Exchange.

Note that if you deploy a Database Availability Group on ReFS formatted storage, and you want to use AutoReseed, you need to create or configure your DAG using the FileSystem parameter specifying ReFS, e.g.

New-DatabaseAvailabilityGroup -Name DAG1 -FileSystem ReFS

This makes sure that AutoReseed prepares volumes using the proper file system.

The results from the JetStress tests are show in the following table:





JetStress Version




Operating System


Overall Test Result





Achieved Transactional IOPS






Database Reads Average Latency (msec)






Database Writes Average Latency (msec)






Database Reads/sec






Database Writes/sec






Database Reads Average Bytes






Database Writes Average Bytes






Log Reads Average Latency (msec)






Log Writes Average Latency (msec)






Log Reads/sec






Log Writes/sec






Log Reads Average Bytes






Log Writes Average Bytes






Avg. % Processor Time






Some observations and notes:

  • ReFS caused a ~13-14% IOPS drop when compared to NTFS.
  • Using ReFS resulted in increased I/O latencies, especially write operations.
  • ReFS had a positive impact on the processor utilization, lowering average utilization by around 15%.
  • For some reason, average write latencies were lower using ReFS with BitLocker rather than without it (~10%).

Given the impact of file system choice on I/O performance and CPU utilization, I hope next versions of Exchange Server Role Calculator will feature an option to select which file system will be used to store Exchange data, as the difference in I/O performance and CPU utilization between NTFS and ReFS seems significant. Though this small test was performed with Exchange 2013 running on Windows Server 2012 R2, It could be that Exchange 2016 or the next version of Windows Server 2016 contain changes that will diminish the differences or perhaps even grant ReFS an advantage over NTFS. This is something we will only know after these products have shipped, something worth investigating later this year.

The JetStress reports can be found here.

I will finish with a short disclaimer: This test was only performed to get an indication of performance impact of using different file systems with Exchange 2013 utilizing identical hardware. The results are purely indicative, and not necessarily representative for other configurations nor meant to provide guidance or proof. Always test and validate your configuration using tools like JetStress before putting Exchange in production.

Ignite 2015, Takeaways

ignite ButtonDespite not being present, the information presented at Microsoft Ignite can be followed by monitoring certain sources on social media. Twitter still seems to be the platform of choice, but you may need to narrow down your stream of tweets using filters or only monitor a selected group of people. For example, the stream of tweets during the keynote using the hashtag #MSIgnite was overwhelming.

This post is an overview of things announced at Microsoft Ignite 2015 related to Exchange. Note that information presented at Ignite regarding Exchange 2016 was all subject to change as Exchange 2016 is still a work in progress.

Rumor on day 1 was that Microsoft Ignite is going to be in Chicago for the next 4 years as well. That is at least true for next year, as Microsoft announced that Ignite 2016 will be held in Chicago from May 9th to May 13th, 2016.


  • Exchange 2016 Public beta announced for Summer 2015. RTM is expected Fall/Winter 2015.
  • Customers can join the Exchange 2016 TAP program at
  • Office 2016 is now in Public Review, and is available at here.
  • Office Graph and Delve will be able to digest on-premises information via Hybrid connector and SharePoint 2016.


  • Exchange 2016 will only have the Preferred Architecture multi-role setup, so no more CAS or Mailbox server-only deployments. Visible in Setup UI as well as Unattended setup (roles parameter).
  • The Edge role will be available in RTM.
  • More emphasis on Preferred Architecture, which isn’t very different for Exchange 2016 from Exchange 2013:
    • DAG design with unbound symmetrical model.
    • Four database copies (2 in each DC), 3 database copies and one lagged copy (7 days).
    • FSW in Azure or 3rd data center (preferred).
    • Single NIC for client and replication traffic.
    • Use commodity hardware with 20-24 core/up to 196GB nodes, utilizing JBOD with large disks, multiple databases per volume, Autoreseed with hot spare and using ReFS formatted, BitLocked encrypted data volumes.
    • Office WebApp Server farm in each DC with bound namespace and affinity.
  • Exchange 2016 MAPI/CDO is death – use RestAPI’s or Exchange Web Services (EWS).
  • MAPI/HTTP will be the default client protocol for Outlook with Exchange 2016. MAPI/HTTP will be a per-user setting in Exchange 2016. For Exchange 2013, the per-user setting will be introduced with a future CU.
  • Office WebApp Server required to view or edit Office documents from OWA 2016.
  • When required, scale up by add another node rather than scale up by adding resources like CPU or memory.
  • DAGs spanning more than 2 data centers are not recommended.
  • Use public and private namespace for Exchange 2016 Outlook Anywhere to leverage Kerberos for internal authentication.
  • For Exchange 2016, claims-based authentication will require Windows 2016 ADFS (version 4?).
  • The Exchange team put up a blog post on Exchange 2016 architecture here.

image image


  • Exchange 2016 can proxy traffic from Exchange 2013 (down-level proxy)  and vice-versa (up-level proxy). This means you don’t have to upgrade Exchange servers in your internet-facing site prior to upgrading other locations. Up-level proxy transition is preferred.
  • Exchange 2010 to Exchange 2016 transition path is same experience as Exchange 2010 to Exchange 2013. Regarding Kerberos authentication, check guidance here.
  • Exchange 2016 can co-exist with Exchange 2010 SP3 RU11+ or Exchange 2013 CU10+. Exchange 2013 + 2016 can share one single Alternate Service Account (ASA) for Kerberos authentication.
  • There is no co-existence possible with Exchange 2007, which means you will need to perform a double-hop migration if you want to transition from Exchange 2007 to Exchange 2016.
  • Exchange 2016 will support installation on Windows Server 2012 R2 and Windows Server 10 (2016).
  • Exchange 2016 will require Windows Server 2008 R2 Forest and Domain Functional Levels or up, running at least on Windows Server 2008 R2 domain controllers.
  • Exchange 2016 will support at least Outlook 2010 SP2 with KB2956191 and KB2965295, Outlook 2013 SP1 with KB3020812, and Outlook 2016 desktop clients.
  • Exchange 2016 will require .NET Framework 4.5.2. Scalability improvements coming in .NET Framework 4.6 (release candidate in preview, don’t install yet).
  • Office WebApp Server can’t be installed on Exchange 2016 server, and requires web publishing through bound namespace (and thus possibly certificate implications) anywhere you want to work with attachments from OWA 2016. Don’t expose internal Office WebApp namespace externally. Use Set-OrganizationConfig -WACDiscoveryEndpoint and restart MSExchangeOWAAppPool to configure Office WebApp Server for OWA.
  • Certificate names required:
    • Exchange 2010 + 2016: Bound= 12, Unbound= 7
    • Exchange 2013 + 2016: Bound= 10, Unbound= 7
    • Exchange 2010 + 2013+ 2016: Bound= 10, Unbound= 7
    • Of course, internal MAPI endpoints do not require entry on certificate.
  • Use a dedicated Active Directory site to install and configure Exchange before moving them to a production site.
  • Exchange 2013 and Exchange 2016 introduce new OAB, specify existing OAB on all mailbox databases before installing Exchange 2013/2016.
  • After introducing Exchange 2016 to your environment, move the SystemMailbox{e0dc1c29-89c3-4034-b678-e6c29d823ed9} system mailbox to Exchange 2016, or you won’t be able to export admin audit logs, perform In-Place discovery searches etc.
  • When dimensioning your Exchange deployment, use the calculator.
  • By disabling an Anti-Virus product for troubleshooting, you don’t remove their filter driver. Uninstall if you suspect AV product, or use fltmc to list or unload filter driver.
  • Recommended to set lagged copies to 7 days delay.
  • Exchange 2016 will allow adding mailbox database copies with ConfigurationOnly to postpone automatic seeding. Fast Database Reseeds allows for up to 10 parallel reseeds.
  • On the Exchange server configuration:
    • Use “High Performance” Power Plan.
    • Disable Hyperthreading in physical deployments.
    • Use battery-backed storage controller with 1:3 Read:Write ratio.
    • For RAID, use stripe sets of 1+ factors of 256KB
    • Use GPT partitions
    • Host Exchange binaries on NTFS with 64K cluster size.
    • Host Exchange data on ReFS volumes with Data Integrity Feats disabled.
    • Use BitLocker to secure Exchange volumes.
    • Use JetStress with BitLocker and Virus Scanner if you’re going to use those in production.
    • Do not disable entire IPv6 stack.
    • Do not disable Exchange services post installation.
    • Do not restrict the dynamic TCP port range, e.g. do not use ‘netsh int ipv4 set dynamicport tcp startport=X numberofports=Y‘.
    • Use Exchange Health Checker script to verify configuration, available here.

Exchange 2016 Client Connectivity rpcreq


  • Exchange 2013 deployments are now supported on Azure IaaS virtual machine for production environments when using Azure Premium Storage. Amazon AWS is not supported. Most cost-effective remains Exchange On-Premises on physical hardware (or Exchange Online). Official guidance has been updated to reflect this here.
  • When virtualizing Exhange:
    • Do not use memory overcommit.
    • Hyperthreading is OK, but size for physical cores.
    • Do not oversubscribe CPUs, causes queue growth, increased IOPS due to lower indexing throughput, RPC latency issues.
    • Size like physical deployment, but add overhead for CPU (10%).
  • Exchange 2013 now supports Dynamic VHDX (not VHD!) disks for Hyper-V deployments. Will apply to Exchange 2016 as well. JetStress tests showed only 2% additional writes penalty for VHDX (for VHD 20%).


  • Exchange 2016 will require 22% lower IOPS when compared to Exchange 2013 RTM. That means that since Exchange 2003 with 1 IOPS per mailbox, we are down to 0.04875 IOPS per mailbox.
  • Search index will use passive database copies for indexing, instead of copying indexes from the active copy.
  • Delayed LAG play down, depending on disk health (delayed if disk latency more than  20ms). Replay Lag Manager will be enabled by default, for automatic play down of lagged copies when insufficient copies remain available.
  • Usage of ReFS for Exchange data volumes should result in less corruption, thus less reseeds or rebuilds. Exchange 2016 can detect database corruption through DB Divergence Detection. Loose Truncation will make sure Log Files won’t fill up disk space after extended outages.
  • Exchange 2013 and later will report more accurately on mailbox sizes. Accommodate for 30% increase when moving mailboxes from Exchange 2010 or earlier.
  • Autoreseed in Exchange 2016 can fix a single database on a volume.
  • Exchange 2016 Workload Management (WLM) adds Disk Latency Monitor. Can throttle non-critical workloads based on measured disk latencies.
  • Exchange 2016 adds predictive controller or hard disk failure, based on disk read and write latency trends, bad block detection or disk failures.

Exchange IOPS


  • Database Availability Groups are now by default deployed without an cluster administrative access point or cluster name object (CNO). This reduces complexity and dependencies, but you may need to check with for example your backup vendor as many 3rd party products still access Exchange through this CNO.
  • Exchange 2016 database fail-overs will be 33% faster. Given that Exchange 2013 database fail-overs are about 10 seconds, that should mean they are down to 6-7 seconds.
  • Recommended load-balancing configuration for Exchange 2016 is single namespace, Layer 7 and no affinity. Use load balancer with per-service monitors and features like Slow Ramp (F5) or Least Connections with Slow Start Time (KEMP) to grant servers time to initialize and warm-up.
  • Office WebApp Server requires affinity on the load-balancer.
  • As Exchange 2016 can proxy traffic to Exchange 2013 and vice-versa, both versions can co-exist in the same load balancer server pool.
  • Get-MailboxServerRedundancy allows to prioritize repairs and upgrades by inspecting the DAG member servers, database copies and their state.



  • You can manage Exchange 2016 objects from Exchange 2013 Management Shell and Administrative Console and vice-versa. Limited for Exchange 2010, recommended to use Exchange 2010 management tools to manage Exchange 2010.
  • An Exchange 2013 Managed Availability tool was released (MATS) to assist in troubleshooting and diving in the Management Availability related events. The tool is available here.
  • ExMon, the Exchange Server User Monitor, will be back.
  • Exchange 2016 Workload Management introduces policies to limit or block mailbox moves during peak hours.

Exchange Limit Moves

Public Folders

  • Modern Public Folder migration scripts in $exscripts folder are likely to be outdated. Always use the latest Modern Public Folder migration scripts, which are available here.
  • It’s recommended to host Modern Public Folders in dedicated databases.
  • Modern Public Folders are here to stay, but emphasis will shift to Office 365 Groups. Groups are also expected to replace Distribution Lists. Distribution List naming policies will help enforcing naming policy on Groups. Tool named ‘Hummingbird’ to be made available to move from DL to Groups, or script conversion using new UnifiedGroup cmdlets.


  • Exchange 2016 will allow you to put Public Folders on In-Place Hold.


  • Modern attachments in Outlook 2016, Exchange 2016 and SharePoint 2016 allows on-premises customers to offload attachment storage to SharePoint, just sending a link and setting permissions through Outlook. Also, Outlook 2016 contains a convenient MRU list to select recently touched Office documents as attachment. Note that SharePoint is on the roadmap for 2016, which could imply that modern attachments will not be available when Exchange 2016 RTM’s.
  • OWA 2016 will contain a revised ribbon with additional buttons to triage e-mail more quickly, e.g. for archiving or sweep (similar to functionality currently found in formerly known as Hotmail). It also contains an Undo button.
  • Outlook 2016 and Exchange 2016 will use always search online. Hopefully this will result in consistent search results between Outlook, OWA and ActiveSync devices.
  • Being able to restore items from the recoverable items with folder preservation is on Microsoft’s radar.

Exchange Hybrid

  • Hybrid Configuration Wizard is now downloadable app, similar to previous OAuth configuration step in HCW. It works with Exchange 2013 and Exchange 2016 deployments, contains AADSync multi-forest support, and OAuth enhancements for MFA configuration. Allows team to introduce changes more quickly.
  • When configuring Hybrid, point your MX records to Exchange Online Protection (EOP) to prevent possible issues with SPF, DMARC or DKIM. This however requires EOP licenses at day 1.
  • 3rd party SMTP gateways sitting between Exchange On-Premises and EOP is not supported.
  • New Hybrid Migration troubleshooter can be found here.
  • Be advised that Exchange Hybrid is not compatible with Alternate Login ID or AlternateID for short. More information here.

Exchange Online / Office 365

  • Exchange Online runs 50.000+ servers hosting 1.2M database copies. Every month, 3.5M database fail-overs occur, 100’s server fail, while adding 1000’s of servers. Still, Exchange Online maintains an availability rate of 99.95%!
  • The Office 365 first release option, which will receive updates and new features first, will have the option to enable this option for the entire organization or per user.
  • Document Tracking now live in Office 365 and clients when using the Azure RMS connector. More information here.
  • Latest Azure Active Directory Sync has password write-back, so passwords changes in Office 365 are synced back to Active Directory on-premises. Get it here.
  • Currently in preview for Azure Active Directory Sync are user write-back (user created in Office 365 is synced back to Active Directory on-premises) and Groups write-back.
  • Office 365 to introduce dynamic Office 365 Groups, which will utilize recipient filters against Azure AD, and auto-expiring and other controls for Office 365 Groups housekeeping.

Note that you can download the Ignite session videos and slides for offline viewing as they become available. A script to accomplish this is available here.

Special thanks to Jeff Guillet, Dave Stork, Andy David, Tony Redmond, Bhargav Shukla John Barsodi, Nathan O’Bryan, John A Cook, Greg Tiber, Ingo Gegenwarth, Richard Hay, Jetze Mellema and Randall Vogsland for keeping us Exchange peeps updated from Ignite!

End of Exchange 2010 Mainstream Support

Exchange 2010 LogoWith all the media attention for Windows 7 going out of mainstream support, one might forget today also marks the end of mainstream support for Exchange Server 2010.

Exchange 2010, which was released in October, 2009 (which seems centuries ago now), and which still has a very large installed base, is going into the extended support phase.

Depending on your support contract, this means Microsoft will no longer provide free support for this product. Patches for security issues will still be available, and owners of premier support contracts are eligible for non-security updates through extended hotfix support option.

Exchange Server 2010 will reach end-of-life on January 14th, 2020.

Exchange and NFS – A Rollup

imageA short write-up after some recent articles which were published to clarify and emphasize Microsoft’s current position on virtualization and the support for storing Exchange information on NFS volumes. I will stick to the headlines, as the topic has already been touched several times by people from the Exchange community, after which I would mostly be repeating things that have already been said. Yet, many customers still have the perception that Exchange on NFS is supported or are actually running this configuration, often the result of a push from the storage or virtualization vendor. As it is not, I will repeat key information here to counter misleading information, hoping it might prevent customers from selecting unsupported configurations.

End of last year, a lively discussion was revived on some distribution lists and forums on why NFS was still not supported for storing Exchange information. However, it was all speculation as the creator of the product did not take part. The official support statement was (and is) that Exchange is not supported on NFS and only block-level storage is supported. Tony Redmond did a write-up on that here.

Then, in the preamble of the Microsoft Exchange Conference 2014, a ‘suggestion’ to support NFS was put on the community ideascale site, where people can propose suggestions for Exchange. This site is not an official channel but it does provide a way for the community to gather suggestions and check for demand. So, it allowed to verify if the current lack of NFS support was major thing or not, as people producing the most noise do not necessarily represent the majority. Response seemed limited, except for some hardware vendors who made lots of noise, possibly in an attempt to get traction in the Exchange community.

Then, Tony did a follow-up article after a discussion with Jeff Mealiffe, knowledgeable on Exchange, Sizing and Virtualization and nicknamed ‘The PerfGuy’ for obvious reasons. In the article, the problem areas of NFS are set out. Interestingly (but not surprising), Exchange is similar to SQL Server from a storage perspective, the latter having very specific documentation regarding storage requirements. Also mentioned is that successfully running JetStress by the vendor is no indication on the supportability of storage configurations. After all, that JetStress succesfully runs for a certain amount of hours is great, but it is a storage performance validation tool, not a storage supportability validation tool. At the Microsoft Exchange Conference 2014, using arguments presented earlier in the article, Jeff reaffirmed the non-support of NFS in his presentation.

The discussion seemed to die down until few weeks ago when Tony was in a Twitter conversation with one Josh Odgers, engineer at one of the storage vendors. In the discussion Odgers dropped the rationale and even went so far as to insult people. When searching online, you will find other rants as well, so I guess Josh’ employer does not have any form of social media guidelines for their employees. That does not help when you are trying to lobby for your cause (and potential markets for your storage appliances). Tony wrote an extensive response here, I recommend checking it out.

Now what storage vendors and their employees do or do not do is up to them. However, things like this may become an issue when vendors repeatingly and knowingly position their storage solution as a supported alternative to customers, like for example Odgers does for Nutanix (NDFS is Nutanix’ proprietary distributed NFS implementation). Yes, I’m sure it flies like a rocket and I am sure some customers will be persuaded by sales people to a game of chance by running Exchange on their appliances. As an Exchange consultant however, I prefer supported solutions and so should you. Or have a serious chat with the Risk Manager.

Update (Jul 9,2014): The UC Architects fellow Mahmoud Magdy posted a blog on his experiences and encountered limitations of storage appliances such as Nutanix here.

Clutter in the Gutter?

At the Microsoft Exchange Conference earlier this year, the Office team introduced us to some nice features which were under development at that time. These features are part of Office Graph, a machine learning feature set meant to make the end user experience more personal and contextual as part of the Enterprise Social initiative.

imageIn the keynote, during a “Geek out with Perry”, Perry (Corporate VP for Microsoft Exchange) mentioned that the “Cloud First” approach allowed Microsoft to implement features step by step, with the option of reverting not-so-good changes. In the end, this should also result in a better product for the on-premises customer when releasing new Exchange builds, and ultimately Exchange v.Next (the next version), as they would not receive the not-so-good changes. It was mentioned several times, also in individual sessions on Office Graph features like Clutter and Groups as well, that these features would be “cloud-first” but there was “no ETA yet” for Exchange on-premises. At that time, most of us leaving MEC did that with the impression that all these features, at some point, would make it to Exchange or Exchange v.Next.

Apparently we got hold of the wrong end of the stick. Last week this article appeared on Network World, where in an interview with Julia White (GM Office Marketing) she mentioned that Clutter would not make it to “Office Server”, which seems to be the term for the on-premises deployments of the Exchange, Sharepoint and Lync Server triplet. This was a bit surprising, given the information received at MEC. The reason given in the article for this deviation was that Office Graph is too “compute intensive” to include on a Office Server. I assume to preempt any sounds on being forced to the service, Julia states that, “It’s not capricious favoritism toward Office 365 customers.” This is more or less in line with Microsoft’s earlier statements, on not having plans to stop delivering on-premises releases of Exchange (v.Next). In the discussion that followed on Twitter, Julia confirmed that “Clutter won’t make ExServer v.Next unfortunately.”

File:Classic shot of the ENIAC.jpgThe scale of Office 365 is incomparable to the average business running Exchange, Sharepoint and Lync on-premises and the amount of information that needs to be processed for Office Graph. And I can’t help it, but looking at the ‘compute intensive’ argument brings back memories of computer rooms where big monolithic systems offered computing powered easily surpassed by today’s tablet. With Clutter being expected for later this year and vNext next year, that is a considerable window. Some claim that Moore’s Law is obsolete and we also can’t expect to be running Skynet from home next year but still, computing power increases and I know of some customers who would just get the additional hardware onboard to facilitate those extra features. In addition, Clutter can be enabled on a per-user basis anyway.

In a more or less opposite statement, Julia is quoted saying, “Our philosophy is anything we technically can ship in servers, we will. We want our server customers and our cloud customers to have as much as we can ship to them. If it’s possible technically and it’s feasible then we’ll put it in the servers.” I think the reason for not adding Clutter should be sought in the hints Julia provided in the 2nd part of the article. With on-premises customer not following or even delaying upgrading to current versions of Microsoft’s products, Exchange, Sharepoint, Lync and clients, makes it hard to ship and support product transcending features, especially if this requires the latest (and greatest) version.

Think Site Mailboxes, more or less the predecessor of the announced Groups feature of Office Graph. Implementing Site Mailboxes requires Exchange 2013, Sharepoint 2013 and Outlook 2013 and additional configuration to integrate the Exchange and Sharepoint products. In the field, I see very low adoption of Site Mailboxes. Many customers are running older product levels (blocking implementation) or it’s a more elementary reason like not having deployed Sharepoint. But then, for those that are running Site Mailboxes, it adds value. Isn’t that what this is all about? Note that for the compliance discovery feature to work, proper configuration of Exchange, Sharepoint and Lync is required as well, but compliance is perhaps is a better selling point than clutter or one of the other Office Graph features could ever be.

“Assumption is ..” are the first words of a well-known saying. For the future, don’t expect anything you see announced for Office 365 to be ported to the on-premises Exchange releases, even though that product stems from the same code. Then again, features might get dropped, for reasons provided above or just because they were not ready. That’s nothing new and we got accustomed to a little disappointment now and then. In the case of Clutter, it’s a shame because it looked like a neat feature to work more efficiently through e-mail without configuring tons of rules. In the case of Groups, it is confirmed for v.Next, but you never know for sure until it is released. Meanwhile, Microsoft should maybe try to prevent confusion by demonstrating Clutter a.o. in sessions called “What’s new in Exchange“.

If you got an opinion on these changes in course or feature drops, please share them in the comments.

Exchange Server 2003 †

ex2003eeHóka-héy! Today is a good day to die(*).

With all the media attention for Windows XP support coming to an end today, one might forget that today also marks the official death of Exchange Server 2003 as the extended support phase ends for one of the products many of us developed a love-hate relationship with over the years. In addition, extended support for Office 2003 also ends today.

Reaching the end of extended support means that as of today, those products are no longer supported and will no longer receive security patches. Therefor, organization running Exchange Server 2003 or using Outlook 2003 might be exposed to security risks.

Of course there is an exception to this rule, depending on how deep your pockets are. Organization neglecting or ignoring the upcoming demise of products for some period can continue to receive support for a hefty price. For example, the UK government paid $9m for an additional year of Windows XP, Office 2003 and Exchange 2003 support, and the Dutch government paid an undisclosed amount for an additional year of Windows XP support for around 40,000 systems. Ironically, the Dutch National Cyber Security Center NCSC, part of the department of justice, warned citizens to stop using Windows XP and upgrade.

For organizations still running Exchange Server 2003, there is nothing to be ashamed of as there are occasional sightings of Exchange 5.5 out there. When you think about upgrading, be advised that there is no direct upgrade path to Exchange Server 2013 and you either need to perform a double hop migration through Exchange Server 2007 or Exchange Server 2010 (recommended) or migrate to Office 365 as an alternative.

*) A battle cry attributed to Crazy Horse


Ex2013 LogoMicrosoft published three sessions from the Redmond Interoperability Protocols Plugfest 2013 on Channel 9 on the protocol MAPI over HTTP or MAPI/HTTP which looks scheduled to arrive with Exchange 2013 Service Pack 1.

This protocol is set to (over time!) replace the RPC/HTTP protocol we all know. RPC/HTTP, or Outlook Anywhere, is used by Outlook to communicate with Exchange Server and is most often seen with clients working remotely. With Exchange Server 2013, support for MAPI was dropped and RPC/HTTP became the only protocol. With Exchange 2013 SP1 it seems we will receive an alternative which is set to replace RPC/HTTTP, MAPI/HTTP.

Of course, the information is preliminary and subject to change as Exchange 2013 SP1 hasn’t been released yet, but it won’t harm to get familiar with the planned changes. It also remains to be seen how quick organizations will adopt this new protocol, which I’m pretty sure we will soon see getting supported by Office 365.

MapiHttp in Exchange 2013 SP1
Joe Warren, Principal SDE at Microsoft delivering a presentation covering the Exchange 2013 MapiHttp protocol implementation in Exchange 2013 SP1. Topics: What is MAPI-HTTP?, Why do MAPI-HTTP?, Goal of MAPI-HTTP, Why not rebuild with EWS?, Existing RPC-HTTP, New MAPI-HTTP, What does a MAPI-HTTP request look like?, What does a MAPI-HTTP response look like?, Session Context, Request Types, Sequencing & Protocol Failures. Click here.

Outlook 2013 Client Protocols
Shri Vidhya Alagesan, SDE at Microsoft presenting on Outlook 2013 Client Protocols from a client’s perspective. Topics: Client side view of Outlook-Exchange MAPI-HTTP protocol using WinHTTP, Error Handling & RPC Vs. MAPI-HTTP with sub-topics of Architecture Overview, Outlook & WinHttp, Cookies, Connection Status Dialog, Timeout, Pause/Resume & Protocol Switching. Click here.

Exchange 2013 Protocols
Andrew Davidoff, Senior Software Developer Engineer in Test at Microsoft presenting on the Exchange 2013 protocol families and important protocol updates for Exchange 2013. Click here.

Apart from these sessions on protocol change announced for Exchange Server 2013 SP1, Microsoft also published some other interesting Exchange-related sessions:

Exchange 2013 Web Services Overview
Harvey Rook, Principal Development Lead, and Naveen Chand, Senior Program Manager Lead, deliver a presentation on Exchange Web Services best practices. Click here.

Exchange RPC and EWS Protocol Test Suites
Jigar Mehta, Software Development Engineer in Test provides an in depth overview of the test suite packages for the Exchange RPC and Exchange Web Services protocols. Click here.

TechNet Subscriptions Changes

In the wake of Microsoft’s announcement to retire TechNet and more recently cancelling the MCM/MCSM/MCA certifications, Microsoft is offering some changes in the TechNet area, in what looks like a move to regain some trust from the community.

After the TechNet retirement announcement, in which Microsoft suggested IT Pros to switch to the far more expensive MSDN subscriptions, use time-bombed eval software or make use of the very limited Virtual Academy and Virtual Labs, the community cried foul which resulted in initiatives like a petition which currently has received over 10,000 signatures (if you haven’t signed yet, please do so).

The changes announced today are published in full here. In short:

  • Non-Volume Licensing program particpating subscribers who were active on September 1st, 2013 who’s subscription expires on or before September 30th, 2014, may extend their subscription for another 90 days for free;
  • 180 day limited previous versions of software will be made available through the Evaluation Center. No details yet on the number of software generations that will be made available.
  • Microsoft Certified Trainers (MCT) will also get a 90 day extension for their TechNet Professional subscription. In addition, a replacement is in the works in which MCT’s get access to non-time-bombed software for instructional/training purposes.

While still short of the original subscription, Microsoft is moving. However, if they can quickly make arrangements for MCTs, why not for IT Professionals and their TechNet subscriptions?

Looking at the way many fellows, myself included, work, that 180 day time-bombed is pretty useless or at least annoying and time consuming (like if I have nothing better to do than to redeploy and reconfigure lab environments).

With MCT nowadays mainly being a registration and fee donation process, I won’t be surprised to see a lot of “paper MCTs” after January, 2015 (September 2014 + 90 days) if the situation stays like this.

What do you think? Are these changes satisfactory?