The Exchange Server 2003 SP2 DSProxy service tries to refer the Outlook client to a global catalog server that is available, supports the protocol that is used by the client, and resides in the mailbox owner’s home Active Directory domain. For DSProxy to find a global catalog server that meets those requirements, DSProxy scores the desirability of a particular global catalog server based on the following constraints:
-
Constraint 1 A global catalog that is available (RPC ping) – 16 points
-
Constraint 2 A global catalog that supports the client's protocol – 8 points
-
Constraint 3 A global catalog that belongs to the user's domain – 4 points
-
Constraint 4 A global catalog that is in the same Active Directory site as the Exchange server – 2 points
-
Constraint 5 A global catalog that is one of the global catalogs that the Exchange server is currently using – 1 point
DSProxy distributes the global catalog servers that have the most points first, and sequentially allocates resources if there is a tie.
Constraint 1 is computed every five minutes and is configurable through changing the LdapKeepAliveSecs registry key. Constraints 2 and 3 are "dynamic" because they must be computed every time that a client demands a referral. Constraints 4 and 5 are "static" because they are computed one time for each global catalog and then stored.
Constraint 5 is also known as the incarnation list. When DSAccess initializes, it builds an incarnation list of 10 in-site global catalog servers that it can use. If all in-site global catalog servers are unavailable, DSAccess builds an incarnation list of 10 out-of-site servers from the directly connected sites, starting with the site that has the lowest site link cost. Because of the constraint ordering, DSProxy prefers servers in the incarnation list of DSAccess so that by default, it will prefer the 10 servers that have the lowest site link cost. However, DSProxy has a list of all global catalog servers in all directly connected sites and only uses membership in the incarnation list to assign points to servers.
The following figure shows the scenario where there are two domains, Exchange Domain and UserDomain.
In this scenario, the global catalog servers will be assigned the points by the DSProxy service as shown in the following table. Be aware that the assumption is made that all global catalog servers are up and responsive in the Exchange Active Directory site.
|
Server
|
Active Directory site
|
In-Use by DSAccess?
|
Total points by constraint value
|
|---|
|
UserDomain GC1
|
Client Active Directory site
|
No
|
16+8+4=28
(1, 2, 3)
|
|
UserDomain GC2
|
Client Active Directory site
|
No
|
16+8+4=28
(1, 2, 3)
|
|
UserDomain GC3
|
Active Directory site B
|
No
|
16+8+4=28
(1, 2, 3)
|
|
UserDomain GC4
|
Active Directory site B
|
No
|
16+8+4=28
(1, 2, 3)
|
|
Exchange Domain GC1
|
Exchange Active Directory site
|
Yes
|
16+8+2+1=27
(1, 2, 4, 5)
|
|
Exchange Domain GC2
|
Exchange Active Directory site
|
Yes
|
16+8+2+1=27
(1, 2, 4, 5)
|
|
Exchange Domain GC3
|
Active Directory site A
|
No
|
16+8=24
(1, 2)
|
|
Exchange Domain GC4
|
Active Directory site A
|
No
|
16+8=24
(1, 2)
|
|
Exchange Domain GC5
|
Active Directory site B
|
No
|
16+8=24
(1, 2)
|
|
Exchange Domain GC6
|
Active Directory site B
|
No
|
16+8=24
(1, 2)
|
Note: |
|---|
|
As you can see from the table, Exchange Domain GC7 and UserDomain GC5 are not included because they are not directly connected to the Exchange server’s Active Directory site. In other words, the Exchange server never uses those global catalog servers for DSAccess or DSProxy functions.
|
From this example, you can see that this algorithm may prioritize an out-of-site global catalog server over an in-site global catalog server, which differs from typical pre-SP2 DSProxy behavior.
In this example, Exchange Server provides the UserDomain global catalog servers to the Outlook clients (in a sequential manner to load-balance requests) because those global catalog servers have a greater point calculation than the Exchange Domain global catalog servers. This means that Exchange can now refer clients to out-of-site global catalog servers (but only those that are directly connected to the Exchange Active Directory site) if there are no mailbox home-domain global catalog servers available in the Exchange server’s Active Directory site. In this particular example, the Outlook client could receive a referral to a UserDomain global catalog server that is located in Active Directory site B or the Client Active Directory site.
Additionally, if all the UserDomain global catalog servers were unreachable (that is, those servers failed Constraint 1), DSProxy would refer the Outlook clients to the global catalog servers that reside in the Exchange Active Directory site, because they have the next highest point cost.
For more information about post-SP2 DSProxy referral, see the Exchange Server Team blog article Exchange 2003 post-SP2 DSProxy Referral Update.
Note: |
|---|
|
The content of each blog and its URL are subject to change without notice.
|