1 问题的提出
计算机网络建设包括计算机网络设计阶段和计算机网络实施阶段。在计算机网络的设计阶段,主要是设计企业网的逻辑方案,这个阶段可能要反复进行若干次才能得出满意的结果[1],但并不涉及具体设备选型,仅仅是选择某种类型的网络设备(如路由器、网桥等等)和组网技术。企业实施CIMS,需要一种有效的辅助工具,用来选择合适的网络设备和进行组网工作,以使得在整个CIMS网络设计阶段中,不再依赖于网络专家的决策,而是依据辅助工具的输入输出来得出所需的CIMS网络逻辑设计方案,规范网络设计方法,提高网络设计的科学性和效率[2,3]。在CIMS网络辅助设计工具的实现系统中,我们把整个系统分成三个模块:需求分析、网络设计和性能评价。
需求分析模块向用户提供标准的需求分析模板,并对信息流量进行量化处理;网络设计模块则从需求分析模块获取相应的信息,自动生成初步的网络方案,使用者可根据某些特殊的要求和自己的设计经验对该方案进行必要的调整;性能评价模块对前面生成的方案进行性能分析、代价估算,并把结果反馈给使用者,以便对方案进行再调整。为方便起见,我们选用Microsoft Access构造了一个网络需求数据库NetRequire和一个网络设计及性能评价知识库NetDesign。虽然数据的存放仍然在关系型数据库中,但对数据库的访问和基于这些数据的操作是封装在各个类中。只要定义了某个类的对象实例,就可以使用其上的数据和方法,较好地解决几个设计人员协同和独立地编程。同时,基于Windows 平台,通过GUI向用户提供标准的网络设计图标和需求分析模板,并通过一系列默认值或提示方便人机交互,使系统通过自学习提高解决问题的能力。
2 需求分析模块
CIMS网络的需求分析,主要从两点考虑,一个是面向用户的需求分析,另一个是面向网络设计专家的需求分析[4]。前者通过向用户提出一些问题,了解每个用户现场的位置、事务处理类型和频度来确定所需设备的类型、数量和规程特性;通过询问企业基本情况确定信息流向图、信息流的等级和管理要求。后者是向网络设计者提出一些问题,针对用户一些服务请求数据类型回答可提供什么样的网络技术来解决,由此转换成定量的网络性能的需求,如可靠性、可用性、线路容量、时延和吞吐率等,还可以包括设备的费用、备件等级和总的投资。网络设计需求分析模块由以下四部分组成:
(1)CIMS网络设计需求分析问题模板,该模板包括面向用户的需求分析和面向网络设计专家的需求分析问题的设定,同时给出必要的提示和默认值,方便用户的回答。对于这些问题的回答,有的可以直接作用于本工具的其他模块,有的需要经过处理才能使用。
面向用户的需求分析问题主要是指以下五种情况:①企业的基本情况;②企业的工作时间;③企业的地理特性;④企业的部门情况;⑤企业的网络目标(包括总体目标和一期工程目标)。
面向网络设计专家的需求分析问题主要是指与网络设计有关的一些问题。为了方便使用和使流程更接近人类工作流程,我们将面向用户的需求分析包含在需求分析模块中,而将面向网络设计专家的需求分析嵌入到网络设计模块中。
(2)需求分析数据量化模块,根据不同类型的企业特征和可能的信息来源构造需求分析的量化模型,把用户提供的有关信息转化成以位(bit)、字节(byte)等数据单元。数据量化模型是根据用户提供的现行数据需求关系和企业产生的数据特性,以及企业发展情况确定数据量化模型:把用户要求传输的数据、图形文件等信息转化成位、字节等数据单元(包括处理能力和存储能力)。
(3)节点信息归并模块,根据地理位置、数据的逻辑关系和数据量,将企业划分成若干信息分布区域,将量化后的数据归并到信息域上,并估算相互之间的信息流量和内部数据量,构造节点的信息需求矩阵。当网络设计模块完成网络的设计后,要根据最终形成的节点,找到它们与原始物理部门的对应关系,同时为性能评价模块的正常运行,给这些节点的输入/输出流量及其数据类型赋值。
(4)需求分析数据库将从CIMS网络设计需求分析模板得到的回答,以及部门之间信息量化的结果和节点信息归并的结果,分别以相应的关联形式存放在数据库中。
3 网络设计模块
网络设计模块就是根据需求分析得到的信息,利用网络设计知识库中的专家经验知识,通过推理机制辅助网络设计者设计出符合需求的网络方案,并提交给性能评价模块进行评价,设计者可根据评价结果通过人机接口对方案进行调整。
网络设计模块由下几个部分组成:
(1)需求验证和翻译子模块,该子模块主要功能是理解需求分析得到的信息,验证其取得的数据是否足够,如果发现缺少需求信息,则提示用户重新调用需求分析模块补充相应的信息;否则,提取合适的需求信息并翻译成设计模块所需要的需求信息类,提供给推理机制。
(2)人机交互接口子模块,该子模块以面向对象的基于GUI的界面提供给设计者(或用户),它屏蔽了设计者直接对数据库的操作,把设计者所完成的各种操作通过信息的形式发送给推理机制,并把推理机制作出的决定或选择反映给用户。
(3)推理机制,它是整个设计模块的核心,通过调用需求翻译和验证子模块提取合适的需求信息,同时智能地选择专家知识库中的可行经验类供设计者进行选择,当然,他也可以凭自己的经验对某些问题作出决定,从而产生CIMS网络方案。推理机制除了负责读取专家知识库中的经验规则以及其他基本知识供设计者选择外,它还具有自学习的机制,即通过自我学习,从设计者的设计过程中,推断出设计者的设计原则和倾向,以方便后面的设计。
(4)经验规则库,专家知识库中存放了大量的规范知识和技术专家提供的经验知识,这些知识在工具中表现出简单明了的规则,如在选择室内网络传输媒体时按如下规则:“如单段距离不超过100m,采用双绞线”;在选择主干网节点时可按如下规则:“各需要连网的单位,一般为组织结构上较为独立的区域,如工厂、分公司或集团企业下的实体公司等。