Novell GroupWise 连接器体系结构

 

上一次修改主题: 2005-05-23

Novell GroupWise 连接器支持 Exchange 组织和 Novell GroupWise 环境之间的双向邮件传输和目录同步。可以支持 Novell GroupWise 版本 4.2、5.0 和 5.5。这个基于 MAPI 的连接器使用 Novell GroupWise API 网关与 Novell GroupWise 通信。有关如何安装和配置 Novell GroupWise 连接器的详细信息,请参阅 Exchange Server 2003 Interoperability and Migration Guide(英文)。

note注意:
Microsoft 不正式支持 Novell GroupWise 6.0 或更高版本。但是,由于基础技术仍然与以前的版本相同,因此 Microsoft 产品支持服务提供了“商业上合理工作量”支持。使用 Novell GroupWise 连接器来实现互操作性和目录同步的替代方案是使用 Novell GroupWise Gateway for Microsoft Exchange。如果计划从 Novell GroupWise 6.0 或更高版本迁移到 Exchange Server 2003,可能需要使用这个来自 Novell 的连接器。

下表列出了 Novell GroupWise 连接器的重要组件。

Novell GroupWise 连接器组件

组件 描述

连接器邮箱

作为基于 MAPI 的连接器,Novell GroupWise 连接器将它的邮件队列设在桥头服务器上默认邮箱存储的连接器邮箱中。邮箱名称是 Connector for Novell GroupWise (<服务器名>),例如 Connector for Novell GroupWise (SERVER01)。

连接器服务

与 Lotus Notes 连接器一样,Novell GroupWise 连接器服务使用的主要可执行文件被命名为 Dispatch.exe。这可能是因为 Dispatch.exe 不执行实际的邮件处理。使用参数 -cexchconn.ini -nLME-GWISE -pCONTROL-SERVICE -l"C:\Program Files\Exchsrvr\bin" -vLME-GWISE 可启动 Dispatch.exe,该程序可以调度在完成与 Novell GroupWise 进行邮件传输和目录同步的各种任务时所需的进程。Dispatch.exe 基于 Exchconn.ini 文件中的设置来开始实际的处理。Exchconn.ini 是作为连接器安装和配置的一部分自动创建的。

三个活动连接器进程也与 Lotus Notes 连接器相同。这些进程是 Lsmexin.exe、Lsmexout.exe 和 Dxamex.dll,它们与 Exchange Server 2003 通信。Novell GroupWise 连接器特有的组件是 Mex2gw.exe、Gw2mex.exe 和 Dxagwise.dll。

以下组件参与信息处理:

  • Dxagwise.dll 该组件检查 Novell GroupWise 目录中是否有收件人更新。该组件还将 Exchange 地址信息更改传输到 Novell GroupWise 目录。
  • Dxamex.dll 该组件检查 Active Directory 中是否有收件人更新。该组件还会将 Novell GroupWise 地址信息更改传输到 Active Directory。
  • Lsdxa.exe 这是目录交换管理器,用于控制 Dxagwise.dll 和 Dxamex.dll。
  • Lsmexin.exe 该组件从连接器邮箱内的 READYIN 文件夹中获得经过转换的邮件,并确认收件人的有效性,然后将邮件放在 MTS-IN 队列中。
  • Mex2gw.exe 该组件从连接器邮箱内的 READYOUT 文件夹获得邮件,并将它们从 MAPI 转换为 Novell GroupWise 格式,然后将它们作为信头和正文文件放在运行 Exchange Server 2003 的服务器上的连接器存储中。
  • Lsmexout.exe 该组件从 MTS-OUT 队列获得出站邮件,并检查 Active Directory 以便用相应的 Novell GroupWise 地址替换目标收件人信息,然后将邮件放在连接器邮箱的 READYOUT 文件夹中。
  • Gw2mex.exe 该组件将连接器存储中的信头和正文文件转换为 Exchange Server 2003 格式的邮件,然后将邮件放在 READYIN 文件夹中。

除了这些过程以外,Novell GroupWise 连接器还包括 Microsoft Exchange Connectivity Controller 帮助应用程序服务 (Lscntrl.exe),可以用该服务停止个别连接器进程。

