Blog Post

Exchange Team Blog
5 MIN READ

OAB version 4 in Exchange 2003 service pack 2 (SP2)

The_Exchange_Team's avatar
Aug 01, 2005

OAB Version 4 is a new addition to the Offline Address Book infrastructure. It was designed to help remove most Outlook OAB download related problems

 

Once Exchange 2003 Service Pack 2 has successfully been installed on to the Exchange server, it will have the ability to create the OAB Version 4 folder. The location for this new container will be as follows:

 

 

However due to the new functionality that has been added, Outlook clients will not be able to use or download the new OAB v4 until they have installed Outlook 2003 SP2. 

 

Some of new OAB v4 features include:
    1. The ability to generate local specific indexes based on the OAB.
    2. Using the new Binpatch logic for applying multiple days worth the diff files.
    3. The use of new LZX compression. This is the same compression that is used for download Windows Updates from the web
    4. Sort orders for ANR and Browse files.

 

For an Outlook client to get the Unicode OAB (OAB version 3a or 4), the Outlook profile must be configured to use Unicode.

 

    - If Outlook is running Unicode Mode, Outlook will get Unicode OAB, and if not available, fall back to ANSI OAB (OAB version 2).
    - If Outlook is running ANSI Mode, Outlook will always use ANSI OAB (OAB version 2).

 

One way to check this is from the advanced properties tab for Email Accounts:

 

 

Here are the improvements of the new OAB version; more detailed information on some of those will follow:

 

    - Fewer situations that result in a complete OAB full download (PDN Changes and the 1/8th threshold rule)

 

Currently (pre Exchange 2003 SP2) there are two known issues that can cause full OAB downloads:

 

Problem 1: The addition or removal of a PDN (Parent Distinguished Name) in the active directory. When the OAB Generation process is building an address list it will split the ExchangeLegacyDN and SMTP addresses in to two separate parts (1. PDN / 2. RDN). Currently the OAB Generation process has problems handling the addition / removal of the PDN, and this will cause OABGen to skip one day’s differential build.


Problem 2: Total directory changes exceeding 1/8th the size of the OAB. This is one of the biggest client performance issues. The bigger the OAB files become the longer they will take to download to the client. In Exchange 2003 RTM the OAB differential files contain the entire users record, even if the changes were minimal.

 

Now in OAB Version 4 we will use Binpatch technology to get around above issues. Please read on!

 

    - OAB Version 4 will now use a new technology called Binpatch (Binary Delta Compresion)

 

With the addition of Exchange 2003 Service Pack 2 we introduce two new files (binpatch.oab and data.oab). This new technology allow gives us the ability to apply multiple days worth the diff files to a client.

 

Binpatch.oab - contains the incremental changes from the previous day.
Data.oab - Contains the data from all merged diff files.

 

Listed below is the new format used for download and applying OAB files to an Outlook client:

 

1. The Exchange server will generate a binpatch.oab v4 file each day using for the current data.oab file using the Binpatch technology from the previous days’ data.oab file. This new OAB format will follow the same sequence numbering as the current technology when using these new files. The binpatch file is nothing more than a delta of the data.oab from the previous data.oab file. It is completely unaware of the properties or records that got changed.

 

2. Outlook will download the data.oab file from the server on the first day and subsequently only downloads the binpatch.oab file from the Exchange server.

 

3. In order for an Outlook client to update it’s OAB the client will need to download all the binpatch.oab files from the server to upgrade to that version. Once this has been completed it will apply these to the data.oab file.
 
4. After applying updates to the data.oab file the Outlook client will regenerate new browse and ANR indices based on the Windows user locale on the client.

 

    - OAB Templates will now be added to differential OAB download when they are updated

 

With the introduction of OAB v4, when an administrator changes or adds a template file on the Exchange server, Outlook clients will now have the ability to download this new template file when it downloads the diff file.

 

    - Failed diff files will not result in a full download

 

