美国国家网络靶场系统架构与设计原理剖析②
试验建模技术设计思路
本小节将从美国“国家网络靶场”总体技术设计思路方面对“国家网络靶场”进行描述和思考,综合诸多文献,作者尝试从靶场的试验对象设计、试验方法设计等内容层面对其进行剖析。
按照DARPA曾经列明的基本计划目标,美国“国家网络靶场”总体技术设计内容包括“国家网络靶场”设施的详细布局、用途、人员空间、信息系统布局及能力;风险分析及降低策略;每个项目的目标、软件、网络架构优先顺序;系统设计功能和能力;对于软件系统,将评估进度、一致性、设计和测试方法的技术充分性、软件需求、测试需求和工程设计之间的兼容性;“国家网络靶场”保持靶场能力不断更新的技术发展计划;“国家网络靶场”的运行方案,其中包括安全管理及流程、试验流程管理、试验计划管理、资源管理及冲突处理、人员需求等。另外,总体技术设计还需要制定“国家网络靶场”详细的开发方案,以及如何围绕“国家网络靶场”的目标构建工程化的靶场原型系统。
由于资料有限,本文将不详细对上述总体技术设计的每个细节进行论述。
正文:
美国“国家网络靶场”在试验对象设计上即支持单品试验、也将支持“网络中心系统”试验,即能够对大规模军事作战和政府管理网络环境进行功能复制、也能够对商业和战术无线与控制系统进行复制;即能够与分布式客户设施连接,必要时还将与其他机构特定的基础设施进行协作,也能够容纳不同种类系统(节点)的大规模集合,包括快速集成新节点的能力。
“网络中心系统”是相对于单个组件或系统来进行比对说明的。从IT基础设施发展的历程和架构来看,系统的复杂性随着IT行业的发展而增加。随着分布式计算概念和体系结构的广泛采用,导致IT基础设施已从单个平台转移到以网络为中心的系统之上。以网络为中心的系统其实是多个单品组件或系统互操作、相互依赖、高度互联而构建的。从宏观层面看,其就是一个复杂巨系统,其内部有着复杂的交互结构和同质/异构组件。对于这样的一个系统,对其的试验鉴定不仅需要对该复杂巨系统总体进行测试,还需要对内部复杂的交互结构进行测试,甚至还需要对内部的同质/异构组件进行单独的组件试验测试。随着网络空间作战的遂行,一个网络中心系统的特征表现为不断增加的复杂性和网络化交互效应的指数级上升,与现在试验需要的人工手动试验过程相比,它要求更快速、更可靠的测试规范、配置和执行。传统的用“黑盒子”(不关注系统构成,只关注系统输入和输出)方法进行的单个组件试验将只是网络中心系统试验方案的一小部分。
从另外一个角度上来说,传统的试验关注于孤立的组件性能、功能和安全,只模拟该组件与其他系统的静态接口。“网络中心系统”由于存在与其他组件和外部环境间的交互作用,某些行为在系统中是动态的或者是突然发生的,因此必须对整个系统进行鉴定,来评估系统各组件的相互依赖性和系统行为的总体表现,而这些是不能通过简单的黑盒子试验来鉴定的。因此,试验的关注点就从“一对多接口”的组件试验,转移到“多对多接口”的复杂网络试验。这样的复杂网络试验在当时来说,是没有相应的系统试验鉴定技术和方法的。由“多对多接口”形成的相互依赖、紧密耦合的系统,这样的系统通常会显示出在设计时无法理解或预期的紧急行为,也不会在孤立的测试中显示出来。
但是我们又不可能对“网络中心系统”所有潜在的依赖关系和执行路径进行逐一试验,因此设计针对“网络中心系统”试验的取舍是,通过对系统试验进行改进,使得在系统全生命周期的各个阶段内,在逼真作战环境中对网络行为进行有效鉴定。在“网络中心系统”的开发阶段,在进行全面的互操作性测试之前,需要更高层次的严格试验来评估单个部件的行为:在运维阶段,“网络中心系统”是否己具备运行能力,不是靠系统的孤立运行来验证的,而是要在特定目标运行环境中与其他系统共同进行试验鉴定,在目标运行环境中达到预期的行为时,才能得到验证。
从多份与美国“国家网络靶场”相关的文献归纳分析看,美国“国家网络靶场”针对试验对象的总体技术设计思路是实现以“网络中心系统”为试验对象的自动化管理、构建、配置、测试和回收。相比典型的接口试验而言,国家网络靶场要提供的是一个更高逼真度的试验/仿真环境,使得“网络中心系统”能够在更深层次和更大规模上进行试验。这个环境需要具备对给定试验/作战环境的模拟仿真,包括通信网络技术、网络设备和应用软件、通用计算机、加密设备,以及在所有这些设备上运行的有特殊用途的数字硬件和软件。此外还有构建环境通常包括的网络流量生成工具,对内部和外部数据进行模拟,以及模拟复杂的网络攻击行为、病毒和攻击技术库等。相比于传统的测试方法,针对“网络中心系统”的试验环境构建需要数千个变量、交互和功能线程。因此,从自动化的角度来思考,构建的试验环境需要通过建模将所有的构建对象抽象化或者配置化,通过构建统一的语言或格式来进行构建配置的描述和解析,才能实现在自动化构建过程中尽可能减少配置差异,同时又方便数千个变量、交互和功能线程的动态调整和变换。
DARPA和洛克希德·马丁公司是目标是国家网络靶场构建的测试对象具有高水平的机器自动化,因为在洛克希德·马丁公司的论述中,为了证明构建国家网络靶场测试对象“网络中心系统”人工和自动化的差异,洛克希德·马丁公司以一个典型的真实局域网为目标进行构建对比,结果发现人工构建的配置总是存在人为导致的配置差异。那么如何来实现高水平的机器构建自动化呢?从科学的角度来说,需要将每个“网络中心系统”的资产通过建模的方式抽象成标准或统一的格式描述,确保该描述的确能够映射或代表“网络中心系统”的资产的客观存在的(或想象中的)事物,是对“网络中心系统”的资产的质的规定(属性和功能)。然后基于该资产的格式描述,通过推理的方式,可自动化构建、变换、参数变量调整等试验测试手段运用,最终达到试验“网络中心系统”总体参数、变量;“网络中心系统”内部交互参数、变量以及“网络中心系统”内部同质/异构组件内部参数、变量的输入输出测试。也就是说,为了实现高度的自动化,国家网络靶场需要将网络空间中表示或表达的所有实物的、逻辑的资产都通过标准化、形式化的表达方法进行描述,然后再通过深入研发的工具,对需要构建的测试资产通过配置的逻辑或深入的推理,将表达方法的集合进行解析并自动化执行资产环境的构建、参数变量的试验输入输出和评估分析等操作。目前我们正在流行的软件定义不就是将所有的定义为明确指定且高度形式化的知识,然后让我们开发的工具去访问这些知识并通过特定的逻辑或推理从而实现定义的么。国家网络靶场针对自动化的构建思路即是如此。不那么正式的资产描述将意味着这些实验功能天生就无法获得所需的知识,因此机器或工具将无法理解。再通俗化来说,就是将世界万物定义为机器能够理解的语言,然后通过机器代替人工实现自动化。
洛克希德·马丁公司设计的“灵活自动网络试验靶场”(FACTR)概念和“网络科学方法”(CSM),其首要需要解决的就是采用一种能够将实验资产描述为机器能够读懂的语言或格式。其将该种方法称之为本体族,该本体家族用于表征国家网络靶场网络实验期间使用的软件和硬件资产。该本体族描述如何将这些本体用于定义、设置、执行和分析实验结果的不同方面,并通过标准化的格式将它们用于更通用的应用程序。通过该本体族,资产描述支持进行资产管理及其关系的某种推理。洛克希德·马丁公司设计选择使用OWL-2 来定义资产本体,OWL-2是一种支持使用描述逻辑SROIQ进行描述的Web本体语言。为了支撑国家网络靶场的应用,洛克希德·马丁公司对其设计了各种各样的查询以及资产本体族的编程接口,每个资产都可通过接口进行软件定义和查询、推理。
这种本体族描述语言的意义在于,其能够把握“网络中心系统”资产的最稳定的要素,并围绕这些要素提取值得关注的信息,映射为一个相对稳定的标准化格式表达。同时,其附带的推理属性还能够便于通过本体族间的关联确定资产间发生交互的可能性、依赖关系以及可能的安全漏洞,并使交互的发生符合客观规律。因此,快速自动地从实验设计中的资产描述中指定和构建测试网络就变得简单多了,通过试验设计文件制定各种资产本体族之间的连接、交互、行为关系,即可自动化构建测试网络环境。
洛克希德·马丁公司设计的“灵活自动网络试验靶场”(FACTR)概念和“网络科学方法”(CSM)还要解决试验过程和试验方法的问题。由于网络系统具有潜在的数千个变量、交互和功能线程,要求进行彻底的、完全的试验是不切实际的。试验什么内容,为描述功能行为而进行的精确评估所需要的逼真度,或针对一个远异常现象,都是复制的挑战。在确定了一个网络系统情况下,全面确定试验内容、收集数据以及分析数据,都需要对大量可能的试验事件进行分析和研究来确定。传统的试验测试都是依靠人工或工具收集的受限数据来进行分析。而“网络中心系统”所涉及的规模和资产太大了,依靠传统的方法必不可取。因此还需科学的方法学来描述系统特性,提供证据来确认或否定一个假设,且保证试验是不可重复,也不会产生有疑问的数据。因此洛克希德·马丁公司设计的网络科学方法(CSM),涉及了测试语言(CSTL),该语言是用于国家网络靶场试验的基于本体的语言。CSTL描述了测试目标、统计实验设计、测试网络组成、传感器放置以及数据分析和可视化。从测试设计到详细的测试网络描述、仪表和控制网络扩充、测试平台构建、数据收集和分析,CSTL语言代表了国家网络靶场试验在其整个生命周期中的表示。通过网络科学方法涉及的测试语言(CSTL)进行形式化试验本体的信息描述,其可以使用通用推理机来查询和重新组合测试规范,从而快速建立实验网络并在靶场上进行测试。此外,它还有助于知识管理以及测试程序和结果的检索。网络科学方法为计算机硬件、软件、系统和网络的试验环节提供了严格的实验设计科学方法,网络科学方法和CSTL语言可以对被测系统(SUT)、测试仪器和环境、试验假设和目标以及测试结果进行正式描述。CSTL语言在整个试验计划、执行和分析周期中均充当网络测试表示的通用语言。在试验计划期间,CSTL语言语言帮助测试科学家开发试验的统计设计。在执行试验时,靶场软件使用CSTL测试规范自动构建测试平台并通过插入测试事件来执行试验。进行测试后,将通过CSTL语言附带的分析数据处理以表示试验结果,并可供以后查看。
为了取得较好的兼容性和衔接,洛克希德·马丁公司的CSTL语言通过调用OWL 2 Web本体语言表示的模块化本体库组成。也就是说,表示试验对象的元素和试验过程和方法的元素其实的相互兼容,能够互相读懂对方意思的。甚至他们就是包含与被包含的关系。而这也是洛克希德·马丁公司设计的网络科学方法(CSM)的主要目标,将测试和评估方法与计算机和网络系统描述统一起来,实现统计试验设计、识别试验响应变量、异常变量和其他实验因素来规范实验的定义。
洛克希德·马丁公司设计的“灵活自动网络试验靶场”(FACTR)概念和“网络科学方法”(CSM)最主要的核心思想是,通过将试验对象进行抽象建模,建立通用的建模框架,从而形成可复用的体系结构。