所有文件都驻留在 \Program Files\Exchsrvr\Bin 目录中。

Exchange Router for Novell GroupWise 服务

Novell GroupWise 连接器使用 Microsoft Exchange Router for Novell GroupWise 服务 (Gwrouter.exe),该服务以信头和正文的形式在连接器存储和 Novell GroupWise API 网关之间传输邮件。

连接器存储

连接器存储(位于 \Program Files\Exchrvr\Conndata 目录中)充当了 Novell GroupWise 连接器和 Router for Novell GroupWise 之间通信媒介。

Novell GroupWise 连接器使用以下连接器存储子目录:

  • \Gwrouter 该目录有进一步的子目录,Router for Novell GroupWise 会轮询这些子目录。子目录是临时的储存库,用于存放扩展名为 .api 的邮件头文件,以及扩展名为 .bdy 的邮件正文和附件文件,这些类型的文件会在 Router for Novell GroupWise 和 Novell GroupWise API 网关之间传输。信头和正文文件是基于关键字的文本文件,Novell GroupWise API 网关可以将它们转换为 Novell GroupWise 格式的邮件。
    \Gwrouter 目录有以下子目录:
    • \Archive 该目录只在为 Novell GroupWise 连接器启用存档时才存在。若要启用存档,必须配置称为 ArchiveREG_DWORD 注册表参数,它位于下列位置: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LME-GWISE\Parameters.
      必须将此注册表参数值设置为 0x1。然后,在重新启动 Exchange Router for Novell GroupWise 服务时,Exchange 2003 将在 \Programfiles\Exchsrvr\Conndata\Gwrouter 目录中创建 \Archive 目录。\Archive 目录包含以下子目录:\Dirsync、\Freebusy、\Gw2mex、\Gw2mexa、\Mex2gw、\Mex2gwa 和 \Togwise。
    • \Badfiles 该目录用于存放 Novell GroupWise 连接器无法处理的、来自 Novell GroupWise 的坏邮件。
    • \Dirsync 该目录用于存放 Novell GroupWise 为目录信息请求而返回的响应邮件。
    • \Freebusy 该目录用于存放 Novell GroupWise 为忙/闲搜索而返回的响应邮件。
    • \Gw2mex 该目录用于存放来自 Novell GroupWise 的、扩展名为 .api 的入站头文件。
    • \Gw2mexa 该目录用于存放来自 Novell GroupWise、扩展名为 .bdy 的入站邮件的正文和附件文件。
    • \Mex2gw 该目录用于存放发往 Novell GroupWise 的、扩展名为 .api 的出站头文件。
    • \Mex2gwa 该目录用于存放发往 Novell GroupWise 的、扩展名为 .bdy 的出站邮件的正文和附件文件。
    • \Togwise 该目录用于存放发往 Novell GroupWise 的系统邮件。系统邮件用于从 Novell GroupWise 请求目录信息或忙/闲信息。
  • \Dxagwise 该目录包含在目录同步期间所使用的控制文件。控制文件是架构定义文件和映射规则文件,用于确定一个目录中的属性如何映射到另一个目录。可以在记事本中编辑以下架构定义文件和映射规则文件,以指定如何将一个目录中的属性映射到另一个目录:
    • GWAMAP.TBL 指定要同步的 GroupWise 架构属性。
    • MAPMEX.TBL 确定从 Exchange Server 2003 到 Novell GroupWise 的属性映射。
    • MEXAMAP.TBL 指定要同步的 Exchange 架构属性。
    • MAPGWISE.TBL 确定从 Novell GroupWise 到 Exchange Server 2003 的属性映射。
      note注意:
      此外,连接器还有用于检查是否有需要同步的地址更新的控制文件(EXTERNAL.TBL、GWPCTA.TBL 和 MEXPCTA.TBL)。不要编辑这些文件,否则目录同步可能无法执行,这会让收件人对象处于未同步状态。

Novell GroupWise API 网关

