用于在动态计算机网络中传达数据的交换器的制造方法

文档序号:7792858阅读:254来源:国知局
用于在动态计算机网络中传达数据的交换器的制造方法
【专利摘要】本发明揭示一种交换器及其使用方法。所述交换器包含用于接收数据包及将数据包转发到连接到网络的计算装置的输入及输出电路。所述交换器还包含经配置以存储使端口与连接到所述交换器的计算装置的物理地址相关的若干个表的存储器。所述交换器能够正确地转发指定假身份参数的数据包。所述交换器还能够进行用以跨越许多路径将数据包转发到目的地的动态转发。所述交换器还能够基于所述身份参数中指定假信息的至少一个身份参数与存储于存储器中的表的比较而将数据包转发到若干个输出端口中的一者。
【专利说明】用于在动态计算机网络中传达数据的交换器

【技术领域】
[0001]发明性布置涉及计算机网络安全性,且更特定来说涉及用于在计算机网络的两个或两个以上逻辑子区之间通信的系统,其中所述网络可动态地操纵以抵御恶意攻击。

【背景技术】
[0002]当前网络基础结构的主要弱点是其静态本性。资产接收永久或不常改变的识别,此允许对手几乎不限时间地探测网络、映射及利用漏洞。另外,可捕获在这些固定实体之间行进的数据及给所述数据赋予属性。网络安全性的当前方法围绕固定资产应用例如防火墙及入侵检测系统等技术,且使用加密来保护途中的数据。然而,此传统方法根本上存在缺陷,因为其给攻击者提供固定目标。在今天的全球连接的通信基础结构中,静态网络为易受攻击的网络。
[0003]国防先进研究计划局(DARPA)信息保证(IA)项目已执行动态网络防御领域中的初始研究。在信息保证项目下开发用以出于使观察网络的任何潜在对手混淆的目的而动态地重新指派馈送到预先指定的网络飞地(enclave)中的因特网协议(IP)地址空间的技术。此技术称作动态网络地址变换(DYNAT)。在标题为“用以阻挠对手智能的动态方法(DynamicApproaches to Thwart Adversary Intelligence) ” (2001)的 DARPA 的公开论文中提出DYNAT技术的概述。


【发明内容】

[0004]本发明描述一种用于在交换器将多个装置连接到动态计算机网络时使用所述交换器的方法。所述方法包含接收包含与源计算装置及目的地计算装置相关联的多个身份参数的数据通信。基于第一任务计划中所指定的伪随机函数及种子值伪随机地修改所述多个身份参数的第一集合以指定假信息。所述方法还包含使用所述第一集合的假身份参数中的一者选择用于所述数据通信的路径。通过参考使所述交换器的端口与若干个物理地址相关的表以确定对应于所述数据通信的目的地的物理地址的输出端口而选择所述路径。所述方法进一步包含将所述数据通信转发到对应于所述路径的所述输出端口。
[0005]还描述一种用于在动态计算机网络中转发数据的交换器。所述交换器包含经配置以接收及发射包含多个身份参数的数据包的若干个端口。所述交换器进一步包含用于存储任务计划的存储器,所述任务计划指定伪随机函数及种子值以及基于所述任务计划填充的至少一个表,所述至少一个表使所述多个端口与连接到所述交换器的装置的多个物理地址相关。
[0006]所述交换器还包含处理信息以便将所接收数据包识别为动态及静态中的一者的一或多个处理单元。动态数据包是包含已基于所述任务计划修改以指定假身份参数的所述身份参数的第一集合的数据包。静态数据包是包含专门地指定真身份参数的身份参数的数据包。所述处理单元还通过参考存储于存储器中的所述表而通过使用所述第一集合的假身份参数选择输出端口来转发所述数据包。所述处理单元还通过所述输出端口转发所述数据包。

【专利附图】

【附图说明】
[0007]将参考以下绘图描述实施例,其中遍及所述图,相似编号表示相似物项,且其中:
[0008]图1是对于理解本发明有用的计算机网络的实例。
[0009]图2是在本发明中可用于执行身份参数的某些操控的模块的实例。
[0010]图3是对于理解可用以帮助表征图1中的网络的工具有用的图式。
[0011]图4是可用以选择图1中的模块的动态设定的图形用户接口的对话框的实例。
[0012]图5是可用以选择与图1中的每一模块相关联的作用状态及绕过状态的序列的图形用户接口的对话框的实例。
[0013]图6是对于理解可将任务计划传达到图1中的网络中的多个模块的方式有用的图式。
[0014]图7是可用以选择任务计划且将所述任务计划传达到如图6中所展示的模块的图形用户接口的对话框的实例。
[0015]图8是对于理解图1中的模块的操作有用的流程图。
[0016]图9是对于理解网络控制软件应用程序(NCSA)关于创建及加载任务计划的操作有用的流程图。
[0017]图10是可用以实施图1中的模块的计算机架构的框图。
[0018]图11是可用以实施图1中所展示的网络管理计算机(NAC)的计算机架构的框图。
[0019]图12是对于理解本发明有用的计算机网络的实例。
[0020]图13是对于理解图1中的交换器的操作有用的流程图。
[0021]图14是对于理解图1中的交换器的操作有用的流程图。
[0022]图15是根据本发明的可用以实施用于路由数据包的方法的交换器的实例。
[0023]图16是对于理解可修改的一些类型的身份参数有用的表。

