Tuesday, July 7, 2009

How Free/Busy With Public Folders Works

In this post I'm going to give some insite into how free/busy with public folders works, as not many people understand this process.

The standard generation of free/busy data is not done by the exchange server! This is actually done by the outlook client itself. Outlook 2003 does it every 45 minutes, outlook 2007 does it every 15 I think, I'm not 100% sure on Outlook 2007. If your running Outlook 2007, this will use the availability service unless the users mailbox is exchange 2003 or an administrator has manually configured public folders over the availability service in powershell.

Here is the process outlook goes through for updating this data:

1. End user updates their Calendar with a new appointment
2. Outlook determines that the Calendar has been dirtied and goes to update Free Busy; or we hit the user defined publishing interval.
3. Outlook uses the users LegacyExchangeDN to determine what Public folder it will publish the information in.
4. Outlook makes a connection to the public folder server and locates the nearest replica of the appropriate folder.
5. Outlook overwrites any existing Free Busy data with a new Free Busy message containing the current information

You can manually force outlook to update this data by running outlook /cleanfreebusy

What if the user updates their calendar via Outlook Web Access or Active Sync aka Outlook Mobile Access?

If a user updates their calendar via one of these methods, what happens is the public folder free/busy data on the server is updated by an Exchange 2003/2007 mailbox server instead. This is done by MSExchangeFBPublish which runs as part of the System Attendent Service that can be found on any Exchange 2003 server or Exchange 2007 mailbox server with legacy support. For Exchange 2003 the file that actually does the work is the madfb.dll file which is loaded through mad.exe.

If your running public folders for distribution of Free/Busy it is good to set all your mailbox databases to point to a single public folder database for all servers. This means that there is no delay on public folder replication meaning users will see updated Free/Busy at a more rapid rate. If you want Free/Busy to be distributed at a faster rate you need to use the Exchange 2007 availability service as this stores the free/busy information in the users mailbox itself instead of public folders. For more information on why Free/Busy is so slow updating on Exchange 2003 please see: http://clintboessen.blogspot.com/2009/07/why-does-it-take-so-long-for-my.html

1 comment:

  1. Thanks a lot , i have trying to understand this...