Novell GroupWise 连接器使用 Novell GroupWise API 网关与 Novell GroupWise 环境通信。这是全局 GroupWise 网关,该网关使用基于关键字的文本文件来与非 Novell GroupWise 邮件系统(例如,Exchange Server 2003)通信。Novell GroupWise API 网关维护一个文件夹结构,该结构具有以下目录:

  • \API_IN 从非 GroupWise 系统接收传入邮件的头文件
  • \API_OUT 存放发往非 GroupWise 系统的传出邮件的头文件
  • \ATT_IN 从非 GroupWise 系统接收传入邮件的正文和附件
  • \ATT_OUT 存放发往非 GroupWise 系统的传出邮件的正文和附件
  • \WPCSIN GroupWise MTA 入站队列,在通过 API 网关对传入邮件进行处理之后,这些邮件被存放在该目录中。
  • \WPCSOUT GroupWise MTA 出站队列,在通过 API 网关将传出邮件转换为基于关键字的文本文件并放在 API_OUT 和 ATT_OUT 中之前,这些邮件位于该目录中。

注册表设置

在注册表中,Novell GroupWise 连接器设置被存储在以下位置:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LME-GWISE

代理地址生成 DLL

Novell GroupWise 连接器的代理地址生成 DLL 被命名为 Gwxpxgen.dll,并且驻留在 \Program Files\Exchsrvr\address\gwise\i386 目录中。

addrType 对象

在 Active Directory 中,Novell GroupWise 连接器的 addrType 对象的公用名是 GWISE:i386。

msExchConnector 对象

位于 Active Directory 的配置目录分区中的 Novell GroupWise 连接器的 msExchConnector 对象存储了大多数连接器配置设置。以下属性是从 msExchConnector 和 mailGateway 对象类派生的 msExchGroupWiseConnector 对象类特有的:

  • exportCustomRecipients 指定是否通过目录同步将已启用邮件的联系人传播到 Novell GroupWise。
  • msExchServer1AlwaysCreateAs 指定如何同步 X.500 对象。
  • msExchDeliveryOrder 指定邮件在连接器的队列中的处理顺序。选项是 FIFO、优先级(默认)和大小。
  • msExchExportDLs 指定是否通过目录同步将已启用邮件的通讯组传播到 Novell GroupWise。
  • msExchPartnerLanguage 指定所连接的 Novell GroupWise 邮局的语言(代码页)。
  • msExchDirsyncSchedule 指定自动执行目录同步的时间。
  • msExchDirsyncStyle 指定是执行完整的目录同步,还是执行增量的目录同步。
  • msExchGWiseAPIGatewayPath 指定 Novell GroupWise API 网关目录的路径。
  • msExchGWiseUserId 指定 Novell GroupWise 连接器用来访问 Novell GroupWise API 网关目录的帐户名。
  • msExchEncryptedPassword 以加密形式指定 Novell GroupWise 连接器用来访问 Novell GroupWise API 网关目录的帐户的密码。
  • msExchExportContainersLinked 指定在目录同步时 Novell GroupWise 连接器用作导出容器的 Active Directory 中组织单位的可分辨名称。
  • msExchImportContainerLinked 指定在目录同步时 Novell GroupWise 连接器用作导入容器的 Active Directory 中组织单位的可分辨名称。
  • msExchGWiseForeignDomain 指定在 Novell GroupWise 环境中代表 Exchange 组织的外部邮件域的名称。
  • msExchGWiseFilterType 指定是否配置一个筛选器,以便在目录同步中包括或排除某些地址。
  • msExchDirsyncFilters 指定用来在目录同步中包括或排除地址的筛选器。
  • msExchMaintenanceStyle 指定该连接器的维护样式。
  • msExchConnectorType 指定 Exchange 连接器的类型。值是 GWISE。

管理单元

Novell GroupWise 连接器的扩展管理单元被命名为 Exchange GroupWise 连接器。该管理单元用于扩展连接器的节点,可以在 Exchange 系统管理器中的该位置下面找到它:<组织名>/管理组/<管理组名>/路由组/<路由组名>/连接器。

邮件传输