Now with OAB Version 4 the Exchange server will no longer force full downloads to the Outlook clients by intentionally not generating an OAB diff file. The OABGen process has problems handling the addition / removal of the PDN and this will cause the OAB Generation process to skip one day’s differential build. In regard to the PDN addition or removal - when an Outlook client attempts to download the diff files it will notice this and cause the client to do a full download of the oab files. Using the new binpatch technology we are able to get around this problem. We now use deltas to calculate our information instead of the relying on the changes.oab file, so we are no longer affected by this.

 

Please note that there will still be a potential for a full download to occur. A failure to download one of the OAB files, or a problem due to a file corruption will result in the Outlook client performing a full download.

 

    - Protection against OAB bloat

 

In OAB v4, the Exchange server now will enforce limits to ensure that the new OAB v4 does not bloat. If we find an attribute that exceed one of the limits imposed, then Exchange server will remove these attributes from the OAB. Once the attribute has been removed we will add an indicator to let Outlook know that we have removed some properties. Outlook 2003 SP2 will treat the removed properties as "not present" in the record.

 

The Exchange OAB Generation process also has additional checks to make sure that when retrieving necessary attributes from the active directory that are required by Outlook to send mail, they are never removed from the OAB.

 

    - OAB indexing will be based upon the locale setting (language/country) of the client and not the servers

When building legacy OAB’s (OAB Version 2 and OAB Version 3a) we would rely on the local of the server to build the indices for the OAB Files. With OAB Version 4, the client now generates the locale specific indices from the OAB Version 4 data.oab file regardless of what locales are on the server.

- Dave Goldman

Updated Jul 01, 2019
Version 2.0
  • OAB version 4 in Exchange 2003 service pack 2 (SP2)
    OAB Version 4 is a new addition to the Offline Address...
  • Dave Goldman from the Exchange Server Team has bloged about OAB V4 which ships with Exchange 2003 SP2. Most of the new features found in OAB V4 have been implemented to remove common OAB download problems.
  • As lot of people used OL2K3 cache mode on bad network,for a new outlook profil is there any possibility to copy the oab (even a part of)?

    Philmara
  • If you are talking about copying them from one profile to another, no. If the client detects that one of the oab files is missing, it will start a full download of the oab.

    It would be easier to just do a new download for this new profile, this way the oab files will be current.
  • With the size of our OAB we have noticed that on laptops with less than 512 MB of RAM merging the changes in the OAB severly degrades the laptops performance, sometimes to the point where the laptop in not usable. Will the use of the binpatch files lessen this impact?

    Also, I assume that the when clients upgrade to SP2 they will get a full OAB download if the OAB 4 folder exists, so we should make sure we have the OAB generation server to Exchange SP2 before we have a large number of OL2003 SP2 machines out there and impact our network?
  • The binpatch technology will help with most of the common download problems (these are referenced in the blog). If you have a very large oab, you are most likely going to still have this problem.

    In regard to SP2, your assumption is correct. You will need to have both Exchange Server 2003 Service Pack 2 and Office/Outlook SP2 in place before you can use any of the new features.
  • I know the Outlook team spent a lot of time tuning the OAB V4 update code on limited memory machines. I've been running V4 on my own laptop with 384meg of ram for some time now and the performance and usability is much much better than it was for V2 or V3. I rarely even notice when the OAB is being updated.

    Part of the problem with V2 and V3 was that the underlying file formats required large numbers of random disk updates to merge in the changes which tanked the machine for long periods of time. The V4 format, reads the file in sequentially, streams out the new file sequentially and uses a fixed amount of memory that grows linearly with the number of change files being applied. After that is finished, the client then reindexes the file using a new tuned algorithm.
  • I blogged about deploying Windows 2003 SP1 with SMS last week, and completely missed this document...
  • Heck, I've wanted to throttle the OAB lots of times - but that's not the reason for this blog entry :-). ...