【具体实施方式】
[0024]参考附图描述本发明。所述图未按比例绘制且其经提供以仅图解说明本发明。为了图解说明,下文参考实例性应用描述本发明的数个方面。应理解,陈述众多特定细节、关系及方法以提供对本发明的完全理解。然而,相关领域的技术人员将容易地认识到,可在不具有特定细节中的一或多者的情况下或借助其它方法实践本发明。在其它例子中,未详细展示众所周知的结构或操作以避免使本发明模糊。本发明不受行动或事件的所图解说明的次序限制,因为一些行动可以不同于其它行动或事件的次序发生及/或与其它行动或事件同时发生。此外,并非需要所有所图解说明的行动或事件来实施根据本发明的方法。
[0025]还应了解,本文中所使用的术语仅用于描述特定实施例的目的而并非打算限制本发明。如本文中所使用,单数形式“一(a及an)”、及“所述(the) ”也打算包含复数形式,除非上下文另外清楚地指示。此外,就在详细说明及/或权利要求书中使用术语“包含(including、include) ”、“具有(having、has及with) ”或其变化形式来说,此类术语打算以类似于术语“包括(comprising) ”的方式为包含性的。
[0026]此外,除非另外定义,否则本文中所使用的所有术语(包含技术及科学术语)均具有与本发明所属领域的技术人员通常所理解相同的含义。应进一步理解,应将术语(例如常用字典中所定义的那些术语)解释为具有与其在相关技术的上下文中的含义一致的含义,而不应以理想化或过分形式化意义来解释,除非本文中明确界定如此。
[0027]如本文中所使用,术语“动态”是指能够根据如下文进一步详细描述的移动目标技术操作的网络、网络的组件及/或网络设备。类似地,术语“静态”是指不能根据移动目标技术操作的网络、网络的组件及/或网络设备。
[0028]身份敏捷计算机网络
[0029]现在参考图1,其展示包含多个计算装置的示范性网络100的图式。所述计算装置可包含客户端计算机101到103,网络管理计算机(NAC) 104,服务器111、112,网络层2交换器108、109,层3交换器110及桥接器115。所述客户端计算机可为可能需要网络服务的任何类型的计算装置,例如常规平板计算机、笔记型计算机、膝上型计算机或桌上型计算机。层3交换器110可为在计算机网络之间路由数据包的常规路由装置。集线器108、109是如此项技术中众所周知的常规集线器装置(例如,以太网集线器)。服务器111、112可提供由客户端计算机101到103利用的各种计算服务。举例来说,服务器111、112可为提供用于由客户端计算机101到103使用的计算机文件的共享存储的位置的文件服务器。
[0030]用于网络100的通信媒体可为有线的、无线的或两者,但在本文中为了简化及避免使本发明模糊而将描述为有线网络。所述网络将使用通信协议传达数据。如此项技术中众所周知,通信协议定义用于遍及网络传达数据的格式及规则。图1中的网络可使用现在已知或未来将知晓的任何通信协议或协议组合。举例来说,所述网络可针对此类通信使用众所周知的以太网协议套件。或者,所述网络可利用其它协议,例如因特网协议套件(通常称为TCP/IP)、S0NET/SDH或不同步传送模式(ATM)通信协议。在一些实施例中,这些通信协议中的一或多者可以组合方式使用。虽然图1中展示一个网络拓扑,但本发明在此方面不受限制。而是,可使用任何类型的适合网络拓扑,例如总线网络、星形网络、环形网络或网状网络。
[0031]本发明大体来说涉及一种用于在计算机网络中(例如,在计算机网络100中)传达数据的方法,其中将数据从第一计算装置传达到第二计算装置。所述网络内的计算装置用多个身份参数表示。如本文中所使用的短语“身份参数”可包含例如因特网协议(IP)地址、媒体接入控制(MAC)地址、端口等等物项。然而,本发明在此方面不受限制,且身份参数也可包含用于表征网络节点的多种其它信息。下文进一步详细地论述本文中所预期的各种类型的身份参数。发明性布置涉及使用移动目标技术(MTT)来操控网络内的一或多个计算装置的此类些身份参数中的一或多者。此技术掩饰此类计算装置的通信型式及网络地址。如本文中所描述的身份参数的操控通常连同网络中的数据通信一起执行,即,在将数据从网络中的第一计算机(例如,客户端计算机101)传达到网络中的第二计算机(例如,客户端计算机102)时执行。因此,所操控的身份参数可包含源计算装置(数据始发于其的装置)及目的地计算装置(数据正被发送到其的装置)的那些身份参数。所传达的身份参数的集合在本文中称为身份参数集合(IDP集合)。此概念图解说明于图1中,其展示IDP集合120作为数据包(未展示)的部分由客户端计算机101发射。
[0032]根据发明性布置的过程涉及在计算机网络内的第一位置处选择性地修改数据包或数据报中所含有的指定源计算装置及/或目的地计算装置的一或多个身份参数的值。根据任务计划修改身份参数。其中执行此修改的位置将通常与模块105到107、113、114中的一者的位置重合。再次参考图1,可观察到,模块105、106、107、113、114在构成所述网络中的节点的各种计算装置之间插入于此网络中。在这些位置中,所述模块拦截数据包通信、执行身份参数的必要操控且沿发射路径重新发射数据包。在替代实施例中,模块105、106、107、113、114可执行类似功能,但可直接集成到计算装置中的一或多者中。举例来说,所述模块可集成到客户端计算机101、102、103,服务器111、112,层2交换器108、109中及/或层3交换器层3交换器110内。
[0033]另外,网络100可划分成通过层3交换器110连接的若干个逻辑子区(有时称为子网络或子网)。企业网络可出于多种管理或技术原因而划分成若干个子网,所述原因包含但不限于隐藏网络的拓扑以使其对外部主机不可见、利用不同网络协议连接网络、在子网层级上单独管理网络寻址方案、由于经约束数据连接而启用跨越子网的数据业务的管理及诸如此类。子网分割为此项技术中众所周知的且将不做进一步详细描述。
[0034]再次参考图1,网络100划分成两个逻辑网络,第一逻辑网络130及第二逻辑网络132。如本文中所使用的短语“逻辑网络”是指计算机网络的任何逻辑子区。在一实施例中,逻辑网络130、132通过层3交换器110连接。层3交换器110负责引导逻辑网络之间(即,从客户端计算机101到客户端计算机103)的业务。层3交换器110还负责引导从连接到网络100的任何主机去往第二网络124的业务。在图1中所展示的实施例中,从网络100路由到第二网络124的业务通过桥接器115。如同上文的模块,桥接器115的功能性可集成于层3交换器110内。
[0035]图2中展示模块105的功能性框图的实例。模块106到107、113、114可具有类似功能性框图,但应理解,本发明在此方面不受限制。如图2中所展示,模块105具有至少两个数据端口 201、202,其中的每一者可对应于相应网络接口装置204、205。在端口 201处接收的数据在网络接口装置204处处理且暂时存储于输入缓冲器210处。处理器215存取输入缓冲器210中所含有的输入数据包且执行如本文中所描述的身份参数的任何必要操控。经修改数据包传递到输出缓冲器212且随后使用网络接口装置205从端口 202发射。类似地,在端口 202处接收的数据在网络接口装置205处处理且暂时存储于输入缓冲器208处。处理器215存取输入缓冲器208中所含有的输入数据包且执行如本文中所描述的身份参数的任何必要操控。经修改数据包传递到输出缓冲器206且随后使用网络接口装置204从端口 201发射。在每一模块中,处理器215根据存储于存储器218中的任务计划220执行身份参数的操控。
[0036]从图2应理解,模块优选地经配置使得其双向地操作。在此类实施例中,取决于特定数据包的源,模块可实施不同修改功能。可根据特定数据包的源计算装置在任务计划中指定每一模块中的动态修改功能。模块可通过任何适合手段确定数据包的源。举例来说,可出于此目的使用数据包的源地址。
[0037]在网络100内的选定模块处,处理器215将确定将代替真身份参数值使用的一或多个假身份参数值。处理器将把一或多个真身份参数值变换为一或多个假身份参数值,所述假身份参数值优选地通过伪随机函数来指定。在此变换之后,模块将沿着发射路径将经修改包或数据报转发到网络的下一节点。在通信路径中的后续点处,正监视此类网络通信的对手将观察到关于在网络上通信的计算装置的身份的假或不正确信息。
[0038]在优选实施例中,根据一或多个触发事件的发生使由伪随机函数指定的假身份参数变化。触发事件致使处理器215使用伪随机函数来产生新的假身份参数值集合,真身份参数被变换成所述假身份参数值。因此,触发事件充当本文中所描述的假身份参数的动态变化的基础。下文更详细地论述触发事件。然而,应注意,用于选择新的假身份参数值集合的触发事件可基于时间的流逝及/或某些网络事件的发生。触发事件也可通过用户命令起始。
[0039]上文所描述的身份参数的变换提供出于阻挠网络攻击的目的而操纵计算机网络100的一种方式。在优选实施例中,由处理器215实施的任务计划220也将控制计算机网络可操纵的方式的某些其它方面。举例来说,任务计划可指定操控身份参数的动态选择。所述动态选择可包含选择哪些身份参数进行修改及/或选择此类身份参数的数目的选择。此可变选择过程提供可用以进一步阻挠对手渗入或了解计算机网络100的努力的不确定性或变化的添加的维度。作为此技术的实例,考虑在第一时间周期期间,模块可修改每一数据包的目的地IP地址及目的地MAC地址。在第二时间周期期间,模块可操控每一数据包中的源IP地址及源主机名称。在第三时间周期期间,模块可操控源端口编号及源用户名称。身份参数的选择的改变可同步地发生(同时改变所有选定身份参数)。或者,身份参数的选择的改变可不同步地发生(选定身份参数的群组随给选定身份参数的群组添加或移除个别身份参数而递增地改变)。
[0040]伪随机函数优选地用于确定将操控或变换成假值的身份值的选择。换句话说,模块将仅变换通过伪随机函数选择的身份参数。在优选实施例中,根据触发事件的发生使由伪随机函数指定的身份参数的选择变化。触发事件致使处理器215使用伪随机函数来产生将变换成假身份参数的身份参数的新选择。因此,触发事件充当本文中所描述的身份参数的选择的动态变化的基础。值得注意的是,也可根据伪随机算法使身份参数的值变化。
[0041]所述模块有利地也能够提供出于阻挠网络攻击的目的而操纵计算机网络的第三方法。具体来说,加载于每一模块中的任务计划可使网络内的其中发生身份参数的修改或变换的位置动态地变化。考虑从客户端计算机101发射到客户端计算机102的IDP集合120中的身份参数的修改可发生于模块105中。此条件展示于图1中,其中在模块105中操控IDP集合120中所含有的身份参数以使得IDP集合120被变换为新的或经修改的IDP集合122。与IDP集合120中的身份参数相比,IDP集合122中的身份参数中的至少一些身份参数是不同的。但其中发生此变换的位置优选地也由任务计划控制。因此,IDP集合120的操控可(举例来说)有时发生在模块113或114处而非在模块105处。使其中发生身份参数的操控的位置选择性地变化的此能力给计算机网络的操纵能力添加又一重要维度。
[0042]通过选择性地控制每一模块的操作状态促进其中修改身份参数的位置的动态变化。为此目的,每一模块的操作状态优选地包含:(I)作用状态,其中根据当前任务计划处理数据;及(2)绕过状态,其中包可流动通过模块,就如模块不存在一样。通过选择性地致使某些模块处于作用状态中且致使某些模块处于待用状态中而控制其中执行动态修改的位置。可通过以协调方式使模块的当前状态动态地变化而动态地改变所述位置。
[0043]任务计划可包含用于确定计算机网络100内的其中将操控身份参数的位置的预定义序列。其中将操控身份参数的位置将在由触发事件指示的时间根据所述序列改变。举例来说,所述触发事件可致使到用于如本文中所描述的身份参数的操控或变换的新位置的转变。因此,所述触发事件充当其中修改身份参数的位置的改变的发生的基础,且预定义序列确定所述新位置将在何处。
[0044]从前述内容,应了解,在模块处修改数据包以包含假身份参数。在计算机网络内的某一点处,使身份参数恢复到其真值以使得身份参数可用以根据特定网络协议恰当地执行其既定功能是必要的。因此,发明性布置还包含在第二位置(即,第二模块)处根据任务计划动态地修改身份参数的经指派值。在第二位置处的修改基本上包括在第一位置处用以修改身份参数的过程的逆过程。第二位置处的模块可因此使假值身份参数恢复或变换回到其真值。为了实现此动作,第二位置处的模块必须能够确定至少:(I)将变换的身份参数值的选择 '及(2)选定身份参数从假值到真值的正确变换。实际上,此过程涉及用以确定身份参数选择的伪随机过程及对此类身份参数值实现的改变的逆过程。逆变换步骤图解说明于图1中,其中在模块106处接收IDP集合122,且将IDP集合122中的身份参数值变换或操控回到其原始或真值。在此情景中,模块106将身份参数值转换回到IDP集合120的那些身份参数值。
[0045]值得注意的是,模块必须具有确定适用于其接收到的每一数据通信的恰当变换或操控的某种方式。在优选实施例中,通过检查所接收数据通信内所含有的至少源地址身份参数而执行此确定。举例来说,源地址身份参数可包含源计算装置的IP地址。一旦知晓源计算装置的真身份,模块即咨询任务计划(或从任务计划导出的信息)以确定其需要采取哪些动作。举例来说,这些动作可包含将某些真身份参数值转换为假身份参数值。或者,这些改变可包含将假身份参数值转换回到真身份参数值。
[0046]值得注意的是,将存在其中所接收数据通信中所含有的源地址身份参数信息已改变为假值的例子。在那些情形下,接收数据通信的模块将不能立即确定数据通信的源的身份。然而,在此类例子中,接收通信的模块可仍识别源计算装置。这在接收模块处通过将假源地址身份参数值与查找表(LUT)进行比较而实现,所述查找表列示在特定时间期间使用的所有此类假源地址身份参数值。LUT还包含对应于假源地址值的真源地址身份参数值的列表。LUT可直接由任务计划提供或可由任务计划内所含有的信息产生。在任一情况中,可从LUT容易地确定真源地址身份参数值的识别。一旦已确定真源地址身份参数,那么接收数据通信的模块可使用此信息来确定(基于任务计划)需要对身份参数的哪些操控。
[0047]值得注意的是,任务计划还可指定其中使身份参数恢复到其真值的第二位置的变化。举例来说,假定在包括模块105的第一位置处动态地修改身份参数。任务计划可指定如所描述在模块106处发生使身份参数恢复到其真值,但或者,可指定代替地在模块113或114处发生动态修改。在一些实施例中,任务计划根据预定义序列动态地确定其中发生此类操控的位置。所述预定义序列可确定其中将发生身份参数的操控的位置或模块的序列。
[0048]涉及不同位置处的动态修改的转变优选地根据触发事件发生。因此,预定义序列确定其中将发生数据操控的位置的型样或序列,且触发事件充当用于致使从一个位置到下一位置的转变的基础。下文更详细地论述触发事件;然而,应注意,触发事件可基于时间的流逝、用户控制及/或某些网络事件的发生。可以与上文关于第一位置所描述相同的方式实现对第二位置(即,其中使身份参数返回到其真值)的选择的控制。具体来说,两个或两个以上模块的操作状态可在作用状态与绕过状态之间双态切换。身份参数的操控将仅发生于具有作用操作状态的模块中。具有绕过操作状态的模块将仅传递数据包而不进行修改。
[0049]替代方法也可用于控制其中将发生身份参数的操控的位置。举例来说,网络管理员可在任务计划中定义其中可将身份参数从真值转换为假值的数个可能模块。在发生触发事件后,可即刻通过使用伪随机函数且使用触发时间作为所述伪随机函数的种子值而从数个模块当中选择新位置。如果每一模块均使用相同初始种子值实施同伪随机函数,那么每一模块将计算相同伪随机值。可基于时钟时间(例如GPS时间或系统时钟时间)确定触发时间。以此方式,每一模块可独立地确定其当前是否为其中应发生身份参数的操控的作用位置。类似地,网络管理员可在任务计划中定义其中动态操控使身份参数返回到其正确值或真值的数个可能模块。将哪一模块用于此目的的选择也可根据如本文中所描述的触发时间及伪随机函数确定。用于确定其中将发生身份参数操控的位置或模块的其它方法也是可能的。因此,本发明并不打算限于本文中所描述的特定方法。
[0050]值得注意的是,使其中操控身份函数的第一及/或第二位置的定位变化将通常导致使第一与第二位置之间沿网络通信路径的物理距离变化。第一与第二位置之间的距离在本文中称为距离向量。所述距离向量可为第一与第二位置之间沿通信路径的实际物理距离。然而,将所述距离向量视为表示存在于第一与第二位置之间的通信路径中的网络节点的数目是有用的。应了解,动态地选择网络内的第一及第二位置的不同定位可具有改变第一与第二位置之间的节点的数目的效应。举例来说,在图1中,在模块105、106、107、113、114中的选定者中实施身份参数的动态修改。如先前所描述地确定实际上用以分别实施动态修改的模块。如果模块105用于将身份参数转换为假值且模块106用以将其转换回到真值,那么在模块105与106之间存在三个网络节点108、110、109。但如果模块113用以转换为假值且模块114用以将身份参数转换回到真值,那么在模块113与114之间存在仅一个网络节点110。因此,应了解,动态地改变其中发生动态修改的位置的定位可使距离向量动态地变化。距离向量的此变化给如本文中所描述的网络操纵或修改提供可变性的添加的维度。
[0051]在本发明中,身份参数值的操控、身份参数的选择及其中这些身份参数的位置各自定义为操纵参数。每当在此三个操纵参数中的一者中发生改变时,可认为网络操纵已发生。此三个操纵参数中的一者无论在何时改变,均可认为网络操纵已发生。为了最有效地阻挠对手渗入计算机网络100的努力,优选地借助于如先前所描述的伪随机过程控制网络操纵。所属领域的技术人员将了解,混乱过程也可用于执行此功能。与伪随机函数相比,混乱过程在技术上是不同的,但出于本发明的目的,可使用任一者且两者视为等效的。在一些实施例中,相同伪随机过程可用于使操纵参数中的两者或两者以上动态地变化。然而,在本发明的优选实施例中,使用两个或两个以上不同伪随机过程以使得这些操纵参数中的两者或两者以上独立于其它操纵参数而被修改。
[0052]触发事件
[0053]如上文所述,通过至少一个触发控制对操纵参数中的每一者的动态改变。触发为致使相对于本文中所描述的动态修改而发生改变的事件。换句话说,可认为,触发致使网络以不同于在先前时间(即,在发生触发之前)的新方式操纵。举例来说,在第一时间周期期间,任务计划可致使可将IP地址从值A改变为值B ;但在触发事件之后,IP地址可代替地从值A改变为值C。类似地,在第一时间周期期间,任务计划可致使IP地址及MAC地址被修改;但在触发事件之后,所述任务计划可代替地致使MAC地址及用户名称被修改。作为第三实例,考虑在第一时间周期期间,任务计划可致使身份参数在IDP集合120到达模块105处时改变;但在触发事件之后,可致使身份参数代替地在IDP集合120到达模块113处时改变。
[0054]在其最简单形式中,触发可为用户激活的或基于简单时序方案。在此实施例中,每一模块中的时钟时间可充当触发。举例来说,触发事件可定义为在每60秒时间间隔的期满时发生。对于此布置,操纵参数中的一或多者可根据预定时钟时间每60秒改变。在一些实施例中,所有操纵参数可同时改变以使得所述改变为同步的。在稍微更复杂实施例中,也可使用基于时间的触发布置,但可针对每一操纵参数选择不同独特触发时间间隔。因此,假身份参数值可能以时间间隔X改变,身份参数的选择将根据时间间隔Y改变,且其中执行此类改变的位置将以时间间隔Z发生,其中X、Y及Z为不同值。
[0055]应了解,在依赖于时钟时间作为触发机制的本发明的实施例中,有利的是,提供如各种模块105、106、107、113、114中的时钟之间的同步以确保包不会由于未辨识的身份参数而丢失或丢弃。同步方法是众所周知的且任何适合的同步机制均可用于此目的。举例来说,可通过使用高度准确的时间参考(例如GPS时钟时间)而使模块同步。或者,可将独特无线同步信号从中央控制设施广播到模块中的每一者。
[0056]关于本发明,其它类型的触发也是可能的。举例来说,触发事件可基于潜在网络安全性威胁的发生或检测。根据本发明的实施例,潜在网络安全性威胁可由网络安全性软件套件识别。或者,可在于模块105、106、107、113、114处接收到数据包后即刻识别潜在网络安全性威胁,其中所述包含有与网络操纵的目前状态不一致的一或多个身份参数。无论用于识别网络安全性威胁的基础如何,此威胁的存在可充当触发事件。基于网络安全性威胁的触发事件可引起与上文所描述的基于时间的触发引起的那些网络操纵相同类型的网络操纵。举例来说,假身份参数、身份参数的选择及身份参数变换的位置可保持稳定(即,不改变),其中检测到网络安全性威胁的情况除外。举例来说,可能在其中频繁网络操纵是不合意的计算机网络中选择此布置。
[0057]或者,基于时间的触发事件可与基于对网络安全性的潜在威胁的触发事件组合。在此类实施例中,与基于时间的触发相比,基于安全性威胁的触发事件可对网络操纵具有不同影响。举例来说,基于安全性威胁的触发事件可引起网络操纵的策略性或防御性改变以便更积极应对此网络安全性威胁。此类措施的精确本性可取决于威胁的本性,但可包含多种响应。举例来说,可选择不同伪随机算法,及/或可增加每一 IDP集合120中经选择以用于操控的身份参数的数目。在已利用基于时间的触发的系统中,响应还可包含增加网络操纵的频率。因此,可关于以下各项做出更频繁改变:⑴假身份参数值;⑵对每一 IDP集合中待改变的身份参数的选择;及/或(3)其中改变身份参数的第一及第二位置的定位。因此,本文中所描述的网络操纵提供用于识别潜在网络安全性威胁及对潜在网络安全性威胁做出响应的方法。
[0058]任务计划
[0059]根据本发明的优选实施例,根据任务计划控制本文中所描述的网络操纵。任务计划为定义及控制网络的上下文及安全性模型内的操纵能力的方案。如此,任务计划可表示为从网络管理计算机(NAC) 104传达到每一模块105到107、113到114的数据文件。任务计划此后由每一模块用以控制身份参数的操控且使其活动与网络中的其它模块的动作协调。
[0060]根据优选实施例,任务计划可由网络管理员不时地修改以更新或改变网络操纵阻挠潜在对手的方式。如此,任务计划给网络管理员提供促进对网络操纵将在网络内发生的时间、地点及方式的完全控制的工具。此更新能力允许网络管理员修整计算机网络的行为以适合当前操作条件且更有效地阻挠对手渗入网络的努力。可由用户定义及存储多个任务计划以使得其可由网络内的模块存取。举例来说,多个任务计划可存储于NAC 104处且视需要传达到模块。或者,多个任务计划可存储于每一模块上且可视需要或视情况经激活以维持网络的安全性。举例来说,如果网络管理员确定或怀疑对手已发现网络的当前任务计划,那么管理员可希望改变所述任务计划。有效安全性程序也可指示周期性地改变任务计划。
[0061]创建任务计划的过程可通过对网络100进行建模开始。模型的创建通过在网络命令中心处的计算机或服务器上执行的网络控制软件应用程序(NCSA)促进。举例来说,在图1中所展示的实施例中,NCSA可在NAC 104上执行。网络模型优选地包含定义网络100中所包含的各种计算装置之间的数据连接及/或关系的信息。NCSA将提供促进输入此关系数据的适合接口。根据一个实施例,NCSA可促进将数据输入到可用以定义任务计划的表中。然而,在优选实施例中,使用图形用户接口来促进此过程。现在参考图3,NCSA可包含网络拓扑模型产生器工具。所述工具用以辅助网络管理员定义网络的各种组件中的每一者之间的关系。网络拓扑工具提供其中管理员可通过使用光标304而拖放网络组件302的工作空间300。网络管理员也可创建各种网络组件302之间的数据连接306。作为此建模过程的部分,网络管理员可提供各种网络组件(包含模块105到107、113、114)的网络地址信息。
[0062]一旦已将网络建模,其即可由网络管理员保存及使用以定义各种模块105到107、113、114表现及彼此交互的方式。现在参考图4,NCSA可产生可用以进一步开发任务计划的对话框400。下拉式菜单432可用以选择待将对话框400中的设定应用于其的特定模块(例如,模块105)。或者,网络管理员可使用下拉式菜单432来指示打算将对话框400中的设定应用于网络内的全部模块(例如,通过选择菜单432中的“全部”)。过程可通过指定是否将总是在模块中的每一者中修改固定身份参数集合或是否应使所操控的身份参数集合动态地变化而继续。如果打算使将在模块中操控的身份参数的选择或集合动态地变化,那么网络管理员可标记复选框401以指示所述偏好。如果未标记复选框401,那么此将指示待变化的身份参数集合为不随时间变化的固定集合。
[0063]对话框400包含标签402、404、406,所述标签允许用户选择其出于创建任务计划的目的而希望处理的特定身份参数。出于本发明的目的,对话框400促进仅三个身份参数的动态变化。具体来说,这些身份参数包含IP地址、MAC地址及端口地址。可通过提供额外标签而使更多或更少身份参数动态地变化,但所述的三个身份参数足以解释发明性概念。在图4中,用户已选择标签402来处理身份参数的IP地址类型。在标签402内,提供用于指定与选定模块内的IP地址的动态变化相关的细节的多种用户接口控件408到420。可提供更多或更少控件以促进IP地址类型的动态操控,且仅提供所展示的控件以辅助读者理解所述概念。在所展示的实例中,网络管理员可通过选择(例如,借助指向装置(例如鼠标))标记为启用IP地址跳跃的复选框408而启用IP地址的动态变化。类似地,网络管理员可指示将使源地址、目的地地址还是两者变化。在此实例中,标记源地址框410及目的地地址框412两者,从而指示将改变两种类型的地址。可由管理员在列表框422、424中指定源地址及目的地地址的所允许值的范围。
[0064]通过选择伪随机过程而指定用以选择假IP地址值的特定伪随机过程。在框414、415中指定此选择。不同伪随机过程可具有针对可变真随机程度的不同复杂性等级,且管理员可选择最适合网络100的需要的过程。
[0065]对话框400也允许网络管理员设定待用于IP地址身份参数的动态变化的触发类型。在此实例中,用户已选择框416,从而指示基于时间的触发将用于确定何时转变为新的假IP地址值。此外,复选框418已经选择以指示基于时间的触发将在周期性基础上发生。滑块420可由用户调整以确定基于周期性时间的触发的频率。在所展示的实例中,触发频率可在每小时6个触发的发生率(每10分钟发生触发)与每小时120个触发的发生率(每30秒发生触发)之间调整。在此实例中,也可选择其它类型的触发。举例来说,对话框402包含网络管理员可借以选择基于事件的触发的复选框428、430。数个不同特定事件类型可经选择以形成用于此类基于事件的触发(例如,事件类型1、事件类型2等)的基础。这些事件类型可包含各种潜在计算机网络安全性威胁的检测。在图4中,标签404及406类似于标签402,但其中的控件经修整以适合MAC地址及端口值而非IP地址的动态变化。可提供用于控制其它类型的身份参数的动态变化的额外标签。
[0066]任务计划还可指定用于使其中修改身份参数的位置动态地变化的计划。在一些实施例中,通过控制定义每一模块何时处于作用状态或绕过状态中的序列而促进此可变位置特征。因此,任务计划有利地包含指定此序列的某一方式。在本发明的一些实施例中,此可涉及使用经定义时间间隔或时隙,所述经定义时间间隔或时隙由触发事件的发生分离。
[0067]现在参考图5,对话框500可由NCSA提供以促进位置序列及时序信息的协调及输入。对话框500可包含控件502,控件502用于选择将包含于时期506内的时隙50+到504n的数目。在所图解说明的实例中,网络管理员已定义每时期4个时隙。对话框500还可包含表503,表503包含网络100中的所有模块。针对所列不的每一模块,所述表包含一个时期506的可用时隙504到5044的图形表示。应记得,对其中操控身份参数的位置的动态控制通过每一模块是处于作用操作状态中还是处于绕过操作状态中而确定。因此,在图形用户接口内,用户可移动光标508且做出选择以指定在每一时隙期间特定模块是处于作用模式中还是绕过模式中。在所展示的实例中,模块105在时隙504及5043期间为作用的,但在时隙5042、5044期间处于绕过模式中。相反地,模块113在时隙5042、5044期间为作用的,但在时隙501及5043期间处于绕过模式中,参考图1,此意味着身份参数的操控在时隙501及5043期间发生于与模块105相关联的位置处,但在时隙5042、5044期间代替地发生于模块113处。
[0068]在图5中所展示的实例中,网络管理员已选择使模块114总是在作用模式中操作(即,模块114在所有时隙期间为作用的)。因此,针对从客户端计算机101发射到客户端计算机103的数据通信,数据包将交替地在模块105、113中操控,但将总是在模块114处操控。最后,在此实例中,网络管理员已选择在时隙501到5044期间将模块106及107维持于绕过模式中。因此,在经定义时隙中的任一者期间将不在这些模块处执行身份参数的操控。一旦已在对话框500中定义模块时序,网络管理员即可选择按钮510来将改变存储为经更新任务计划的部分。可以各种格式保存任务计划。在一些实施例中,可将任务计划保存为简单表或可由每一模块用于控制模块的行为的其它类型的经定义数据结构。
[0069]任务计划的分布及加载
[0070]现在将进一步详细地描述如本文中所揭示的任务计划的分布及加载。再次参考图1,可观察到,模块105到107、113、114遍及网络100分布于一或多个位置处。所述模块集成于通信路径内以拦截此类位置处的通信、执行必要操控且将数据转发到网络内的其它计算装置。在前述布置的情况下,本文中所描述的对模块的任何必要维护(例如,更新任务计划的维护)将有可能在替换模块或将模块重新编程时打断网络通信。在其中网络服务的可靠性及可用性为至关重要的许多情形下,此类打断是不合意的。举例来说,对于军事、应急服务及商业所使用的计算机网络,不中断网络操作可为至关重要的。
[0071]为了确保不中断网络操作,每一模块优选地具有数种操作状态。这些操作状态包含:(1)关断状态,其中模块被关闭电源且不处理任何包;(2)初始化状态,其中模块根据任务计划安装软件脚本;(3)作用状态,其中根据当前任务计划处理数据 '及(4)绕过状态,其中包可流动通过模块,就如模块不存在一样。模块经配置以使得在其处于作用状态或绕过状态中时,模块可接收及加载由网络管理员提供的经更新任务计划。模块操作状态可由网络管理员借助于(举例来说)在NAC 104上执行的NCSA人工地控制。举例来说,用户可通过使用图形用户接口控制面板选择各种模块的操作状态。用于控制网络的操作状态的命令经由网络100传达,或者可通过任何其它适合手段来传达。举例来说,可出于所述目的而使用单独有线或无线网络(未展示)。
[0072]任务计划可直接加载于每一模块的物理位置处,或其可从NCSA传达到模块。此概念图解说明于图6中,其展示任务计划604经由通信媒体606从NCSA 602传达到模块105到107、113、114中的每一者。在所展示的实例中,NCSA软件应用程序在由网络管理员操作的NAC 104上执行。在一些实施例中,通信媒体可包含使用计算机网络100的带内发信。或者,带外网络(例如,单独无线网络)可用作通信媒体606以将经更新任务计划从NCSA传达到每一模块。如图7中所展示,NCSA可提供对话框700以促进数个任务计划702中的一者的选择。这些任务计划702中的每一者可存储于NAC 104上。网络管理员可从数个任务计划702中的一者做出选择,此后其可激活发送任务计划按钮704。或者,多个任务计划可传达到每一模块且存储于那儿。在任一情景中,用户可选择经定义任务计划中的一者来激活。
[0073]响应于用以发送任务计划的命令,选定任务计划在模块处于其中其经配置以用于主动地执行身份参数的动态修改的作用状态中(如本文中所描述)时传达到所述模块。此布置最小化其间网络以明文方式操作且不操控身份参数的时间。然而,经更新任务计划也可在模块处于绕过模式中时传达到所述模块,且此方法在某些情况中可为合意的。
[0074]一旦任务计划由模块接收,其即可自动地存储于模块内的存储器位置中。在一个实施例中,可致使模块进入绕过状态,且在仍处于所述状态中时,模块可加载与新任务计划相关联的数据。进入到绕过状态中且加载新任务计划数据的此过程可响应于接收到任务计划而自动地发生,或可响应于来自由网络管理员控制的NCSA软件的命令而发生。所述新任务计划优选地包含改变使身份参数值变化的方式。一旦已加载新任务计划,模块105到107,113及114即可以确保不发生数据通信错误的同步方式从绕过模式转变为作用模式。任务计划可指定模块将返回到作用模式的时间,或网络管理员可使用NCSA来将命令传达到各种模块,从而引导其进入到作用模式中。更新任务计划的前述过程有利地允许网络安全性程序的改变在不打断附接到计算机网络100的各种计算装置当中的通信的情况下发生。
[0075]每一模块105、106、107、113及114处的各种身份参数的动态操控优选地由在每一模块105到107、113、114上执行的应用软件控制。然而,应用软件的行为有利地由任务计划控制。
[0076]现在参考图8,其提供概述每一模块105到107、113、114的操作的流程图。为避免混淆,关于在单个方向上的通信描述过程。举例来说,在模块105的情况中,单个方向可涉及从客户端计算机101发射到集线器108的数据。然而,在实践中,优选地,模块105到107、113、114双向地操作。所述过程在将模块开启电源时在步骤802处开始且继续到步骤804,其中利用模块应用软件执行本文中所描述的方法。在步骤806中,从模块内的存储器位置加载任务计划。在此点处,模块准备好开始处理数据且继续进行到在步骤808处处理数据,其中其从模块的输入数据缓冲器存取数据包。在步骤810中,模块检查以确定其是否处于绕过操作模式中。如果如此,那么在步骤812中在不具有数据包的任何修改的情况下重新发射在步骤808中存取的数据包。如果模块不在绕过模式中,那么其必定在其作用操作模式中且继续到步骤814。在步骤814中,模块读取数据包以确定数据包始发于其的源节点的身份。在步骤816中,其检查包以确定源节点是否有效。可将所指定源节点与有效节点的列表进行比较以确定所指定源节点当前是否有效。如果其并非有效节点,那么在步骤818中摒弃包。在步骤820中,过程检查以确定触发事件是否发生。触发事件的发生将影响对待使用的假身份值的选择。因此,在步骤822中,模块基于触发信息、时钟时间及任务计划中的一或多者确定待使用的假身份值。模块然后继续到步骤826,其中其操控数据包的身份参数。一旦操控完成,即将数据包从模块的输出端口重新发射到邻近节点。在步骤830中,做出关于是否已命令将模块关闭电源的确定。如果如此,那么过程在步骤832处结束。在步骤808中,过程继续且从模块的输入数据缓冲器存取下一数据包。
[0077]现在参考图9,其提供概述用于管理动态计算机网络的本文中所描述的方法的流程图。过程在步骤902中开始且继续到步骤904,其中创建网络模型(例如,如关于图3所展示及描述)。在步骤906中,做出关于是否将创建新任务计划的确定。如果如此,那么在步骤908中创建新任务计划且过程继续到步骤910,其中选择新任务计划。或者,如果在步骤906中已创建所要任务计划,那么方法可直接继续到步骤910,其中选择现有任务计划。在步骤912中,将任务计划传达到模块(例如,模块105到107、113、114),其中将任务计划存储于存储器位置中。当网络管理员准备好实施新任务模型时,在步骤914中发送命令,所述命令致使模块进入如本文中所描述的待用模式。当模块处于此待用模式中时,在步骤916处加载任务计划。任务计划的加载发生于每一模块处以使得可使用任务计划来控制在模块上执行的应用软件的操作。特定来说,使用任务计划来控制应用软件执行身份参数的动态操控的方式。在步骤918中,再次致使任务模块进入到其中每一任务模块根据任务计划执行身份参数的操控的作用操作模式中。步骤914、916及918可响应于从网络管理员发送的特定命令而发生,或可响应于在步骤912中接收到任务计划而在每一模块处自动地发生。在步骤918之后,模块根据已加载的任务计划继续执行处理。在步骤920中,过程通过检查以确定用户是否已指示改变任务计划的期望而继续;如果如此,那么过程返回到步骤906,其中其如上文所描述地继续。如果不存在用户或网络管理员希望改变现有任务计划的指示,那么过程在步骤922中确定其是否已被指示终止。如果如此,那么过程在步骤924中终止。如果未接收到终止指令,那么过程返回到步骤920且继续。
[0078]现在参考图10,其提供展示可用于执行本文中所描述的身份参数的操控的示范性模块1000的计算机架构的框图。模块1000包含经由总线1022彼此通信的处理器1012 (例如中央处理单元(CPU))、主存储器1020及静态存储器1018。计算机系统1000可进一步包含用以指示模块的状态的显示器单元1002,例如液晶显示器或IXD。模块1000还可包含允许模块同时在两个单独数据线上接收及发射数据的一或多个网络接口装置1016、1017。两个网络接口端口促进图1中所展示的布置,其中每一模块经配置以同时拦截及重新发射从网络上的两个单独计算装置接收的数据包。
[0079]主存储器1020包含其上存储有经配置以实施本文中所描述的方法、程序或功能中的一或多者的一或多组的指令1008(例如,软件代码)的计算机可读存储媒体1010。指令1008也可在其由模块执行期间完全或至少部分地驻存于静态存储器1018内及/或处理器1012内。静态存储器1018及处理器1012也可构成机器可读媒体。在本发明的各种实施例中,连接到网络环境的网络接口装置1016使用指令1008经由网络通信。
[0080]现在参考图11,其展示根据发明性布置的示范性网络管理计算机(NAC) 114。NAC可包括各种类型的计算系统及装置,包含服务器计算机、客户端用户计算机、个人计算机(PC)、平板PC、膝上型计算机、桌上型计算机、控制系统或能够执行指定所述装置待采取的动作的一组指令(循序或其它)的任何其它装置。此外,尽管图11中图解说明单个计算机,但短语“NAC”应理解为包含个别地或联合地执行一组(或多组)指令以执行本文中所论述的方法中的任一者或多者的计算装置的任何集合。
[0081]现在参考图11,NAC 104包含经由总线1122彼此通信的处理器1112(例如中央处理单元(CPU))、磁盘驱动单元1106、主存储器1120及静态存储器1118。NAC 104可进一步包含显示器单元1102,例如视频显示器(例如,液晶显示器或IXD)、平板显示器、固态显示器或阴极射线管(CRT))。NAC 104可包含用户输入装置1104(例如,键盘)、光标控制装置1114(例如,鼠标)及网络接口装置1116。
[0082]磁盘驱动单元1106包含其上存储有经配置以实施本文中所描述的方法、过程或功能中的一或多者的一或多组指令1108(例如,软件代码)的计算机可读存储媒体1110。指令1108还可在其执行期间完全或至少部分地驻存于主存储器1120、静态存储器1118内及/或处理器1112内。主存储器1120及处理器1112还可构成机器可读媒体。
[0083]所属领域的技术人员应了解,图10中所图解说明的模块架构及图11中的NAC架构各自表示可分别用于执行本文中所描述的方法的计算装置的仅一个可能实例。然而,本发明在此方面并不受限,且任何其它适合计算装置架构也可在无限制的情况下使用。包含但不限于专用集成电路、可编程逻辑阵列及其它硬件装置的专用硬件实施方案可同样地经构造以实施本文中所描述的方法。可包含各种实施例的装备及系统的应用广义地包含多种电子及计算机系统。一些实施例可借助在模块之间及贯通模块传达的相关控制及数据信号或作为专用集成电路的部分实施两个或两个以上特定互连的硬件装置中的功能。因此,示范性系统适用于软件、固件及硬件实施方案。
[0084]根据本发明的各种实施例,本文中所描述的方法作为软件程序存储于计算机可读存储媒体中且经配置以在计算机处理器上运行。此外,软件实施方案可包含但不限于也可经构造以实施本文中所描述的方法的分布式处理、组件/对象分布式处理、并行处理、虚拟机器处理。
[0085]尽管在图10及11中将计算机可读存储媒体1010、1110展示为单个存储媒体,但术语“计算机可读存储媒体”应视为包含存储一或多组指令的单个媒体或多个媒体(例如,集中式或分布式数据库及/或相关联高速缓冲存储器及服务器)。术语“计算机可读存储媒体”也应视为包含能够存储、编码或携载供由机器执行的一组指令且致使机器执行本发明的方法中任一者或多者的任何媒体。
[0086]术语“计算机可读媒体”应相应地视为包含但不限于固态存储器(例如存储器卡或者装纳一或多个只读(非易失性)存储器、随机存取存储器或其它可重复写入(易失性)存储器的其它包);磁光媒体或光学媒体(例如磁盘或磁带)。因此,本发明应视为包含如本文中所列示的计算机可读媒体中的任一者或多者且包含已认可的等效物及其中存储有本文中的软件实施方案的后续任务媒体。
[0087]与连接到不同逻辑网络的计算装置的通信
[0088]在描述发明性布置的其它方面之前,考虑常规交换器的操作是有用的。常规交换器将网络的多个分段连接在一起。执行此功能的最简单装置称作“集线器”且在物理层处操作。集线器不对数据包执行任何业务管理任务,而是仅拷贝在端口处进入的所有数据业务且将其向外传播到所有其它端口。层2(或“网络”)交换器操作直到链路层,且具有检验进入交换器的包的能力,且基于链路层包的目的地物理地址将每一包引导到恰当端口。交换器与集线器的不同之处在于其可在不跨越每一端口进行广播的情况下将包转发到其目的地。多层交换器(例如,层3交换器)可操作直到网络、输送及/或应用程序层,且能够执行需要知晓较高层协议(例如IP多播、IP安全性、防火墙、负载平衡、安全套接层加密/解密及诸如此类)的操作。在较高层处操作的交换器可执行路由器及桥接器的功能中的一些或所有功能。相反地,路由器及桥接器还可执行较低层交换功能。
[0089]交换器通过使一每输出端口与特定物理地址相关联而将包转发到下一跃点。如上文所提及,交换器主要在数据链路层中操作。数据链路层消息(即,数据包)寻址到表示数据包的路径中的“下一跃点”的物理地址。物理地址的实例是用于主机机器的网络接口的媒体接入控制(MAC)地址。使用链路层协议(例如地址解析协议(ARP))解析MAC地址,且然后将此信息存储于用于迅速参考的表(例如,ARP表)中。当接收到送往特定主机的包时,交换器查找ARP表上的目的地MAC地址、定位与MAC地址相关联的端口且转发包。如果用于目的地主机的MAC地址未列不于ARP表中,那么交换器可在每一输出端口上广播ARP轮询消息。如果目的地主机连接到交换器,那么其将用应答回答且交换器将使用接收到所述应答的端口将包转发到主机。交换器还可将端口及网络地址记录于ARP表中以供未来转发到所述MAC地址。
[0090]在网络层中或以上操作的多层交换器可使用逻辑地址(例如,IP地址)来将包转发到其目的地。虽然网络层功能及以上通常由路由器处置,但在常规路由器与层3(或网络层)交换器之间存在很小功能差异。在任一情况中,交换器(或路由器)接收送往具有逻辑地址(即,网络层或协议地址)的特定主机的数据包。在接收到包之后,网络层交换器将包的目的地IP地址与路由表进行比较以确定到目的地主机的路径中的下一跃点的逻辑及物理地址两者。网络层交换器然后将包发射到下一跃点。在层3交换器处接收的包与由层2交换器接收的包相比其间的主要差异是在层3交换器处接收的链路层包的目的地地址(例如,MAC地址)是交换器自身的目的地地址。如上文所解释,链路层包寻址到包的路径的下一跃点。接收包的层3交换器(或路由器)是所述包的下一跃点,且具有基于网络层地址(例如,IP地址)或包中所含有的其它信息确定包的下一跃点的任务。相比之下,接收包的层2交换器读取链路层目的地地址且将包转发到下一跃点,但层2交换器自身并非目的地。
[0091]移动目标技术(MTT)交换器能够执行包转发,如上文针对根据任务计划操作的MTT启用网络所描述。MTT交换器能够执行上文所描述且用于MTT启用业务的交换器的原生功能性。在一些实施例中,MTT交换器还可经布置以出于确定如何恰当地执行此类交换操作的目的而自动地区分MTT启用业务与常规数据业务。任务计划定义对MTT启用网络内的数据业务的身份参数执行的一组变换及在网络内执行此类变换的位置。如同模块,MTT启用交换器可加载有一或多个任务计划。另外,MTT交换器可执行模块的功能且根据任务计划变换数据包的身份参数。
[0092]当前交换技术通过“锁定”特定物理地址而将数据转发到ARP表中的交换器上的特定端口,如上文所描述。因此,常规交换器由于身份参数将根据任务计划移动而不能处理MTT启用业务。举例来说,源及/或目的地主机的IP地址、源及/或目的地主机的MAC地址或两者可在到达交换器之前动态地修改。MTT启用交换器具有根据任务计划操作及借助移动身份正确地转发经交换数据包的能力。举例来说,当包到达MTT交换器时,分析数据包的身份参数且将目的地主机与由任务计划驱动及修改的动态ARP表进行比较。注意,术语动态及静态描述动态或静态身份参数的使用。虽然两个术语均用于描述常规ARP表,但如本文中所使用,“动态ARP表”是根据MTT任务计划填充的表且“静态ARP表”是使用此项技术中已知的常规方法填充的表。
[0093]由任务计划填充及/或修改动态ARP表。任务计划具有有关遍及整个网络对身份参数的操控的信息,且因此可给交换器供应完全填充的ARP表以供在转发包时使用。ARP表的此动态修改可以若干种方式发生。在某些实施例中,当将ARP表加载到交换器中时,由任务计划填充其中的值。在此类实施例中,每当激活新任务计划时就重新写入ARP表值。换句话说,根据任务计划而使用如当前经操控以供用于网络中的身份参数来改变ARP表中的值以促进包的正确交换。在其它实施例中,由任务计划更新ARP表中的值之间的关系。举例来说,可由任务计划更新端口与各种装置地址之间的关系。在每一实施例中,任务计划更新或修改ARP表以使得交换器借助在特定时间正使用的经操控身份参数正确地起作用。如上文所描述,身份参数的操控可基于触发事件而改变。任务计划将定义响应于特定类型的触发事件发生何种改变。因此,每一触发事件可引起对动态ARP表的修改或更新。
[0094]在一个实施例中,交换器包含服务于静态及MTT启用网络两者的专用端口。实际上,交换器分裂为具有服务于静态网络的静态端口及服务于动态网络的MTT端口。在此情景中,每一组端口可具有单独ARP表或可共享包含静态区段及MTT区段的ARP表。ARP表的服务于MTT启用端口的至少所述部分是根据任务计划而确定,且响应于由任务计划定义的预定触发事件而变化。在另一实施例中,交换器可识别MTT启用业务且将数据包的身份参数变换成静态身份参数(即,真身份参数)。在已变换身份参数之后,交换器可使用常规的ARP表而使用常规交换算法来处理数据包。此后,交换器可转发含有真身份参数的包,或可转发具有假身份参数的包。所述假身份参数可与在接收时包中所含有的假身份参数相同,或交换器可操控身份参数以包含不同假身份参数集合。在任一情况中处理包的方式可由任务计划确定,如上文所描述。
[0095]在某些实施例中,网络中可同时存在静态及动态数据业务两者。因此,容纳静态及动态业务两者的容量是重要的。举例来说,数据可基于数据的值或重要性而为静态或动态的。根据特定任务计划操作的主机计算机可针对借助特定应用程序或向特定服务器发射的数据启用MTT。相比之下,可在不启用MTT的情况下发送web浏览数据或其它低优先级数据。因此,所有网络装备(包含交换器)可同时容纳静态及动态业务两者且除转发静态包之外还完全能够通过相同网络处置MTT启用包的变换及转发。
[0096]在某些实施例中,交换器可连接到操作不同任务计划的多个网络。或者,连接到交换器的网络中的一或多者可为静态的,即,非MTT启用的。在这些情景中,交换器可用作桥接器且能够在操作不同任务计划的网络之间或在MTT网络与静态网络之间翻译。在这些网络边界之间操作的交换器可具有用于每一网络的ARP表,或具有带有多个区段的ARP表,其中每一区段对应于不同网络。在任一情景中,可根据任务计划动态地填充ARP表。
[0097]除根据任务计划转发MTT启用数据包之外,MTT交换器还能够通过伪随机地交替用于将包传达到特定目的地的输出端口而基于任务计划操控交换行为。举例来说,交换器可具有通向连接到相同企业广域网中的另一网络的路由器的一个端口。交换器可具有通向进入到因特网中的网关的第二端口。两个路径可通向相同目的地,且交换器可在将包传达到相同最终目的地时在两个路径之间伪随机地交替。替代地或除此之外,交换器可在一些或所有端口上广播外来包以在网络内形成噪声。外来包可含有随机数据或经加密数据的无用位以使试图渗入网络的个体及系统混淆及困扰。MTT交换器可根据一或多个任务计划在这些行为或其任何组合之间交替。
[0098]任选地,交换器可进一步应用一组过滤规则以充当防火墙。在某些实施例中,交换器可基于任务计划识别MTT启用业务且滤除所有其它业务。在其它实施例中,交换器可检测数据业务中的异常。过滤规则可经设计以使得交换器将非MTT启用包及/或异常包引导到可模拟网络系统的行为的“诱捕系统”服务器以诱捕攻击业务。通过将非MTT启用包及/或异常包(尤其是与攻击业务相关联的包)过滤到诱捕系统,网络管理员能够阻止攻击、分析网络漏洞及/或开发用于基于不允许的业务的行为而对抗攻击的新技术。或者,可即刻摒弃或使用常规防火墙技术来过滤非MTT启用包。
[0099]为进一步理解本文中所描述的MTT交换器的此功能,考虑图12及以下实例。现在参考图12,其提供示范性网络。所述网络包含主机1202,模块1204,交换器1206、1212,路由器1208、1210及主机1214。如图12中所展示,借助身份参数120发送数据包。在一个示范性实施例中,模块1204可将身份参数120变换成身份参数122,如先前所描述。在替代实施例中,模块1204可在主机1202或交换器1206内。另外,路由器1208、1210,交换器1212及主机1214也可包含模块。虽然图12图解说明在一个方向上行进的数据包,但所属领域的技术人员应认识到,数据业务可使用众所周知的双工技术在两个方向上流动。
[0100]在第一实例中,网络分段包括串联连接的三个单独组件:PC 1202、MTT模块1204及MTT交换器1206。PC 1202是通过交换器1206进入动态网络的数据流的源主机。连接于PC 1202与交换器1206之间的是能够对由PC 1202发射的数据流执行伪随机变换的模块1204。当数据流到达交换器1206时,流内的数据包的各种身份参数122看似已由模块1204以随机方式变换。更特定来说,根据任务计划将身份参数值120中的一些身份参数值伪随机地变换为假值122。MTT启用交换器1206根据相同任务计划操作,且因此保持能够将数据流中的包恰当地转发到下一接口。在替代配置中,模块1204不需要是单独组件,而是可嵌入于PC 1202内,如上文所论述。
[0101]在第二实例中,模块1204嵌入于交换器1206内且交换器1206自身能够根据任务计划变换数据包身份参数120。在此情景中,交换器可接收非MTT启用的数据流,S卩,尚未变换数据包的身份参数120。交换器然后在将身份参数向外转发到网络中之前修改所述身份参数以指定假身份参数122。交换器1206处的变换可在输入端口或输出端口处发生。换句话说,可在交换器确定通过哪一端口转发包之前或之后变换身份参数120。
[0102]在第三实例中,MTT交换器1206连接根据不同任务计划操作的两个网络(在图12中表示为连接到路由器1208、1210的网络)。为了清晰且为了避免使本发明模糊,未展示附接到路由器1208、1210的网络。具体来说,网络中的一者(例如,路由器1208)为非MTT启用的静态网络。在两个网络之间发射的数据业务必须在其可被转发到其它网络之前由交换器1206翻译。举例来说,从MTT启用网络到达交换器的数据包的身份参数122必须经翻译以指定静态值120。相反地,从静态网络到达交换器的数据包的身份参数必须经翻译以指定根据当前作用的任务计划的身份参数。
[0103]在第四实例中,MTT交换器1206连接网络A( S卩,路由器1209)、B( S卩,路由器1210)、C( S卩,路由器1211)及D( S卩,路由器1208)。网络A、B及C是根据一或多个任务计划操作的动态MTT启用网络。网络D为非MTT启用的静态网络。当在MTT交换器1206处接收到数据时,其评估包以确定其是否包括具有对应于网络A、B或C的当前状态(即,对应于根据网络A、B或C的当前任务计划预期的状态)的假身份参数的MTT启用数据。如果如此,那么交换器1206使用一或多个任务计划执行适当MTT处理以将数据路由到适当目的地网络。此处理可涉及将假身份参数集合(例如,如果包源自MTT启用网络)变换为真身份参数集合(如果目的地网络为静态网络(在此实例中,网络D、路由器1208))。或者,此处理可涉及将对应于MTT启用源网络(例如,网络A、路由器1209)的第一假身份参数集合变换为对应于MTT启用目的地网络(例如,网络B、路由器1210)的第二假身份参数集合。第一及第二假身份参数集合可包含使其成为假的身份参数的不同选择及/或相同身份参数集合的不同假值。或者,如果交换器1206确定所接收包含有不对应于任何网络的当前状态的错误MTT数据,那么可摒弃所接收包或将其发送到如上文所描述的“诱捕系统”。
[0104]上文所描述的示范性配置并不打算为限制性。此外,实施例不限于图12中所图解说明的网络拓扑。如上文所提及,交换器的功能可内建到其它网络装置(例如,路由器及桥接器)中。另外,模块及防火墙的功能可并入到交换器、路由器及/或桥接器中。网络组件可经组合以达成适合任何组的需要的动态网络系统。
[0105]现在参考图13,其提供过程1300的流程图以进一步图解说明MTT交换器的操作。所述过程在步骤1302处在将交换器开启电源时开始且继续到步骤1304,其中将用于执行本文中所描述的方法的交换器应用软件初始化。在步骤1306中,从交换器内的存储器位置加载一或多个任务计划。还根据任务计划填充ARP表。任务计划可定义单个动态计算机网络内的多个网络分段的动态操纵。可以类似于上文关于模块所描述的方式的方式将一或多个任务计划加载于交换器中。在优选实施例中,将任务计划加载到与交换器相关联的存储器中且将其激活。每一任务计划的状态将通常基于一或多个触发事件而确定。触发事件是致使任务计划的操作动态地改变正在网络中操控身份参数的方式的任何预定类型的刺激。因此,触发事件的发生有效地产生能够区分使用先前作用的规则处理的在触发事件之前接收的业务与使用新激活的规则处理的在触发事件之后接收的业务的MTT装置(例如,交换器)。如上文所述,触发事件可由应用于网络的多种不同条件及输入刺激引起。在一些实施例中,当交换器不作用时或在停用网络的MTT操作的时间期间(例如,当交换器处于绕过状态中时),可将经存储以供由交换器使用的任务计划加载到存储器中。一旦已加载任务计划,交换器即准备好开始处理数据且在步骤1308处继续如此进行,其中其从交换器的输入数据缓冲器存取数据包。
[0106]在步骤1310中,交换器检查以确定是否已在网络中启用MTT操作模式。如果否(1310:否),那么在步骤1312中使用经布置以确保含有真身份参数值的包的恰当转发的静态ARP表将在步骤1308中存取的数据包引导到输出端口。换句话说,在MTT操作模式不作用且假定所有身份参数具有其真值时使用此模式。在步骤1312中,交换器在不对数据包进行任何修改的情况下以常规交换器将使用的相同的方式将数据包传达到适当输出端口。如果启用MTT模式(1310:是),那么过程继续到步骤1314。
[0107]网络将具有定义当前如何操控网络中的身份参数的某一 MTT状态。在步骤1314中,交换器基于任务计划及当前MTT状态确定假身份参数值的当前状态。在步骤1316中,系统周期性地检查以确定是否已发生将改变MTT状态的触发事件。针对触发事件的发生的此检查步骤可如所展示地基于时钟信号周期性地执行,或其可在框1315内所包含的过程期间的任何时间执行。此为重要步骤,因为触发事件的发生可对网络中的当前正使用的恰当假身份值的计算具有显著影响。然后使用来自步骤1316的信息及有关网络的MTT状态的任何其它适当信息来确定那时网络正使用的任何MTT操控的当前状态。举例来说,在步骤1314中触发事件的发生可致使系统产生包含那时正使用的任何假身份参数值及对应真身份参数值的经更新交叉参考或查找表。可使用如先前所描述的伪随机过程确定有关哪些身份参数为假及此类身份参数的真值的信息。如图13中所展示,触发事件可在处理步骤1314、1318、1320、1324、1326及1328中的任一者期间发生且将触发那时的当前MTT状态(例如,假身份参数值的当前状态)的立即重新确定。
[0108]任选地,可在步骤1314处启用MTT身份参数的不可否认性。不可否认性为允许网络管理员在任何时间发现动态网络所使用的MTT身份的安全性服务。因此,尽管具有网络业务的身份参数的潜在伪随机本性,但网络源及目的地的真身份为可知晓的且不能“否认”以拒绝责任。在一个实施例中,这可通过简单记录所有假身份而实现。因此,执行记录功能,借此将在步骤1314中确定的所有假身份参数记录于(举例来说)存储器中。或者,可通过伪随机函数的时间戳记录及与MTT任务计划的当前状态相关联的种子值来实现不可否认性。此允许网络管理员在网络操作期间的任何时间往回查看以依据伪随机函数及那时任务计划所使用的种子值“重新建构”网络身份。
[0109]在步骤1318中,交换器读取数据包以确定数据包从其始发的源节点及目的地节点的身份。所接收数据的源地址信息及目的地地址信息是重要的,因为需要其来准许交换器确定如何恰当地操控数据通信内所含有的身份参数。在步骤1320中,交换器检查数据包以确定源节点是否有效。此可通过将数据包中所指定的源节点与当前正使用的有效源节点的当前列表(例如,如步骤1314中所确定)进行比较而实现。如果源节点信息并非有效,那么在步骤1322中摒弃包。步骤1324及1326是下文进一步详细论述的任选步骤。
[0110]过程继续到步骤1328,在此时交换器将包引导到适当输出端口。此步骤优选地包含用以确保含有假身份参数的包的恰当转发的适当动作。更特定来说,此步骤确保根据对应于假身份参数的真信息且根据任务计划,用于数据通信的下一目的地是用于数据通信的正确路径。应记得,假身份参数中的信息将与真身份参数值不一致,因此必须做出适当调整以适应假信息,同时仍确保数据消息的恰当转发。存在解决此问题的至少两种可能方法。在一些实施例中,步骤1328可涉及借以确定包中所含有的任何假身份参数的真身份参数值的交叉参考过程。举例来说,在步骤1314中产生的查找表可用于此目的。一旦确定此类身份参数的真值,交换器即可使用静态ARP表(即,在步骤1312中所使用的相同表)来确定特定包的正确输出端口。此后,可将包引导到正确输出端口。或者,可产生动态ARP表以供在步骤1328中使用。动态ARP表可直接指定对应于数据包中所含有的假身份参数信息的正确输出端口。其它方法也是可能的,且本发明并不打算限于此处所描述的两种方法。
[0111]在步骤1330中,做出关于是否已命令将交换器关闭电源的确定。如果如此,那么过程在步骤1332处结束;否则,过程返回到1308。在步骤1308中,过程继续且从交换器的输入数据缓冲器存取下一数据包。
[0112]在上文所描述的过程中,交换器执行确保将含有假身份参数的数据包仍传达到其恰当目的地节点的转发操作。除执行此类基本转发功能之外,交换器还可经配置而以类似于上文关于模块所描述的方式的方式执行身份参数的动态操控。再次参考图13,任选步骤1324可包括根据任务计划及当前动态网络状态动态地操控身份参数。步骤1324处的操作将类似于如上文所描述的由模块105到107、113、114执行的身份参数操控。在完成身份参数的此操控后,过程将即刻基本上如上文关于步骤1328所描述地继续。将使用如由交换器操控的当前身份参数值来执行转发操作。值得注意的是,步骤1324中的操控操作可根据任务计划在进行与停止之间选择性地双态切换。此过程类似于上文关于模块所描述的绕过模式,且可促进使网络内的其中执行身份参数操控的位置变化。可在如上文所描述的步骤1310及1312中实施此绕过操作模式。或者,可个别地绕过步骤1324。
[0113]在如至此所描述的过程中,已操控身份参数,但转发协议一直为静态的。换句话说,用于转发包的规则已随时间保持不变,且这些规则尚未受网络的MTT状态的改变影响。包总是沿与其将在具有静态ARP表的默认转发情景中转发相同的路径来路由。除这些静态路由方法之外,发明性布置还可包含动态转发。
[0114]为了更完全地理解动态转发的概念,考虑实例是有用的。在上文参考图12所描述的默认转发情景中,交换器1206将送往服务器1214的包引导到路由器1210(经由因特网或某一其它公用网络),因为此路径具有最短数目个跃点。然而,在本发明的动态转发实施例中,每一交换器及/或路由器的转发协议可经动态修改以使得特定交换器/路由器转发包的方式将随时间(且在不同条件下)改变。此类转发变化在不存取任务计划中所指定的信息的情况下将不可预测。因此,任务计划可指定(举例来说)有时将送往服务器1214的包引导到路由器1208而非直接引导到路由器1210。然后通过因特网(或任何其它公用网络)将包引导到交换器1212及最后目的地(服务器1214)。在其它时间,送往同服务器的包可具有不同路径。在涉及动态转发的此类实施例中,可认为包贯通网络1200采取的路径以伪随机方式动态地更改以阻挠试图监视网络通信的对手。下文中所描述的动态转发方法可使用任何适合技术执行且所有此类技术打算包含于本发明的范围中。此外,转发协议的动态修改可单独地或连同如上文所描述的身份参数的动态修改一起执行。
[0115]应理解,本文中所描述的动态路由方法不限于上文所描述的过程。在另一实施例中,根据任务计划操作的交换器可确定贯通网络的多个可行路径。交换器可根据由任务计划定义的伪随机算法将跨越可行路径的通信分段及分散。举例来说,参考图12,交换器1206可接收分段成两个包的通信。根据任务计划操作,交换器1206可通过路由器1208发送一个包且将另一包直接发送到路由器1210。然后,在目的地(例如,服务器1214)处重新汇编通信。在此实施例中,交换器1206可根据伪随机函数而使数据包将行进的路径变化。所属领域的技术人员应认识到,此技术可扩缩到包含任何数目个交换器及/或路由器的网络。
[0116]值得注意的是,上文所描述的动态路由过程也可独立于关于图13所描述的MTT功能中的一或多者而发生。现在参考图14,其提供概述根据一个实施例的交换器的操作的流程图,其中路由器所使用的转发协议根据任务计划变化。所述过程在步骤1402处在将交换器开启电源时开始且继续到步骤1404,其中将用于执行本文中所描述的方法的交换器应用软件初始化。在步骤1406中,从交换器内的存储器位置加载一或多个任务计划且填充ARP表。在此时,交换器准备好开始处理数据且在步骤1408处继续如此进行,其中其从交换器的输入数据缓冲器存取所接收数据包。在步骤1410中,做出关于交换器是否在动态转发模式中操作的确定。如果否,那么过程继续到步骤1412且将数据转发到与到目的地主机的路径中的下一跃点相关联的默认端口。或者,如果交换器根据动态转发模式操作(1410:是),那么过程继续到包含于框1413内的步骤1414到1418。
[0117]在步骤1414中,交换器确定贯通网络的数据包为到达其目的地节点而可采取的一组可行路径。可基于任务计划确定这些路径。举例来说,任务计划可知晓贯通网络的数据包为了从一点行进到另一点而可采取的若干个路径。交换器可根据当前作用的任务计划确定这些路径中的哪些路径是可用的。在步骤1416中,基于由任务计划定义的伪随机选择过程选择单个路径以发送包。在步骤1415中也发生对触发事件的发生的检查。如上文关于图13所论述,在步骤1415中确定的触发事件将触发那时的当前MTT状态(例如,假身份参数值的当前状态)的立即重新确定。一旦选择了路径,即在步骤1418处朝向指定为包的下一目的地的邻近节点将数据包引导到输出端口。在某些实施例中,任务计划可引导交换器在网络中产生额外噪声。在这些实施例中,步骤1418还包含将包发送到一或多个额外端口以努力使外来包涌入网络且掩蔽网络的行为。
[0118]在步骤1420中,做出关于是否已命令将交换器关闭电源的确定。如果如此,那么过程在步骤1422处结束;否则,过程返回到1408。在步骤1408中,过程继续且从路由器的输入数据缓冲器存取下一数据包。
[0119]现在参考图15,其展示交换器1500的框图。交换器1500具有至少两个数据端口1501、1502,其中的每一者可对应于相应网络接口装置1504、1505。如图15中所展示,交换器1500可具有多个数据端口,每一数据端口连接到不同网络及/或计算装置。在端口 1501中的任一者处接收的数据在网络接口装置1504处处理且暂时存储于输入缓冲器1510处。处理器1515存取输入缓冲器1510中所含有的输入数据包且执行如本文中所描述的任何必要路由程序(即,方向2处理1516)。经修改数据包传递到输出缓冲器1512且随后使用网络接口装置1505从端口 1502发射。类似地,在端口 1502处接收的数据在网络接口装置1505处处理且暂时存储于输入缓冲器1508处。处理器1515存取输入缓冲器1508中所含有的输入数据包且执行如本文中所描述的任何必要路由程序(即,方向I处理1514)。经修改数据包传递到输出缓冲器1506且随后使用网络接口装置1504从端口 1501发射。在每一模块中,处理器1515根据任务计划1520及/或存储于存储器1518中的一或多个表1522执行数据包的动态路由。
[0120]除其路由功能(及对潜在地管理动态路由协议的需要)之外,交换器1500的操作在许多方面类似于模块105到107、113、114的操作。仍应了解,交换器1500的操作也以一些方式不同。举例来说,不同于模块,交换器将决不会完全不作用,因为在网络作用时,总是需要其来至少执行常规转发功能。但是,交换器的操作中的一些操作可以类似于模块的方式在作用模式与非作用模式之间转变。举例来说,由交换器执行的涉及身份参数的动态修改(图13的步骤1324)的变换功能可在作用模式与非作用(绕过)模式之间转变。当在作用模式中时,身份参数的动态修改可由交换器执行。当在非作用或绕过模式中时,不动态地修改身份参数,但转发功能仍是作用的。值得注意的是,任务计划可使用交换器(以类似于上文关于模块所描述的方式的方式)来使其中执行身份参数操控的位置变化。此类动作可仅由如图12中所展示的一或多个交换器及/或路由器执行,或可连同其它装置(例如模块、桥接器及防火墙)一起执行。可以类似于本文中关于模块所描述的方式的方式更新交换器所使用的任务计划,借助静态ARP表的常规转发功能可在加载新任务计划的时间期间保持启用除外。或者,如上文所描述,新任务计划的加载及激活可致使触发事件发生,借此在触发事件之后在输入缓冲器中接收的所有数据将使用经更新任务计划处理。
[0121]待由交换器操控的身份参数的选择及操控其的方式可类似于上文关于模块所描述的方法。举例来说,身份参数的选择及假身份参数值的选择可由伪随机过程确定。所述过程及/或用于此过程的种子值分别由与网络相关联的任务计划确定。交换器1500将根据如上文参考模块所描述的一或多个触发事件的发生对待操控的身份参数值及/或身份参数的选择做出改变。这些触发事件可随时间而变地产生,可由事件的发生确定或两者兼具。本文中所提及的事件的实例可包含用户命令、时序间隔及潜在网络安全性威胁的检测,如上文所论述。
[0122]可变化的身份参数的类型
[0123]现在参考图16,其提供可由模块105到107、113、114及/或由桥接器115操控的身份参数中的一些身份参数的列表。图16中所列示的参数中的每一者包含于在使用TCP/IP通信协议的网络中所包含的数据通信中。图16中所列示的大多数信息类型是所属领域的技术人员众所周知的。然而,本文中提供每一类型的信息及其作为身份参数的使用的简要描述。还提供可操控每一身份参数的方式的简要论述。
[0124]IP地址。IP地址是指派给参与计算机网络的每一计算装置的数字识别符,其中所述网络使用众所周知的因特网协议进行通信。IP地址可为32位或128位数。出于本发明的目的,可将IP地址数改变为随机地选择(例如,使用伪随机数产生器)的假值。或者,可从预定假值列表(例如,由任务计划指定的列表)随机地选择假IP地址值。源IP地址及目的地IP地址包含于数据包的标头部分中。因此,通过经由使用改变IP标头信息的包操控技术简单地改变执行这些值的操控。当包到达第二模块(可操控的位置)时,将假IP地址值变换回到其真值。第二模块使用相同伪随机过程(或其逆过程)来基于假值导出真IP地址值。
[0125]MAC地址。MAC地址是由制造商指派给网络接口装置且存储于板上ROM中的唯一值。出于本发明的目的,可将源MAC地址及/或目的地MAC地址改变为随机地选择(例如,使用伪随机数产生器)的假值。或者,可从预定假值列表(例如,由任务计划指定的列表)随机地选择假MAC值。源MAC地址及目的地MAC地址包含于数据包的标头部分中。因此,通过简单地改变每一包的以太网标头信息执行这些值的操控。当包到达第二模块(可操控其的位置)时,将假MAC地址值变换回到其真值。接收包的模块将使用相同伪随机过程(或其逆过程)来基于假值导出真MAC地址值。
[0126]网络/子网。在一些实施例中,IP地址可视为单个身份参数。然而,通常将IP地址定义为包含至少两个部分,所述至少两个部分包含网络前缀部分及主机编号部分。网络前缀部分识别待将数据包传达到其的网络。主机编号识别局域网(LAN)内的特定节点。子网络(有时称为子网)为IP网络的逻辑部分。在将网络划分成两个或两个以上子网络的情况下,使用IP地址的主机编号区段的一部分来指定子网编号。出于本发明的目的,网络前缀、子网编号及主机编号可各自视为单独身份参数。因此,这些身份参数中的每一者可以伪随机方式独立于其它参数单独地操控。此外,应了解,数据包将包含源IP地址及目的地IP地址。因此,可在源IP地址及/或目的地IP地址中操控网络前缀、子网编号及主机编号,总共六个可以伪随机方式操控的不同可变身份参数。接收包的模块将使用与始发节点相同的伪随机过程(或此过程的逆过程)来基于假值导出真网络/子网信息值。
[0127]TCP序列。在TCP会话的相对侧上彼此通信的两个客户端计算机将各自维持TCP序号。所述序号允许每一计算机追踪其已传达多少数据。TCP序号包含于在会话期间传达的每一包的TCP标头部分中。在起始TCP会话时,随机地选择初始序号值。出于本发明的目的,可根据伪随机过程将TCP序号操控为身份参数。举例来说,可将TCP序号改变为随机地选择(例如,使用伪随机数产生器)的假值。当在网络的不同模块(其位置将动态地变化)处接收到包时,可使用伪随机过程的逆过程将TCP序号从假值变换回到真值。
[0128]端口编号。TCP/IP端口编号包含于数据包的TCP或UDP标头部分中。如TCP/IP通信协议中所使用的端口为此项技术中众所周知的,且因此将不在本文中详细描述。端口信息含在数据包的TCP标头部分内。因此,通过简单地修改TCP标头信息以将真端口值改变为假端口值而实现端口信息的操控。如同本文所论述的其它身份参数,可在第一模块处根据伪随机过程将端口编号信息操控或变换为假值。稍后,可在第二模块处使用伪随机过程的逆过程将端口信息从假值变换为真值。
[0129]虽然已关于一或多个实施方案图解说明及描述了本发明,但所属领域的技术人员在阅读及理解本说明书及随附图式之后将想到等效更改及修改。另外,尽管可能已关于数种实施方案中的仅一者揭示了本发明的特定特征,但此特征可与其它实施方案的一或多个其它特征组合,此对于任何给定或特定应用可能是合意的及有利的。因此,本发明的广度及范围不应受上文所描述的实施例中的任一者限制。而是,本发明的范围应根据所附权利要求书及其等效形式来定义。
【权利要求】
1.一种用于在将多个装置连接到动态计算机网络的交换器中使用的方法,所述方法包括: 接收包含与源计算装置及目的地计算装置相关联的多个身份参数的数据通信,其中基于第一任务计划中所指定的伪随机函数及种子值伪随机地修改所述多个身份参数的第一集合以指定假信息; 通过参考使所述交换器的多个端口与多个物理地址相关的表以确定对应于所述数据通信的目的地的物理地址的输出端口而使用所述第一集合的至少一个假身份参数选择用于所述数据通信的路径 '及 将所述数据通信转发到对应于所述路径的所述输出端口。
2.根据权利要求1所述的方法,其进一步包括将所述第一任务计划加载到所述交换器上,其中基于所述第一任务计划填充所述表。
3.根据权利要求2所述的方法,其进一步包括基于所述第一任务计划伪随机地修改所述数据通信的所述多个身份参数以使得第二身份参数集合指定假信息。
4.根据权利要求3所述的方法,其进一步包括基于所述第一任务计划伪随机地修改所述表,其中使用所述第二集合的至少一个假身份参数选择用于所述数据通信的所述路径。
5.根据权利要求4所述的方法,其中所述伪随机修改响应于触发事件而发生。
6.根据权利要求5所述的方法,其进一步包括基于以下各项中的至少一者确定所述触发事件的发生:用户命令、时序间隔及潜在网络安全性威胁的检测。
7.根据权利要求6所述的方法,其中根据所述第一任务计划确定所述触发事件。
8.根据权利要求1所述的方法,其中所述交换器连接到多个网络,所述方法进一步包括: 将多个任务计划加载到所述交换器中,每一任务计划对应于所述多个网络中的一者,其中所述表包含多个区段,每一区段基于所述多个任务计划中的一者而被填充。
9.根据权利要求8所述的方法,其进一步包括基于第二任务计划伪随机地修改所述数据通信的所述多个身份参数以使得第二身份参数集合指定假信息,所述第二任务计划指定第二伪随机函数及第二种子值,其中将所述数据通信转发到根据所述第二任务计划操作的第二动态网络。
10.根据权利要求8所述的方法,其进一步包括伪随机地修改所述数据通信的所述多个身份参数以专门地指定真信息,其中将所述数据通信转发到第三网络,所述第三网络为静态的。
11.根据权利要求1所述的方法,其进一步包括确定用于所述数据通信的多个可行路径,其中所述选择路径包括基于所述第一任务计划伪随机地选择所述多个可行路径中的一者。
12.根据权利要求1所述的方法,其进一步包括: 接收包含专门地指定真信息的多个身份参数的第二数据通信;及通过参考所述表的一部分以确定对应于所述第二数据通信的目的地的物理地址的输出端口而使用至少一个所述身份参数选择用于所述第二数据通信的路径;及将所述第二数据通信转发到对应于所述路径的所述输出端口。
13.根据权利要求1所述的方法,其进一步包括基于所述数据通信的相对安全性等级的确定来选择性地确定是否应伪随机地修改所述数据通信的所述身份参数,其中所述选择性确定是基于以下各项中的至少一者:所述数据通信的内容、所述数据通信的源、所述数据通信的所述目的地、发射所述数据通信的用户及接收所述数据通信的用户。
14.根据权利要求1所述的方法,其进一步包括: 确定正由所述动态计算机网络使用的所述假信息的值; 如果所述假信息指定与当前正由所述网络使用的所述假信息不一致的源节点身份,那么摒弃所述数据通信 '及 启用所述数据通信的不可否认性,其中所述不可否认性包括以下各项中的至少一者:记录所述多个身份参数;以及记录时间戳及所述伪随机函数。
【文档编号】H04L12/70GK104272701SQ201380023385
【公开日】2015年1月7日 申请日期:2013年4月29日 优先权日:2012年5月1日
【发明者】韦恩·B·史密斯, 查理·鲍尔斯, 玛格丽特·内珀 申请人:贺利实公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1