下图说明了从 Exchange Server 2003 向 Novell GroupWise 发送邮件的过程。

0f881320-4990-4f32-9c6c-6c19019b02b9

Exchange Server 2003 和 Novell GroupWise 之间的邮件传输过程由以下四个步骤组成:

  1. Exchange Server 2003 确定收件人是 Novell GroupWise 用户(根据用户的目标地址),并将邮件发送给 Exchange MTA。

  2. MTA 将邮件传递到 MTS-OUT 目录,Lsmexout.exe 进程从该目录中检索到该邮件,并检查 Active Directory,然后用相应的 GroupWise 地址替换目标收件人信息,之后将邮件传递到 READYOUT 文件夹。

  3. Mex2gw.exe 进程将邮件转换为 Novell GroupWise 格式,然后将它作为信头和正文文件写入运行 Exchange Server 2003 的服务器上的连接器存储。

    note注意:
    信头和正文文件是基于关键字的文本文件,Group WiseAPI 网关使用这些文件与 Novell GroupWise 连接器通信。可以使用文本编辑器(例如,Microsoft 记事本)来读取和写入在 API 网关目录结构中的基于关键字的文本文件。
  4. Exchange Router for Novell GroupWise 服务 (Gwrouter.exe) 将邮件放在 Novell GroupWise API 网关的 API_IN 和 ATT_IN 目录中。网关与 Novell GroupWise MTA 配合工作,在 GroupWise 组织中完成邮件传递任务。

下图说明了从 Novell GroupWise 向 Exchange Server 2003 发送邮件的过程。

b225ceb8-17cf-41cc-a219-86004a791f15

从 Novell GroupWise 到 Exchange Server 2003 的邮件传输过程由以下四个步骤组成:

  1. Router for Novell GroupWise 服务从 Novell GroupWise API 网关的 API_OUT 和 ATT_OUT 目录中以信头和正文文件的形式获得邮件,并将它们放在连接器存储中。
  2. Gw2mex.exe 进程将信头和正文文件转换为 Exchange Server 2003 格式的邮件,然后它将邮件放在 READYIN 文件夹中。
  3. Lsmexin.exe 进程从 READYIN 文件夹获得经过转换的邮件,并确认收件人的有效性(如果需要,将地址转换为 Exchange 格式),然后将邮件传递到 MTS-IN 文件夹。
  4. 然后,Exchange MTA 处理 MTS-IN 文件夹中的邮件,并将邮件放在 SMTP 服务的 MTS-OUT 文件夹中,然后邮件从这里被路由到 Exchange 组织中它的目标。

邮件转换

Novell GroupWise 支持几种特定的邮件类型,例如,电子邮件、约会、便笺、任务、表单、演示文稿和文档。如果可能,MAPI 邮件类型会映射为 Novell GroupWise 中相应的邮件类型。换句话说,电子邮件作为电子邮件出现,而会议请求作为约会出现,等等。Exchange Server 2003 中不被支持的邮件类型(例如,Novell GroupWise 电话邮件)会被转换为常规电子邮件。Novell GroupWise 连接器可以跟踪传递确认报告、已读回执和未送达报告。

Novell GroupWise 和 Exchange Server 2003 之间的邮件转换

Exchange Server 2003 功能 GroupWise 功能 GroupWise 到 Exchange Server 2003 Exchange Server 2003 到 GroupWise

电子邮件

邮件

电子邮件已读回执

电子邮件已读回执

未送达报告

未送达报告

重要性

重要性

是(低优先级在 GroupWise 中没有表示方法)

敏感性

敏感性

会议请求

约会

会议已接受

会议已接受

会议已拒绝

会议已拒绝

会议暂定接受

会议已接受

显示为已接受

显示为已接受

会议请求已读

会议请求已读

会议请求送达

会议请求送达

会议更新

会议更新

显示为主题行包含单词“Updated”的新会议请求

显示为主题行包含单词“Updated”的新会议请求

会议提醒次数

会议提醒次数

会议取消

会议取消

任务请求

任务

任务请求显示为电子邮件

任务显示为

电子邮件

全天会议请求

会议请求

