Overview
Kerio Outlook Connector is a Microsoft Outlook extension that you can use to manage Kerio Connect email, events, contacts, and tasks in Microsoft Outlook for Windows. The Offline Edition (KOFF) is the most commonly used as it allows offline editing and synchronizes all changes with Kerio Connect once the connection is restored.
Information
High-level Component Details
Kerio Outlook Connector is built with a handful of main logical blocks. Below you can review a high-level overview of each and the part they play towards KOC/KOFF functionality.
- Database and Application Server
- This piece serves as a data back-end for the rest of KOFF. It consists of an embedded firebird database server and application server with all business logic for the storage and retrieval schema.
- The Application Server is the backend for data storage and notifications about data changes between other parts of KOFF. It uses an embedded SQL database server as the main data storage.
- Message Store Provider
- This part implements the MAPI interfaces required for the MAPI message store provider. Outlook (through MAPI interfaces) communicates mainly with this provider. It provides mainly folder and message manipulation.
- Transport Provider
- This part implements the MAPI interfaces required for the MAPI transport provider. It's used for sending and receiving messages.
- Synchronization and Communication Provider
- This block is responsible for seamless data synchronisation between KOFF, Kerio Connect, and other data transfers. Leverages HTTP and a protocol based on WebDAV for synchronisation.
KOFF MAPI Services
There are three MAPI providers: message store, transport, and address book. Message store provider provides access to messaging objects - folders and various messages. Transport provider sends outgoing and delivers ingoing messages. An address book provider implements an address book.
KOFF MAPI Service only consists of the message store provider and transport provider. KOFF MAPI provider doesn't contain an address book provider - it uses services of Outlook address book, the default address book implemented by Outlook itself. Configurations of MAPI services are saved in MAPI profiles. Every MAPI profile can contain configurations of one or more MAPI services.
KOFF Database Files
The Database files of every KOFF account are separated. All KOFF accounts in the single profile keep files in separate folders. The Database of every KOFF account is separated into several files. Most of them are files holding data for message stores. There is one database file for every Connect mailbox that is accessed by some message store provider in the KOFF account.
So there is always a file for private folders (the mailbox of the user KOFF account is logging into). There will often be a file for public folders (unless they are disabled in the service configuration). And there can be several files of mapped stores, each representing some mailbox whose owner is sharing some folder with the logged user. The name of each of these database files is unique (string representation of GUID). In addition to the files for the message stores, there is one more file - the common database (file BASE.fdb). It contains data common for the whole KOFF account.
Database Structure
- Common Database
- Contains data about the database itself, the stores within a profile, and the various named properties known to a KOFF account.
- Store Databases
- Contains data about the store, all MAPI objects within the store, the various MAPI properties, and folder hierarchy.
Other Components
In addition to the main components, there are smaller sub-components with specialized functions within KOFF:
- MAPI to MIME and MIME to MAP Convertor
- Used to convert messages from MAPI representation to MIME (either for .eml files used by Connect or for sending through SMTP) and vice versa.
- KOFF Log Systems
- All KOFF logging is sent to the debug.log on client machines via the LogManager and various Logging Macros for the Auditing options. (accessible within the Maintenance tab of a KOFF Profile configuration).
- KoffRtfWrapper
- A COM server running in KOFF that handles Compressing/Decompressing RTF streams within MAPI objects and Conversion of plain text and RTF content.
Using Kerio Outlook Connector
Kerio Connect provides several ways of accessing emails on a Windows device, from the Kerio Connect Desktop Client (KCC) to IMAP or Active Sync with Outlook. Some users may find these options lack some of the standard features of a native Outlook Exchange connection.
For this reason, the Development Team created the Kerio Outlook Connector to fill this gap in functionality. Still, there are some Key Differences Between Offline Kerio Outlook Connector and a Native Outlook Exchange Connection that should be kept in mind when choosing to use KOC.
Note that Outlook for Mac 2011 and 2016 can connect with Kerio Connect natively through Exchange Web Services, so a similar macOS version of the Kerio Outlook Connector was not developed.
Optimizing KOFF Performance
While there are Outlook-specific settings that heavily impact the performance of KOFF, often the state of the end-user PC and the Mailbox being synced are more impactful factors.
The Kerio Outlook Connector Offline Edition (KOFF) runs a separate process called KoffBackend.exe. This program performs much of the caching of data from the local email database. On a large mailbox, this process may consume upwards of several hundred megabytes. For this reason, it is recommended for the computer using KOFF to have at least 4 GB of RAM.
KOFF tends to function best when used with an SSD due to continually caching and storing mailbox content. While end-users can use traditional spinning hard drives, consumer-grade HDDs’ slower read and write speeds can result in slower performance.
Conversely, Network Attached Storage(NAS) is not recommended for storing the KOFF cache. By design, KOFF assumes it is stored in a local disk and, based on this, executes local Firebird database queries. If NAS is used, this can result in data corruption and KOFF stability issues.
Mailbox Size and Synchronization Speeds
The speed at which KOFF can synchronize data, especially during the initial sync, is closely tied to the network throughput available. However, perhaps more important than the network speed is the size and organization of the Kerio Connect Mailbox. As the size of the mailbox and user folders increases, there is a direct impact on sync times. It is not unexpected for mailboxes well above the recommended size to see total sync times move from minutes to hours.
For this reason, to ensure a smooth user experience, it is suggested that users strive to keep their mailboxes as close to our recommended mailbox sizes as possible:
- Total Mailbox Size below 20GB.
- Mailbox Folders contain less than 10,000 items.
- Note: This is most important for the top-level folders, such as the Inbox, Sent Items, and Deleted Items. These top-level folders are “opened” or referenced, which can also lead to overall server performance.
While the total size impacts synchronization and performance, the folder item count has the most significant impact. In addition, note that there are expected built-in rate throttles within KOFF. While the size of a Mailbox will ultimately impact the total synchronization times, KOFF leverages batch sync processes that are non-adjustable. These batches are designed to avoid KOFF falling out of sync with the mail server when synchronizing larger mailboxes.
While there is a theoretical upper limit of 50 messages per second, in real-life usage, users can expect to see 10-15 messages per second being synchronized under ideal conditions.
KOFF SystemTray Icons
When KOFF is installed, and a Kerio Connect account has been configured, users can monitor the synchronisation status of their account via the KOFF System Tray icon. When selected or hovered, the icon tooltip will present a high-level summary of the current status. This can provide an overview of the items left to synchronize. You will see one system tray icon for each KOFF account configured within your Outlook profile.
Note that the tooltips do not regularly refresh, and re-hovering the icon will provide an updated estimate of the synchronisation progress. Once finalized, the icon will turn orange.
Installing Kerio Outlook Connector
KOC and KOFF are installed using EXE or MSI files from the Kerio Connect mail server. These can be acquired from the main login page of Webmail or the Avatar menu once logged in.
Once acquired, you can Install the Kerio Outlook Connector by running the acquired install package and following the installation wizard. After the installation has been completed, you can either use the Automatic Configuration Tool to install your user profile into Outlook or manually create this from the Outlook Mail Setup panel.
Supported Software Versions
An important consideration when installing the Kerio Outlook Connector is the version of Kerio Connect, Windows, and Outlook you intend to use. It would be best if you verified that the version of Windows and Outlook are fully supported for use with KOFF. Note that support for standard KOC is limited; in most cases, KOFF should be used instead.
Not all versions of KOC are compatible with all versions of Kerio Connect. When downloading KOC from your Kerio Connect Server, it will automatically deliver the appropriate version for the connection. This is an essential consideration if you intend to connect to multiple Kerio Connect servers running different software versions, as you may encounter unexpected behaviour when the versions are mismatched.
Due to the variance in the release schedule for the various versions of Outlook, it is possible that your supported version of Outlook currently exhibits unexpected behaviour following a new update. Often these issues are related to changes in MAPI handling and can be addressed by temporarily rolling back to a stable release of Outlook while awaiting Microsoft’s resolution.
Outlook’s Volume-Licensed (VL) version is commonly impacted by these staggered release cycles due to being a few cycles behind the non-VL versions of Outlook. Issues that Microsoft has already patched on the non-VL versions may reappear within the VL releases as the release cycle catches up, as seen within KOFF installation fails with 1722 error.