This I learned today.
I really liked the way Microsoft designed it. The procedure outlook 2007 uses for connecting to it’s nearest CAS server is something similar to DCLOCATOR process in Active Directory. When you install a Exchange 2007 CAS in a forest, it creates a SCP (service connection point) in Active Directory. The no. of CAS SCPs is directly proposal to no. of CAS servers you have in Exchange organization. That means, each exchange CAS role installation creates a SCP in active directory. This SCP object will have information about auto discovery URL (ex: https://cas01.yourdomain.com/autodiscover/autodiscover.xml) and the active directory site name to which CAS server belongs to along with other parameters. This site information plays key role in making outlook 2007 connect to it’s nearest CAS server. Go through the below steps for process outlook 2007 follows for connecting to Auto Discovery Service.
- Outlook 2007 sends a LDAP request to Active Directory for list of CAS SCPs
- Outlook 2007 divides the received list of CAS servers into two lists namely, “in-site” list and “out-of-site” list of CAS servers. The “in-site” list is the one which has CAS servers belongs to Active Directory site from where Outlook 2007 is initiated and “out-of-site” list will have remaining all CAS servers in Exchange organization.
- After sorting the “in-site” list, outlook starts connecting to each CAS server through Auto Discover URL. It goes to next server if incase of errors with first one. Like this it completes the list until it finds a responding server. If none of the servers are responding, it will sort the “out-of-site” list by SCP creation order and tries to connect to them one by one until it finds a responding server.
- The outlook will continue to fetch free/busy, OAB, and other information if it finds a CAS server which is online.
- In case of failures of above attempts, outlook will try by connecting to predefined URLs(https://autodiscover. yourdomain.com/autodiscover/autodiscover.xml or https:// yourdomain.com/autodiscover/autodiscover.xml) using DNS name resolution. If it still fails, it tries to query using SIP DNS records and it cannot do any more if that also fails J
Refer to white paper on Exchange Discovery service to know more about it.