显示为会议请求,但如果会议延续多天,它将被设为第一天的单个实例,并且邮件字段中包含日期范围。

电话邮件

显示为电子邮件

其他邮件

其他邮件

默认电子邮件

默认电子邮件

note注意:
Novell GroupWise 连接器不支持签名邮件或加密邮件。

电子邮件类型转换

最初来自 Exchange 或 Novell GroupWise 的电子邮件将转换为目标系统的格式。通过使用传递确认报告、已读回执和未送达报告,Novell GroupWise 连接器还会跟踪邮件传递。

Novell GroupWise 连接器以如下方式处理会议请求和电话邮件:

  • 会议请求和约会 Exchange 会议请求和 Novell GroupWise 约会是通过 Novell GroupWise 连接器传输的。经过更新的会议请求在其主题行中被标识为“Updated”。由于受 GroupWise API 网关的限制,Exchange Server 2003 用户发送到 GroupWise 用户的会议请求无法在 Novell GroupWise 中自动更新,用户必须手动更新它们。

    note注意:
    API 网关不支持使用 AutoDate 功能从 GroupWise 重新发出会议请求。这些重新发出的会议请求不会传输到 Exchange Server 2003。从 Exchange Server 2003 传输到 Novell GroupWise 的重复会议会被一次性添加到 Novell GroupWise 日历,然后重复信息会显示在邮件正文的顶部。用户的责任是记住会议什么时候召开,或者是在日历中单独输入多次会议。
  • 全天会议请求 在 Exchange Server 2003 中生成的全天会议请求在 Novell GroupWise 中显示为会议请求。但是,如果会议延续多天,则连接器会在第一天创建一个实例,并在邮件字段中注明日期范围。

  • 电话邮件 Novell GroupWise 电话邮件在 Exchange Server 2003 中显示为电子邮件。

电子邮件属性转换

由于 API 网关只支持纯文本,因此,连接器会丢弃 Exchange 邮件的邮件正文中的 RTF 信息。由 Exchange Server 2003 客户端 (Microsoft Office Outlook) 所发送的邮件内所嵌入的对象将转换为附件。如果嵌入深度超过一层,这些附件将显示为主邮件的附件。如果 Novell GroupWise 用户发送的邮件中包括附加邮件,而附加邮件中又包含其他附件,则所有附件在 Exchange Server 2003 中均作为主邮件的单个附件出现。

Novell GroupWise 和 Microsoft Outlook 之间的电子邮件转换

Novell GroupWise Microsoft Outlook

大小

正确转换。

颜色

忽略。

粗体

忽略。

下划线

忽略。

斜体

忽略。

删除线

正确转换。

如果将 Microsoft Word 作为 Outlook 的主电子邮件编辑器,则正确转换。在 Outlook 中则不能正确转换。

嵌入式 OLE 对象,包括图形

正确转换并且可以编辑。

双删除线

忽略。

上标

忽略。

下标

忽略。

阴影

忽略。

边框

转换为斜体。

阳文

忽略。

阴文

忽略。

小型大写字母

忽略。

所有大写字母

忽略。

首字下沉

忽略。

隐藏

忽略,不隐藏文本。

除单下划线以外的下划线

忽略。

不作为 OLE 对象嵌入的位图

不迁移,格式丢失。

项目符号

忽略。

note注意:
如果 Exchange 用户在电子邮件中多次指定某个 GroupWise 用户(如果在收件人、抄送或密件抄送行中多次列出收件人,或者收件人出现在多个所指定的通讯组中),则 GroupWise 用户将收到重复的电子邮件。

目录同步

与 Novell GroupWise 的目录同步和与 Lotus Notes 的目录同步所遵守的模式是相似的。Lsdxa.exe 进程负责控制实际的目录同步过程。不过,LSDXA 进程使用 Dxagwise.dll(即 Novell GroupWise DX 代理)而不是 Dxanotes.dll 来与 Novell GroupWise 进行目录同步。Dxagwise.dll 通过 Novell GroupWise API 网关、Exchange Router for Novell GroupWise 服务以及 GroupWise 管理员邮件 (Msg-Type= Admin) 来与 Novell GroupWise 进行通信。有关如何配置目录同步的信息,请参阅 Exchange Server 2003 Interoperability and Migration Guide(英文)。

note注意:
Novell GroupWise 连接器会在 Active Directory 中为 Novell GroupWise 邮件系统中的收件人创建已启用邮件的联系人。legacyExchangeDN 地址(即 Exchange 用户的 X.500 地址,采用 Exchange 5.5 格式)的第一部分与连接器的 legacyExchangeDN 匹配。第一部分是用于标识连接器的管理组的 X.500 地址的那一部分(即 /O=<组织名>/OU=<管理组名>)。

Novell GroupWise 连接器执行以下步骤来与 Novell GroupWise 同步目录:

  1. Dxamex.dll 通过 ADSI 与 Active Directory 通信,以便从连接器配置中所指定的导出容器内提取收件人信息。

  2. Dxamex.dll 对在 Amap.tbl 和 Mapmex.tbl 中所定义的收件人属性进行映射,并将结果以邮件交换格式 (MIF) 写入名为 Dxagwise.text 的临时文件中,该文件位于 \Program Files\Exchsrvr\Conndata\Togwise 目录中。以下内容是 Dxagwise.txt 的示例:

    Load
    A
    DOMAIN:
    POSTOFFICE:
    OBJECT:
    LASTNAME:
    FIRSTNAME:Administrator
    DESCRIP:Administrator
    ACCOUNTID:
    TITLE:
    DEPARTMENT:
    PHONE:
    FAX:
    GWADDR:Exchange.First Administrative Group.Administrator
    EXCHANGEID:Microsoft Exchange Connector for Novell GroupWise
    
    EndOfBuffer
    
  3. Dxagwise.dll 分析 Dxagwise.txt 文件,并处理地址,然后将一封管理员邮件放在 \Program Files\Exchsrvr\Conndata\Gwrouter\Togwise 目录中,以便在 Novell GroupWise 目录中执行更新操作(添加、修改或删除收件人对象)。下面内容是用于更新 Novell GroupWise 目录中的收件人对象的管理员邮件示例:

    WPC-API= 1.2; 
    Msg-Type= Admin; 
    DS-External-Post-Office= 
        Operation= Add; 
        Domain= EXCHANGE; 
        Post-Office= FIRST ADMINISTRATIVE GROUP; 
        Time-Zone= gmt; 
        ; 
    DS-User= 
        Operation= Modify; 
        Visibility= System; 
        Domain= Exchange; 
        Post-Office= First Administrative Group; 
        Object= Administrator; 
        Last-Name= \\; 
        First-Name= Administrator; 
        Description= Administrator; 
        Account-ID= \\; 
        Title= \\; 
        Department= \\; 
        Phone= \\; 
        Fax= \\; 
        Network-ID= \\; 
        User-Def-5= Microsoft Exchange Connector for Novell GroupWise; 
        ; 
    -END-
    
  4. Exchange Router for Novell GroupWise 服务将管理员邮件传输到 Novell GroupWise API 网关的 API_IN 目录中。

  5. Novell GroupWise API 网关分析管理员邮件,并执行指定的操作。

  6. 如果 Novell GroupWise API 网关收到请求目录信息的管理员邮件,API 网关将以管理员邮件的形式返回被请求的信息。管理员邮件以 .api 文件的形式存放在 API_OUT 目录中。以下内容是从 Novell GroupWise 目录请求目录信息的管理员邮件示例:

    WPC-API= 1.2;
    Msg-Type= Admin;
    -GET-DIRECTORY-
    -END-
    
  7. Exchange Router for Novell GroupWise 服务检索 .api 文件,并将它放在 \Program Files\Exchsrvr\Conndata\Gwrouter\Dirsync 目录中。

  8. Dxagwise.dll 分析 .api 文件,并提取收件人信息,然后将更新或完整列表(完整负载)写入 Dxamex.txt。

  9. Dxamex.dll 处理 Dxamex.txt 文件,并将收件人信息放在连接器配置所指定的导入容器内。