构建超大规模监测结构的制作方法

文档序号:13742396阅读:137来源:国知局
构建超大规模监测结构的制作方法

相关申请

本申请要求美国临时专利申请no.62/139,326的优先权,其全部内容通过引用结合于此。

本公开涉及数据通信技术领域,并且更具体地涉及构建超大规模监测结构的系统和方法。



背景技术:

生产网络可以通过利用多种技术来互连多个设备。有时它不能按预期运作。在这种情况下,可以用一个或多个电子工具被动地监测生产网络上传输的业务。这些工具可以用来标识问题、设计解决方案以避免问题,并测试解决问题的长期解决方案。尽管如此,这些工具可能很昂贵且难以管理。

附图说明

图1是示出根据实施例的监测业务信息的系统的框图;

图2a是示出根据示例实施例的业务信息的复制的框图;

图2b是示出根据示例实施例的业务信息的复制的框图;

图2c是示出根据示例实施例的业务信息的复制的框图;

图3a是示出根据示例实施例的业务信息的复制的框图;

图3b是示出根据示例实施例的业务信息的复制的框图;

图4是示出根据实施例的监测业务信息的系统的框图;

图5是示出根据实施例的构建超大规模监测结构的系统的框图;

图6是示出根据实施例的构建超大规模监测结构的系统的框图;

图7是示出根据实施例的构建超大规模监测结构的系统的框图;

图8是示出根据实施例的通信地耦接到数据库的控制器计算机的框图;

图9a是示出根据实施例的生产网络信息的框图;

图9b是示出根据实施例的生产网络管理信息的框图;

图9c是示出根据实施例的生产网络配置信息的框图;

图10是示出根据一些示例实施例的超大规模监测结构信息的框图;

图11a是示出根据一些示例实施例的构建超大规模监测结构的方法的流程图;

图11b是示出根据示例实施例的过滤第一业务信息的方法的流程图;

图11c是示出根据示例实施例的配置白盒(whitebox)交换机的方法的流程图;

图11d是示出根据一些示例实施例的转发业务信息的方法的流程图;

图12是示出根据示例实施例的用户界面的示意图;

图13-18是示出根据各种示例实施例的用户界面的示意图;

图19是示出代表性软件架构的框图;和

图20是示出根据一些示例实施例的机器的组件的框图。

具体实施方式

图1是示出根据实施例的监测业务信息的系统100的框图。系统100在现有技术中被发现并且与缺陷相关联。系统100可以包括用于传送业务信息的生产网络102和包括用于监测生产网络102上的业务信息的工具106(例如,工具模块)的客户端机器104。生产网络102可以包括与生产链路110连接的生产节点108(例如,交换机器)。生产链路110可用于在生产节点108之间传送业务信息(例如北/南方向)。生产网络102还可以包括连接到生产网络102的可以发起和/或终止业务信息的设备112。例如,设备112可以发起由生产网络102的顶部的生产节点108接收的业务信息(例如,分组、帧等),所述顶部的生产节点108又通过生产链路110将业务信息传送到生产网络102的中部的生产节点108,所述中部的生产节点108又通过生产链路110将业务信息传送给生产网络102的底部的生产节点108,所述底部的生产节点108又将业务信息传送给连接设备112。

生产网络102还可以包括形式为跨接端口(spanningport)114和分路器116的监测机构。然而,本领域技术人员认识到,监测机构的数量和布置不受限制。跨接端口114位于生产网络102底部的生产节点108上。跨接端口114可以由生产网络102的管理员配置,以将业务信息的副本传送给客户端机器104,在那里由工具106接收。管理员可以配置要在生产网络102中的指定接入点执行的业务信息的复制。例如,指定的接入点可以包括:生产节点108上用于向设备112发送业务信息的端口、生产节点108上用于从设备112接收业务信息的端口、生产节点108上用于从生产链路110接收业务信息的端口、以及生产节点108上用于通过生产链路110发送业务信息的端口。例如,管理员可以配置:复制从连接生产网络102顶部的生产节点108的设备112接收的业务信息,并且将复制的业务信息转发给跨接端口114。此外,例如,管理员可以配置:复制从连接到生产网络102底部的生产节点108的两个设备112接收的业务信息,并且将复制的业务信息转发给跨接端口114。此外,例如,管理员可以配置:复制从连接到任一生产节点108的生产链路110接收的业务信息,并且将复制的业务信息转发给跨接端口114。

分路器116位于连接生产网络102顶部的生产节点108与生产网络102中部的生产节点108的生产链路110上。分路器116可以由生产网络102的管理员配置成向客户端机器104传送在任一方向或两个方向上通过生产链路110传送的业务信息的副本。

系统100与缺陷相关联。首先,工具106不能同时连接到分路器116和跨接端口114。相反,工具106一次连接到一个监测机构。其次,断开和重新连接操作可能导致派遣服务人员到现场。第三,业务信息在没有过滤的情况下被传送给工具106。第四,工具106通常是昂贵的(例如,$10k)。因此,预算可能会禁止提供足够用于期望水平服务的工具106。

生产网络102可以实施为企业网络、全球网络、区域网络、多个子网络、公共网络(例如因特网)、专用网络等。生产网络102可以包括一个或多个专有网络。生产网络102可以由不同的合法实体操作,并且由不同的供应商提供的设备组成。生产网络102可以包括一个或多个局域网(lan)、一个或多个广域网(wan)和/或用于互连设备112的其他类型的联网技术。生产网络102可以以任何拓扑来实施。每个生产节点108可以包括一个或多个服务器机器、路由器、桥接器和/或其他计算设备以便于传输业务信息。生产链路110可以利用t1、e1、同步光网络(sonet)、数字订户线路(dsl)或促进业务信息的传送的任何其他传输技术。设备112可以发起和/或终止包括语音、数据、多媒体等的任何类型的业务信息。工具106可以实施为被动性能分析工具、被动安全分析工具等。被动性能分析工具可以包括服务保证分析器、应用性能分析器、互联网协议上的统一通信语音分析器、web监测器等。被动安全分析工具可以包括网络发现分析器、流数据分析器、元数据分析器、数据记录器、网络取证分析器、合法拦截器、数据丢失防护器、合规审计监测器等。

图2a是示出根据示例实施例的业务信息201的复制200的框图。复制200可以是通过分路器116在一个或两个方向上传送业务信息201。例如,分路器116的放大率“x1”示出了在向北方向202上传送的业务信息201的复制,如图2b所示。此外,例如,分路器116的放大率“x2”示出了在向南方向204上传送的业务信息201的复制,如图2c所示。

图2b是示出根据示例实施例的业务信息201的复制203的框图。复制203包括在向北方向202上传送的业务信息201的放大率“x1”(例如,还参见图2a)。具体地说,放大率“x1”以分组“a”、“b”和“c”的形式示出了在被分路器116传送给工具106(未示出)之前由分路器116复制的业务信息201。

图2c是示出根据示例实施例的业务信息201的复制205的框图。复制205包括在向南方向204上传送的业务信息201的放大率“x2”(例如,还参见图2a)。具体地说,放大率“x2”以分组“d”、“e”和“f”的形式示出了在被分路器116传送给工具106(未示出)之前由分路器116复制的业务信息201。

图3a是示出根据业务信息201的示例实施例的复制300的框图。业务信息201的复制300可以针对连接中部的生产节点108和底部的生产节点108的两个生产链路110在一个或两个方向上执行。跨接端口114的放大率“x3”示出了通过两个生产链路110在向北方向302上执行业务信息201的复制300,以及通过相同的两个生产链路110在向南方向304上执行的复制300。在图3b中进一步示出了放大率“x3”。

图3b是示出根据业务信息201的示例实施例的复制301的框图。业务信息201的复制301可以针对连接中部的生产节点108和底部的生产节点108的两个生产链路110在一个或两个方向上执行。跨接端口114的放大率x3(例如,参见图3a)示出了通过两个生产链路110在向北方向302上执行的业务信息201的复制301,以及通过相同的两个生产链路110在向南方向304上执行复制301。例如,可以复制通过第一(例如,分组“a”和“分组b”)和第二(例如分组“c”和分组“d”)生产链路110在向北方向302上传送的业务信息201,然后通过跨接端口114传送给工具106(未示出)。此外,例如,可以复制通过第一(例如,分组“e”和分组“f”)和第二(例如,分组“g”和分组“h”)生产链路110在向南方向304上传送的业务信息201,然后通过跨接端口114传送给工具106(未示出)。

图4是示出根据实施例的监测业务信息的系统400的框图。系统400与缺陷相关联。系统400可以包括网络分组代理机器402(例如网络分组代理)。系统400展现出对系统100的改进;然而,网络分组代理机器402(例如,网络分组代理)具有仅将少量生产节点108连接到少数工具106的缺点,使其不适合于监测大型生产网络102。

图5是示出根据实施例的构建超大规模监测结构的系统500的框图。系统500可以包括生产网络102、超大规模监测结构502和工具库504。生产网络102如前所述。工具库504可以包括一个或多个客户端机器104,每个客户端机器104包括一个或多个工具106。超大规模监测结构502可以被工具库504中的工具106用来监测生产网络102中的任何业务信息201的副本。因此,超大规模监测结构502使得工具库504中的任何工具106能够监测由超大规模监测结构502接收的业务信息201的任何副本。

业务信息201通常可以在生产网络102中从北(例如,图5的顶部)向南(例如,图5的底部)和/或从南向北流动。相比之下,业务信息201在超大规模监测结构502上从西(例如,图5的左侧)向东(例如,图5的右侧)流动,在超大规模监测结构502处,在工具库504处监测业务信息。由于超大规模监测结构502仅用于监测生产网络102中的业务信息201,因此业务信息201不会在超大规模监测结构502上从东向西流动。为此,超大规模监测结构502可以包括与结构链路514连接在一起的多个白盒交换机506、连接每个白盒交换机506与控制器计算机512的控制链路516、数据库515和通信地耦接到控制器计算机512的监测器,以及专用服务计算机518。业务信息201的副本可以通过入口链路507在白盒交换机506的入口接口508处接收,进而通过一个或多个白盒交换机506在向东方向上转发业务信息201,以通过出口接口510退出超大规模监测结构502,出口接口510连接到出口链路511,出口链路511又连接到工具库504中的客户端机器104。

白盒交换机506可以由控制器计算机512以多种方式配置。首先,白盒交换机506可由控制器计算机512配置成在特定的入口接口508处接收业务信息201,并通过连接白盒交换机506的结构链路514转发业务信息201,以在特定的出口接口510处退出超大规模监测结构502。因此,白盒交换机506可由控制器计算机512配置成将业务信息201转发给适当的工具106,而不管工具106的位置或监测机构(例如,分路器116、跨接端口114)的位置。

其次,白盒交换机506可以由控制器计算机512配置成在特定的入口接口508处接收业务信息201,并通过控制链路516将业务信息201传送给控制器计算机512,控制器计算机512进而将业务信息201存储在数据库515中。在一些实施例中,控制器计算机512还可以将业务信息201传送给专用服务计算机518,如下所述。控制器计算机512可以用于对接收或存储的业务信息201进行取证分析。例如,控制器计算机512可以便于查询数据库515中的业务信息201,以显示业务信息201并表征业务信息201,如本文后面所述。将会理解,业务信息201的表征可被用来促进超大规模监测结构502的最佳构建,以增强工具库504对业务信息201的监测。

第三,白盒交换机506可由控制器计算机512配置成将业务信息201传送给专用服务计算机518以及从专用服务计算机518接收业务信息201。因此,白盒交换机506可由控制器计算机512配置成通过专用服务计算机518转发业务信息201,然后业务信息201经由一个或多个白盒交换机506通过超大规模监测结构502转发,以在特定的出口接口510处退出。将业务信息201转发给专用服务计算机518可促进由专用服务计算机518去除由生产网络102中的监测机构(例如,分路器116、跨接端口114)的普遍布置所产生的副本业务信息201。将业务信息201转发给专用服务计算机518可以进一步便于专用服务计算机518对业务信息201进行时间标记。在一个实施例中,专用服务计算机518还可以通过控制链路516将带时间标记的业务信息201传送给控制器计算机512,控制器计算机512进而将带时间标记的业务信息201存储在数据库515中以便随后的取证分析,如本文后面所述。

第四,白盒交换机506可由控制器计算机512配置成过滤在入口接口508处接收的业务信息201。例如,白盒交换机506可以由控制器计算机512配置成基于业务类型(例如,web业务)、网际协议源地址或任何其它业务信息201来过滤业务信息201(例如,分组),如本文后面所述。

白盒交换机506和专用服务计算机518可以由控制器计算机512通过利用控制链路516来配置。例如,控制器计算机512可通过控制链路516将配置信息传送给白盒交换机506,白盒交换机506进而接收配置信息并利用配置信息来配置白盒交换机506的操作。此外,例如,控制器计算机512可以通过控制链路516将配置信息传送给专用服务计算机518,专用服务计算机518进而接收配置信息并利用配置信息来配置专用服务计算机518的操作。超大规模监测结构502可以被缩放。因此,本领域的普通技术人员将认识到可以增加白盒交换机506的数量,以扩展超大规模监测结构502的容量和互连性。

广义而言,构建超大规模监测结构502的系统500可以如下操作。超大规模监测结构502可以从生产网络102接收业务信息201的第一部分的副本作为第一业务信息201。例如,第一业务信息201可以在由管理员为生产网络102配置或手动插入的多个监测机构(例如,分路器116、跨接端口114)处发起。第一业务信息201可以由超大规模监测结构502通过入口链路507在入口接口508处接收以及由白盒交换机506接收。白盒交换机506进而可以通过控制链路516将第一业务信息201传送给控制器计算机512,控制器计算机512又将第一业务信息201存储在数据库515中。控制器计算机512可以利用存储在数据库515中的第一业务信息201来配置超大规模监测结构502中的多个(例如,第二多个)白盒交换机506,以将业务信息201的第二部分作为第二业务信息201转发给工具库504。例如,管理员可以基于存储在数据库515中的第一业务信息201的取证分析来标识特定类型的业务(例如,web业务)。也就是说,管理员可以标识特定类型的业务供工具库504中的工具106进一步分析。响应于白盒交换机506的配置,超大规模监测结构502可以开始接收来自生产网络102的业务信息201的第二部分的副本作为第二业务信息201。第二业务信息201可以在第一入口接口508处被接收,并且在超大规模监测结构502中利用第二多个白盒交换机506通过一个或多个出口接口510被转发给工具库504,工具库504包括用于监测在生产网络102中发起的业务信息201的多个工具106。

图6是示出根据实施例的构建超大规模监测结构的系统600的框图。系统600更详细地示出配置业务信息201的过滤和转发的控制器计算机512以及业务信息201的过滤和转发。

配置过滤和转发

在操作“a”处,控制器计算机512可以通过控制链路516将配置信息传送给白盒交换机“x”506。例如,根据实施例,配置信息可以由白盒交换机“x”506接收和执行,以将白盒交换机“x”506配置成过滤在上部入口接口508处进入白盒交换机“x”506的业务信息201以匹配业务类型“web业务”。在操作“b”处,根据实施例,控制器计算机512可以通过控制链路516将配置信息传送给白盒交换机“x”506,其将白盒交换机“x”506配置成将匹配的业务信息201转发给白盒交换机“z”506。因此,配置信息可以用来将白盒交换机“x”506配置成在上部入口接口508上接收业务信息201,标识匹配类型的业务信息201(例如web业务),并且通过连接到白盒交换机“z”506的结构链路514转发匹配的业务信息201。在操作“c”处,控制器计算机512可以通过控制链路516将配置信息传送给白盒交换机“z”506,以将连接到白盒交换机“x”506的结构链路514上正在接收的业务信息201转发到出口链路511上。例如,可以利用配置信息将白盒交换机“z”506配置成在连接到白盒交换机“x”506的结构链路514上接收业务信息201,并将业务信息201从出口接口510转发出到出口链路511上。

过滤和转发

在操作“d”处,白盒交换机“x”506可以接收在上部入口接口508处进入的业务信息201,并且过滤业务信息201。例如,白盒交换机“x5”06可以在上部入口接口508上接收“分组q”和“分组r”,并将“分组r”中的业务类型的字段标识为匹配“web业务”的业务类型,并将“分组q”中的业务类型的字段标识为不匹配“web业务”的业务类型。在操作“e”处,响应于标识该匹配,白盒交换机“x”506将匹配的“分组r”通过连接到白盒交换机“z”506的结构链路514进行转发。在操作“f”处,白盒交换机“z”506将在连接到白盒交换机“x”506的结构链路514上接收的“分组r”从出口接口510转发出到出口链路511上。

图7是示出根据实施例的构建超大规模监测结构的系统700的框图。系统700进一步示出了白盒交换机506的组件和操作。白盒交换机506可以作为没有网络操作系统或软件应用的通用交换机(例如,以太网)从供应商处获取,从而使得购买者能够安装他们选择的网络操作系统和软件应用。备选地,可以从供应商处获取包括网络操作系统和/或软件应用的白盒交换机506。不过,选择在于购买者。网络操作系统和软件应用使得白盒交换机506能够交换(例如,转发)业务信息201。为此,白盒交换机506可以包括接收模块702、处理模块704、过滤信息706和交换网格708(例如专用集成电路(asic))。接收模块702可以从控制器计算机512接收配置信息。处理模块704可以利用配置信息来配置交换网格708。仅作为示例,白盒交换机506可以包括从左上方开始按顺时针方向移动编号的端口,包括端口“0”处的第一入口接口508、端口“1”处的第一结构链路514、端口“2”处的第二结构链路514、端口“3”处的第三结构链路514以及端口“4”处的第二入口接口508。相应地,处理模块704可以利用端口编号方案和配置信息来转发业务信息201。其他端口编号方案也是适当的。

左边所示的是包含头部、有效载荷和尾部的分组形式的业务信息201。作为转发的先决条件,分组的内容可以被匹配。本领域的普通技术人员认识到,从分组开头开始的标准字节和比特偏移包含可以匹配的协议特定信息。为此,接收模块702可以接收配置信息,并且处理模块704可以利用配置信息对交换网格708编程以匹配协议特定信息。另外,交换网格708可以被编程以匹配非协议特定信息。此外,处理模块704可以对交换网格708编程以标识第一参数形式的过滤信息706是否匹配分组的有效载荷的内容。更具体地,交换网格708可以标识第一参数形式的配置信息是否匹配在端口“0”处的第一入口接口508上接收的分组的第三字节。第一参数可以包括数字、字母(例如,ascii)或字母数字数据。在一些实施例中,配置信息可以包括用于过滤(例如,匹配)业务信息201的规则。在一些实施例中,所述规则可以包括一个或多个布尔运算符。例如,所述规则可以基于与分组的第三字节匹配的第一参数和与分组的第五字节匹配的第二参数来标识匹配。可以使用其他运算符(例如,或、异或等)。此外,例如,处理模块704可以对交换网格708编程以响应于标识匹配而执行动作。例如,处理模块704可以对交换网格708编程以响应于标识在端口“0”处的第一入口接口508上正在接收的分组中的匹配,将分组转发出端口“2”处的第二结构链路514。此外,根据一些实施例,处理模块704可以对交换网格708编程以响应于匹配的标识将分组转发出多个端口。

图8是示出根据实施例的通信地耦接到数据库515的控制器计算机512的框图。控制器计算机512可以包括通信模块800、处理模块802和取证模块804。通信模块800可以通过控制链路516与白盒交换机506和专用服务计算机518通信。例如,通信模块800可以将配置信息传送给白盒交换机506和专用服务计算机518。此外,通信模块800可以从白盒交换机506和专用服务计算机518接收业务信息201。处理模块802可以将数据存储到数据库515,从数据库515取回数据,以及促进用于配置超大规模监测结构502的用户界面的呈现。取证模块804可用于从监测器接收命令,查询数据库515,生成用户界面,以及在监测器上显示用户界面。数据库515可以包括描述生产网络102的生产网络信息806和描述超大规模监测结构502的超大规模监测结构信息808。

图9a是示出根据实施例的生产网络信息806的框图。生产网络信息806描述生产网络102,并且包括生产网络管理信息900和生产网络配置信息902。

图9b是示出根据实施例的生产网络管理信息900的框图。生产网络管理信息900一般包括从生产网络102接收的协议信息。协议信息可以包括协议消息和在生产网络102中传送的其他信息。此外,作为生产网络管理信息900存储的每个协议消息可以与以下项相关联:标识超大规模监测结构502中的白盒交换机506的白盒交换机标识符、标识超大规模规模监测结构502中的入口接口508的入口接口标识符,以及标识生产网络102中的监测机构(例如,跨接端口114、分路器116)的监测机构标识符。白盒交换机标识符、入口接口标识符和监测机构标识符描述了到生产网络102中的接入点的路径,其用于接收包括协议消息的业务信息201。例如,监测机构标识符可以标识从生产网络102接收到协议消息的监测机构(例如,跨接端口114、分路器116),入口接口标识符可以标识接收到协议消息的入口接口508,以及白盒交换机标识符可以标识接收到协议消息的白盒交换机506。协议信息可以是带时间标记的。例如,协议信息可以用专用服务计算机518记录的接收日期和时间作时间标记。

生产网络配置信息902可以包括生产网络102中的网络元件。生产网络配置信息902可以基于生产网络管理信息900来标识。

生产网络管理信息900可以包括地址解析协议(arp)信息904(例如,arp协议消息)、传输控制协议(tcp)信息906(例如,tcp协议消息)、动态主机配置协议(dhcp)信息908(例如,dhcp协议消息)、域名系统(dns)信息910(例如,dns协议消息)、轻量级目录访问协议(ldap)信息912(例如,ldap协议消息)、链路聚集控制协议(lacp)信息914(例如,lacp协议消息),和样本信息916(例如,)(例如,样本消息)。

arp信息904可作为业务信息201从生产网络102接收,并存储在数据库515中。arp是用于将互联网协议(ip)地址转换成诸如以太网地址(例如,媒体访问控制(mac)地址)的物理地址的网络层协议。希望获得物理地址的主机在tcp/ip网络上广播arp请求。随后,网络上具有请求中的ip地址的主机用其物理硬件地址进行应答。相应地,arp信息904可以包括与诸如以太网地址(例如,mac地址)的物理地址相关联的ip地址。

tcp信息906可以作为业务信息201从生产网络102接收,并存储在数据库515中。tcp使两台主机能够建立连接并交换数据流。tcp保证数据的传送,并保证分组将按照发送的相同顺序进行传送。

dhcp协议信息908可以作为业务信息201从生产网络102接收,并存储在数据库515中。dhcp为网络上的设备分配动态ip地址,每当设备连接到网络时都会分配一个不同的ip地址。

dns信息910可以作为业务信息201从生产网络102接收,并存储在数据库515中。dns是将域名转换为ip地址的互联网服务。

ldap信息912可以作为业务信息201从生产网络102接收,并存储在数据库515中。ldap是基于x.500标准中包含的标准来访问信息目录的一组协议,但要简单得多。

lacp信息914可作为业务信息201从生产网络102接收,并存储在数据库515中。可以利用lacp将通过两个物理通信链路(例如,生产链路110)传送的业务信息201标识为通过单个逻辑通信链路传送。

可以从生产网络102接收样本信息(例如)916,作为通过生产网络102传送的业务信息201的采样。业务信息201的采样可以存储在数据库515中。业务信息201的采样可以利用机器学习算法,包括k-means学习算法、朴素贝叶斯滤波器机器学习算法、c4.5机器学习算法、c5.0机器学习算法、j48机器学习算法和/或随机森林机器学习算法。仅作为示例,机器学习算法可以实施为用于监测高速交换网络的工业标准技术可以提供对网络利用的可视性,从而实现性能优化、对使用的计数/计费以及对安全威胁的防范。

图9c是示出根据实施例的生产网络配置信息902的框图。生产网络配置信息902描述生产网络102中的网络元件。生产网络配置信息902可以基于生产网络管理信息900来生成。例如,处理模块802可以基于生产网络管理信息900生成生产网络配置信息902。生产网络配置信息902可以包括虚拟局域网(vlan)信息1000、ip子网信息1002(例如,互联网协议(ip)子网协议信息)、主机信息1004、网络连接信息1006、顶级通信器信息1008以及顶级业务类型信息1010。

vlan信息1000可以描述生产网络102中的lan。vlan信息1000可以基于生产网络管理信息900来生成。vlan是具有一组通用规范的一组终端站(例如,设备112),与终端站的物理位置无关。尽管终端站的物理位置不在同一lan段上,但是vlan可以包括与物理lan相同的属性,而且能够实现对终端站(例如,设备112)的分组。vlan信息1000可以包括设备标识符和lan标识符。vlan信息1000可以由处理模块802基于生产网络管理信息900生成,并且可以由取证模块804用来生成和显示图12至图18中描述的用户界面的部分。

ip子网协议信息1002可以描述生产网络102中的ip子网。ip子网协议信息1002可以基于生产网络管理信息900生成。子网络或子网是逻辑上可视的ip网络的细分。将网络划分为两个或多个网络的实践称为子网化。因此,ip子网协议信息1002可以将每个子网与包括在子网中的一个或多个设备(例如,设备112)相关联。ip子网协议信息1002可以由处理模块802基于生产网络管理信息900生成,并且可以由取证模块804用来生成和显示图12至图18中描述的用户界面的部分。

主机信息1004可以描述生产网络102中的主机。主机信息1004可以基于生产网络管理信息900生成。主机可以包括用于提供对设备(例如,设备112)上的网站或其他数据的访问的设备(例如,设备112)。因此,主机信息1004可以包括与ip地址、媒体访问控制(例如,mac)地址、供应商标识符、vlan标识符和其他信息相关联的主机名称。主机信息1004可以由处理模块802基于生产网络管理信息900生成,并且可以由取证模块804用来生成和显示图12至图18中描述的用户界面的部分。

网络连接信息1006可以描述生产网络102中的网络连接。网络连接信息1006可以基于生产网络管理信息900生成。网络连接信息1006可以包括tcp客户端主机的网络地址、tcp客户端主机的名称(例如统一资源标识符)、tcp服务器主机的网络地址以及tcp服务器主机的名称(例如,统一资源标识符)。网络连接信息1006可由处理模块802基于生产网络管理信息900生成,并且以可以由取证模块804用来生成和显示图12至图18中描述的用户界面的部分。

顶级通信器信息1008可以描述生产网络102中的顶级通信器。顶级通信器信息1008可以基于生产网络管理信息900来生成。顶级通信器信息1008可以包括生产网络102中最活跃的主机的列表。例如,顶级通信器信息1008可以包括生产网络102中的十个最活跃的主机的列表。可以基于连接的数量、连接的时间长度和/或发起或接收的分组的数量来标识最活跃的主机。顶级通信器信息1008可以基于其他类型的生产网络配置信息902。

顶级业务类型信息1010描述正在生产网络102中传送的顶级类型的业务信息201。生产网络102中的业务信息201的类型可以包括数据库业务(例如查询和响应)、web业务、语音业务以及其他应用和服务。此外,可以根据包括端口号、深度分组检查、统计分类等的分类器对业务信息201的类型进行分类。业务信息201的端口类型可以包括从端口发送或在端口上接收的业务信息201。业务信息201的端口类型可以根据速度、应用和服务以及其他分类器来分类。业务信息201的深度分组检查类型可以包括基于对分组的有效载荷的分组检查来标识的业务信息201。深度分组检查可以检测应用和服务,而不管它们在哪个端口号上发起或终止。业务信息201的统计类型可以包括从业务信息201采样的业务信息201。业务信息的统计类型201可以包括属性的统计分析,包括字节频率的统计分析、分组大小的统计分析以及分组到达间隔时间的统计分析。顶级业务类型信息1010可以由处理模块802基于生产网络管理信息900生成,并且可以由取证模块804用来生成和显示图12至图18中描述的用户界面的部分。

图10是示出根据一些示例实施例的超大规模监测结构信息808的框图。超大规模监测结构信息808包括链路级别信息1100,其描述即时连接到超大规模监测结构502的网络元件。例如,处理模块802可以通过处理链路级别协议(llp)分组来自动检测连接到超大规模监测结构502上的端口的物理设备。超大规模监测结构信息808可以包括入口设备信息1102、出口设备信息1104和服务设备信息1106。入口设备信息1102可以包括标识连接到入口接口508的设备(例如,监测设备(例如,分路器116、跨接端口114))的设备标识符。出口设备信息1104可以包括标识连接到出口接口510(例如,客户端机器104)的设备的设备标识符。服务设备信息1106可以包括标识连接到超大规模监测结构502的专用服务设备(例如专用服务计算机518)的设备标识符。

图11a是示出根据一些示例实施例的构建超大规模监测结构502的方法1110的框图。在操作1112处,超大规模监测结构502从生产网络102接收业务信息201的第一部分的一个或多个副本。超大规模监测结构502可以从生产网络102接收业务信息201的第一部分的所述一个或多个副本作为n×第一业务信息201。n×第一业务信息201均可以与监测机构(例如,分路器116或跨接端口114)、入口接口508和白盒交换机506相关联。也就是说,可以接收相同的第一业务信息201作为n×第一业务信息201。回顾第一业务信息201可以从生产网络102接收作为n×第一业务信息201,原因在于第一业务信息201可以由n×监测机构接收,因为它通过生产网络102传送。

在操作1114处,相应白盒交换机506通过超大规模监测结构502将n×第一业务信息201(例如,业务信息201的第一部分的副本)传送给控制器计算机512。结合图11b进一步描述操作1114。

在操作1116处,控制器计算机512可以将n×第一业务信息201存储在数据库515中,作为生产网络管理信息900。生产网络管理信息900进一步标识用于将第一业务信息201接收到超大规模监测结构502中的白盒交换机506、入口接口508和监测机构(例如,分路器116或跨接端口114)。例如,生产网络管理信息900可以包括分别与监测机构(例如,分路器116或跨接端口114)标识符、入口接口508标识符和白盒交换机506标识符相关联地存储的n×第一业务信息201,所述标识符标识用于接收第一业务信息201的组件。

在操作1118处,控制器计算机512可以用来将第二多个白盒交换机配置成在超大规模监测结构502中转发业务信息201。根据各种实施例,响应于存储在数据库515中的生产网络信息806的自动分析,控制器计算机512可自动配置第二多个白盒交换机506。例如,控制器计算机512可以将超大规模监测结构502中的多个(例如,第二多个)白盒交换机506自动配置成:响应于生产网络信息806的自动分析,通过一个或多个白盒交换机506以及通过各种链路,将业务信息201的第二部分作为第二业务信息201转发给工具库504。根据另一实施例,管理员可以将超大规模监测结构502中的一个或多个(例如,第二多个)白盒交换机506手动地配置成:将业务信息201的第二部分作为第二业务信息201转发给工具库504。例如,管理员可以基于存储在数据库515中的生产网络信息806的取证分析来标识感兴趣的特定类型的业务(例如web业务),并且将一个或多个白盒交换机506配置成:通过超大规模监测结构502转发所标识的业务,以供工具库504中的工具106进一步分析。为此,管理员可将多个白盒交换机506配置成:在第一入口接口508处从生产网络102接收业务信息201的第二部分的副本,并通过第二多个白盒交换机506转发业务信息201的第二部分,以在出口接口510处退出超大规模监测结构502,出口接口510连接到出口链路511,出口链路511又连接到工具库504中的工具106。结合图11c进一步描述操作1118。

在操作1120处,在超大规模监测结构502中的白盒交换机506处的入口接口508可以从生产网络102接收业务信息201的第二部分的副本作为第二业务信息201。例如,监测机构(例如,分路器116或跨接端口114)可以接收在生产网络102中从北向南或从南向北传送的业务信息201的第二部分的副本,并且将业务信息201的第二部分的副本通过入口链路507传送给白盒交换机506处的入口接口508,在此处接收其作为第二业务信息201。

在操作1122处,接收到第二业务信息201的白盒交换机506将第二业务信息201通过特定的结构链路514转发给白盒交换机506,白盒交换机506进而通过特定的结构链路514转发第二业务信息201等,直到第二业务信息201通过出口接口510退出超大规模监测结构502,出口接口510又连接到出口链路511,出口链路511连接到工具库504。在一个实施例中,超大规模监测结构502可以被配置为将第二业务信息201从多个出口接口510转发出到工具库504中的不同工具106。结合图11d进一步描述操作1122。

图11b是示出根据示例实施例的过滤第一业务信息201的方法1130的框图。方法1130提供对图11a中的操作1114的进一步描述。在操作1132处,在白盒交换机506处的接收模块702可以过滤第一业务信息201以生成过滤的第一业务信息201。仅作为示例,白盒交换机506可以过滤第一业务信息201以生成过滤的第一业务信息201,诸如“web业务”。此外,根据各种实施例,n×白盒交换机506可以过滤相同的第一业务信息201。

在操作1134处,白盒交换机506处的处理模块704通过控制链路516将过滤的第一业务信息201传送给控制器计算机512。

在操作1136处,控制器计算机512处的通信模块800接收过滤的第一业务信息201,并且在操作1138处,处理模块802将过滤的第一业务信息201作为生产网络管理信息900存储在数据库515中。

图11c是示出根据示例实施例的配置白盒交换机506的方法1150的框图。方法1150提供对图11a中的操作1118的进一步描述。在操作1152处,在控制器计算机512处,处理模块802基于生产网络管理信息900生成生产网络配置信息902。回顾生产网络配置信息902描述生产网络102中的网络元件。

在操作1154处,处理模块802基于生产网络信息806自动配置超大规模监测结构502中的第二多个白盒交换机506以转发第二业务信息201。仅作为示例,处理模块802可以选择1)特定的监测机构(例如,分路器116或跨接端口114),2)入口接口508,3)一个或多个白盒交换机506,4)一个或多个结构链路514,和5)出口接口510,以将第二业务信息201从生产网络102转发给工具库504。回顾生产网络信息806包括生产网络管理信息900和生产网络配置信息902。例如,在控制器计算机512处的处理模块802可以将第二多个白盒交换机506配置用于:在特定的入口接口508处接收业务信息201的第二部分的副本作为第二业务信息201,以及通过超大规模监测结构502转发业务信息201的第二部分,以从连接到工具库504的特定出口接口510退出超大规模监测结构502,如进一步结合图6所述。

图11d是示出根据一些示例实施例的转发业务信息201的方法1170的框图。方法1170提供对图11a中的操作1122的进一步描述。在操作1172处,白盒交换机506可以从生产网络102接收业务信息201作为第一业务流。在一些实施例中,白盒交换机506可以进一步过滤业务信息201以生成第一业务流。例如,白盒交换机506可以以第二业务信息201的形式从生产网络102接收业务信息201,并过滤第二业务信息201以生成第一业务流。

在操作1174处,白盒交换机506可以将第一业务流转发给专用服务计算机518。例如,白盒交换机506可以经由其他白盒交换机506和结构链路514将第一业务流通过超大规模监测结构502转发给专用服务计算机518。其他实施例可以利用白盒交换机506将第一业务流传送给专用服务计算机518。例如,与接收第二业务信息201的入口接口508相关联的白盒交换机506可以通过控制链路516将第一业务流传送给专用服务计算机518。

在操作1176处,专用服务计算机518接收第一业务流并将第一业务流与其他业务流进行比较以标识第一业务流的副本。例如,其他业务流可以包括:来自生产网络102的当前正通过超大规模监测结构502被转发给工具库504的一个或多个业务流,来自生产网络102的作为通过超大规模监测结构502转发给工具库504的候选的一个或多个业务流,正从生产网络102接收的一个或多个业务流,以及先前从生产网络102接收且当前存储在数据库515中的一个或多个业务流。

在操作1178处,专用服务计算机518可以移除所标识的第一业务流的副本。例如,专用服务计算机518可以通过使得第一业务流不通过超大规模监测结构502被转发来移除第一业务流的副本。此外,例如,专用服务计算机518可以通过使得其他业务流不通过超大规模监测结构502被转发来移除第一业务流的副本。

图12是示出根据示例实施例的用户界面1200的示意图。用户界面1200可以被生成并传送给通信地耦接到控制器计算机512的监测器。响应于取证模块804接收到命令,可以由取证模块804生成和传送用户界面1200。例如,网络管理员可以经由监测器将“观察到的ip命令”传送给控制器计算机512以供取证模块804处理。响应于接收到命令,取证模块804可以生成用户界面1200并将用户界面1200传送给监测器。基于生产网络信息806和超大规模监测结构信息808,取证模块804可以生成用户界面1200。例如,用户界面1200可以包括用户界面元素,用户界面元素包括:命名为白盒交换机506的交换机名称(例如,标记为“交换机别名”的列)、标识到白盒交换机506的路径的交换机路径标识符(例如,标记为“交换机”的列)、标识入口接口508的名称的入口接口名称(例如,标记为“接口”的列)、标识包括分路器116或跨接端口114的监测机构的监测机构标识符(例如,标记为“分路器接口”的列),以及标识与相关联的vlan上的设备(例如,设备112)的ip地址相关联的vlan的vlan标识符(例如,标记为“观察到的ip”的列)。

图13是示出根据示例实施例的用户界面1300的示意图。用户界面1300可以被生成并传送给通信地耦接到控制器计算机512的监测器。响应于取证模块804接收到命令,可以由取证模块804生成和传送用户界面1300。例如,网络管理员可以经由监测器将“dhcp跟踪器命令”传送给控制器计算机512以供取证模块804进行处理。响应于接收到命令,取证模块804可以生成用户界面1300并将用户界面1300传送给监测器。基于生产网络信息806和超大规模监测结构信息808,取证模块804可以生成用户界面1300。例如,用户界面1300可以包括用户界面元素,用户界面元素包括:服务器地址标识符(例如,标记为“服务器地址”的列),其标识生产网络102上的dhcp服务器的地址;客户端计数(例如,标记为“客户端计数”),其计数具有来自生产网络102上的dhcp服务器的地址租赁的主机的数量;租赁时间量(例如,标记为“租赁时间”的列),其指示地址租赁有效期限;中继标志(例如,标记为“中继”的列),其指示dhcp服务器机器充当dhcp请求和响应的转发者;以及子网标识符(例如,标记为“子网”的列),其标识生产网络102上与前述字段相关联的子网。

图14是示出根据示例实施例的用户界面1400的示意图。用户界面1400可以被生成并传送给通信地耦接到控制器计算机512的监测器。响应于取证模块804接收到命令,可以由取证模块804生成和传送用户界面1400。例如,网络管理员可以通过监测器将“拓扑命令”传送给控制器计算机512以供取证模块804处理。响应于接收到命令,取证模块804可以生成用户界面1400并将用户界面1400传送给监测器。基于生产网络信息806和超大规模监测结构信息808,取证模块804可以生成用户界面1400。例如,用户界面1400可以包括:交换机部分(例如,标记为“交换机”),其包括描述白盒交换机506的用户界面元素;接口部分(例如,标记为“接口”),其包括描述连接到白盒交换机506的入口接口508的用户界面元素;分路器配置部分(例如,标记为“分路器配置”),其包括描述连接到入口接口508的分路器116的用户界面元素;以及连接的设备部分(例如,标记为“连接的设备”),其包括描述连接到分路器116的生产网络102上的端口的用户界面元素。

图15是示出根据示例实施例的用户界面1500的示意图。用户界面1500可以被生成并传送给通信地耦接到控制器计算机512的监测器。响应于取证模块804接收到命令,可以由取证模块804生成和传送用户界面1500。例如,网络管理员可以通过监测器将“tcp连接命令”传送给控制器计算机512以供取证模块804处理。响应于接收到命令,取证模块804可以生成用户界面1500并将用户界面1500传送给监测器。基于生产网络信息806和超大规模监测结构信息808,取证模块804可以生成用户界面1500。例如,用户界面1500可以包括用户界面元素,用户界面元素包括:tcp客户端地址(例如,标记为“tcp客户端”的列),其包括生产网络102上的tcp客户端的地址;客户端名称(例如,标记为“客户端主机”的列),其包括生产网络102上的tcp客户端的名称;tcp服务器地址(例如,标记为“tcp服务器”的列),其包括生产网络102上的tcp服务器的地址;主机名称(例如,标记为“服务器主机”的列),其包括生产网络102上的主机的地址;应用(例如标记为“应用”的列),其标识主机正在访问的应用服务;以及连接开始(例如,标记为“连接开始”的列),其显示主机何时开始访问应用服务。

图16是示出根据示例实施例的用户界面1600的示意图。用户界面1600可以被生成并传送给通信地耦接到控制器计算机512的监测器。响应于取证模块804接收到命令,可以由取证模块804生成和传送用户界面1600。例如,网络管理员可以通过监测器将“主机跟踪命令”传送给控制器计算机512以供取证模块804处理。响应于接收到命令,取证模块804可以生成用户界面1600并将用户界面1600传送给监测器。基于生产网络信息806和超大规模监测结构信息808,取证模块804可以生成用户界面1600。例如,用户界面1600可以包括用户界面元素,用户界面元素包括:主机名称(例如,标记为“主机名称”的列),其包括生产网络102上的主机的名称;入口名称(例如,标记为“过滤器接口”的列),其包括超大规模监测结构502上的入口接口508的名称;入口接口计数(例如,标记为“过滤器接口计数”的列),其计数超大规模监测结构502上与主机名称相关联的入口接口508的数量;与主机相关联的ip地址(例如,标记为“ip地址”的列);与主机相关联的mac地址(例如,标记为“mac地址”的列);供应商名称(例如,标记为“供应商”的列),其指示制造硬件设备的供应商;vlan标识符(例如,标记为“vlanid”的列),其指示主机所在的子网;用于所发现的关于主机的附加信息的额外信息(例如,“标记为“额外信息”的列);初次看到(例如,标记为“初次看到”的列),其指示主机何时初次出现在生产网络102中;以及最后看到(例如,标记为“最后看到”的列),其指示主机何时最后在生产网络102中被看到。

图17是示出根据示例实施例的用户界面1700的示意图。用户界面1700可以被生成并传送给通信地耦接到控制器计算机512的监测器。响应于取证模块804接收到命令,可以由取证模块804生成和传送用户界面1700。例如,网络管理员可以通过监测器将“dns查询命令”传送给控制器计算机512以供取证模块804进行处理。响应于接收到命令,取证模块804可以生成用户界面1700并将用户界面1700传送给监测器。基于生产网络信息806和超大规模监测结构信息808,取证模块804可以生成用户界面1700。例如,用户界面1700可以包括用户界面元素,该用户界面元素包括:客户端ip地址(例如,标记为“客户端ip”的列),其为生产网络102上进行dns请求以获得目标主机名称的ip地址的主机的ip地址;客户端名称(例如,标记为“客户端名称”的列),其为生产网络102上的客户端主机(如果已知)的名称;目标ip地址(例如,标记为“目标ip”的列),其包括生产网络102上或连接到生产网络102的任何网络上的客户端主机的名称;以及目标名称(例如,标记为“目标名称”的列),其包括生产网络102上的目标的url。

图18是示出根据示例实施例的用户界面1800的示意图。用户界面1800可以被生成并传送给通信地耦接到控制器计算机512的监测器。响应于取证模块804接收到命令,可以由取证模块804生成和传送用户界面1800。例如,网络管理员可以通过监测器将“dns跟踪器命令”传送给控制器计算机512以供取证模块804处理。响应于接收到命令,取证模块804可以生成用户界面1800并将用户界面1800传送给监测器。基于生产网络信息806和超大规模监测结构信息808,取证模块804可以生成用户界面1800。例如,用户界面1800可以包括用户界面元素,用户界面元素包括:服务器地址(例如,标记为“服务器地址”的列),其包括生产网络102上的服务器的ip地址;服务器名称(例如,标记为“服务器名称”的列),其包括服务器的名称;以及子网标识符(例如,标记为“子网”的列),其包括生产网络102上的子网的标识符。

机器和软件架构

在一些实施例中,结合图1-18描述的模块、方法、引擎、应用等等在多个机器和相关联的软件架构的背景下实现。下面的章节描述了适用与所公开的实施例一起使用的代表性软件架构和机器(例如,硬件)架构。

软件架构与硬件架构一起使用,以创建针对特定用途定制的设备和机器。例如,与特定软件架构相耦接的特定硬件架构将创建移动设备,诸如移动电话、平板设备等。稍微不同的硬件和软件架构可能会产生用于“物联网”的智能设备,而另一种组合产生用于云计算架构内的服务器计算机。本文并没有介绍这样的软件和硬件架构的所有组合,因为本领域技术人员可以容易地理解在不同于本文所包含的公开内容的背景下如何实现本公开。

软件架构

图19是示出代表性软件架构2002的框图2000,该代表性软件架构802可以结合本文所描述的各种硬件架构一起使用。图19仅是软件架构2002的非限制性示例,且应该了解,可以实施许多其他架构以促进实现本文中所描述的功能。软件架构2002可以在诸如图20的机器2100的硬件上执行,所述机器2100特别包括处理器2110、存储器/贮存器2130和i/o组件2150。返回图19,代表性的硬件层2004被示出,并且可以表示例如图20的机器2100。代表性的硬件层2004包括具有相关联的可执行指令2008的一个或多个处理单元2006。可执行指令2008表示软件架构2002的可执行指令,包括图1-18的方法、引擎、模块等的实现。硬件层2004还包括存储器或贮存器2010,其也具有可执行指令2008。硬件层2004还可以包括其它硬件2012,其表示硬件层2004的任何其他硬件,例如作为机器2100的一部分示出的其他硬件2012。

在图19的示例性架构中,软件架构2002可被概念化为层的堆栈,其中每层提供特定的功能。例如,软件架构2002可以包括诸如操作系统2014、库2016、框架/中间件2018、应用2020和表示层2044之类的层。可操作地,应用2020和/或层内的其他组件可以通过软件堆栈来调用应用编程接口(api)调用2024,并响应于api调用2024接收示出为消息2026的响应、返回值等等。所示出的层在本质上具有代表性,并不是所有的软件架构都具有所有层。例如,一些移动或专用操作系统2014可能不提供框架/中间件层2018,而其他系统可以提供这样的层。其他软件架构可以包括附加层或不同层。

操作系统2014可以管理硬件资源并提供公共服务。操作系统2014可以包括例如内核2028、服务2030和驱动2032。内核2028可以用作硬件和其他软件层之间的抽象层。例如,内核2028可以负责存储器管理、处理器管理(例如,调度)、组件管理、联网和安全设置等。服务2030可以针对其他软件层提供其他公共服务。驱动2032可以负责控制底层硬件或与底层硬件接口连接。例如,取决于硬件配置,驱动2032可以包括显示驱动、相机驱动、驱动、闪存驱动、串行通信驱动(例如通用串行总线(usb)驱动)、驱动、音频驱动、电源管理驱动等等。

库2016可以提供可由应用2020和/或其他组件和/或层使用的公共基础设施。库2016通常提供允许其他软件模块以与底层操作系统2014功能(例如,内核2028、服务2030和/或驱动2032)直接接口连接相比更容易的方式执行任务的功能。库2016可以包括系统库2034(例如,c标准库),系统库2034可以提供诸如存储器分配功能、串操纵功能、数学功能等的功能。另外,库2016可以包括api库2036,诸如:媒体库(例如,支持各种媒体格式的呈现和操纵的库,诸如动画专家组(mpeg)4、h.264、mpeg-1或mpeg-2音频层(mp3)、aac、amr、联合摄影专家组(jpg)或便携式网络图形(png))、图形库(例如,可用于在显示器上渲染2d和3d图形内容的开放图形库(opengl)框架)、数据库库(例如,结构化查询语言(sql),可提供各种关系数据库功能的sqlite)、web库(例如,可提供web浏览功能的webkit)等。库2016还可以包括各种各样的其他库2038,以向应用2020和其他软件组件/模块提供许多其他api。

框架2018(有时也称为中间件)可以提供可由应用2020和/或其他软件组件/模块使用的更高级别的公共基础设施。例如,框架/中间件2018可以提供各种图形用户界面(gui)功能、高级资源管理、高级位置服务等。框架/中间件2018可以提供可以被应用2020和/或其他软件组件/模块使用的广泛的其他api,其中一些可以特定于某个操作系统2014或平台。

应用2020包括内置应用2040或第三方应用2042。代表性的内置应用2040的示例可以包括但不限于联系人应用、浏览器应用、书籍阅读器应用、位置应用、媒体应用、消息传递应用和/或游戏应用。第三方应用2042可以包括任何内置应用以及各种其他应用2020。在具体示例中,第三方应用2042(例如,由与特定平台的供应商不同的实体使用androidtm或iostm软件开发工具包(sdk)而开发的应用)可以是在移动操作系统2014(诸如iostm、androidtmphone或其他移动操作系统2014)上运行的移动软件。在该示例中,第三方应用2042可以调用由诸如操作系统2014之类的移动操作系统提供的api调用2024,以促进本文描述的功能。

应用2020可以利用内置的操作系统功能(例如,内核2028、服务2030和/或驱动2032)、库(例如,系统库2034、api库2036和其他库2038)和框架/中间件2018来创建用户界面以与系统的用户106进行交互。作为替代或补充,在一些系统中,与用户的交互可以通过表示层(诸如表示层2044)进行。在这些系统中,应用/模块“逻辑”可以和与用户交互的应用/模块的方面分开。

一些软件架构2002利用虚拟机。在图19的示例中,这由虚拟机2048示出。虚拟机2048创建软件环境,该环境中应用/模块可以像在硬件机器(例如图20的机器2100)上执行一样执行。虚拟机2048由主机操作系统(例如,图21中的操作系统2014)托管,并且通常(尽管并不总是)具有管理虚拟机2048的操作以及与主机操作系统(例如,操作系统2014)连接的接口的虚拟机监测器2046。软件架构在虚拟机2048内执行,例如操作系统2050、库2052、框架/中间件2054、应用2056和/或表示层2058。在虚拟机2048内执行的这些软件架构的层可以与先前描述的层相同,或者可以不同。

示例机器架构和机器可读介质

图20是示出了根据一些示例实施例的能够从机器可读介质(例如,机器可读存储介质)中读取指令并执行本文所讨论的方法中的任何一个或多个的机器2100的组件的框图。具体地,图20示出了计算机系统的示例形式的机器2100的示意表示,其中可以执行指令2116(例如,软件、程序、应用、小应用、app或其他可执行代码)以使机器2100执行本文讨论的方法中的任何一个或多个。例如,指令2116可以使机器2100执行图11a-图11d的流程图。另外或备选地,指令2116可以实现图5的工具106;图7的接收模块702、处理模块704和交换网格708;图8的通信模块800、处理模块802和取证模块804等等,包括图5中的模块、引擎和应用。指令2116将通用的未编程的机器2100转换成被编程为以所描述的方式执行所描述和示出的功能的特定机器2100。在替代的实施例中,机器2100作为独立设备操作或可以耦接(例如,联网)到其他机器2100。在联网部署中,机器2100可以在服务器-客户端网络环境中以服务器机器或客户端机器的能力进行操作,或者在对等(或分布式)网络环境中作为对等机器进行操作。机器2100可以包括但不限于服务器计算机、客户端计算机、个人计算机(pc)、平板计算机、膝上型计算机、上网本、机顶盒(stb)、个人数字助理(pda)、娱乐媒体系统、蜂窝电话、智能电话、移动设备、可穿戴设备(例如智能手表)、智能家居设备(例如智能家电)、其他智能设备、web设备、网络路由器、网络交换机、网桥、或能够顺序地或以其他方式执行指定机器2100要采取的动作的指令2116的任何机器2100。此外,尽管仅示出了单个机器2100,但是术语“机器”也将被认为包括机器2100的集合,其单独地或联合地执行指令2116以执行本文讨论的方法中的任何一个或多个。

机器2100可以包括处理器2110、存储器/贮存器2130和/或i/o组件2150,其可配置成通过总线2102彼此通信。在示例实施例中,处理器2110(例如,中央处理单元(cpu)、精简指令集计算(risc)处理器、复杂指令集计算(cisc)处理器、图形处理单元(gpu)、数字信号处理器(dsp)、专用集成电路(asic)、射频集成电路(rfic)、其他处理器或其任何适当组合)可以包括例如可以执行指令2116的处理器2112和处理器2114。术语“处理器”旨在包括多核处理器2110,所述多核处理器可以包括可同时执行指令2116的两个或更多个独立处理器2110(有时称为“核”)。尽管图20示出了多个处理器2110,但是机器2100可以包括具有单个核的单个处理器2110、具有多个核的单个处理器2110(例如,多核处理器)、具有单核的多个处理器2110、具有多个核的多个处理器2110或其任意组合。

存储器/贮存器2130可以包括诸如主存储器或其他存储贮存器之类的存储器2132、以及存储单元2136,两者都可以由处理器2110例如经由总线2102进行访问。存储单元2136和存储器2132存储体现本文所述的方法或功能中的一个或多个的指令2116。在机器2100执行指令2116期间,指令2116还可以完全地或部分地驻留在存储器2132内、存储单元2136内、处理器2110(例如,在处理器的高速缓存存储器内)的至少一个内、或其任何合适的组合内。因此,存储器2132、存储单元2136和处理器2110的存储器是机器可读介质的示例。

如本文所使用的,“机器可读介质”是指能够临时或永久地存储指令2116和数据的设备,并且可以包括但不限于随机存取存储器(ram)、只读存储器(rom)、缓冲存储器、闪速存储器、光学介质、磁性介质、高速缓存存储器、其他类型的贮存器(例如,可擦除可编程只读存储器(eeprom))和/或其任何合适的组合。术语“机器可读介质”应被视为包括能够存储指令2116的单个介质或多个介质(例如集中式或分布式数据库、或相关联的高速缓存和服务器)。术语“机器可读介质”还将被认为包括能够存储被机器(例如机器2100)执行的指令(例如,指令2116)的任何介质或多个介质的组合,使得指令在被机器的一个或多个处理器(例如,处理器2110)执行时,使机器执行本文所描述的方法中的任何一个或多个。因此,“机器可读介质”指单个存储装置或设备、以及包括多个存储装置或设备的“基于云”的存储系统或存储网络。

i/o组件2150可以包括用于接收输入、提供输出、产生输出、发送信息、交换信息、捕获测量等的各种组件。包括在特定机器2100中的特定i/o组件2150将取决于机器的类型。例如,诸如移动电话之类的便携式机器2100可能会包括触摸输入设备或其他这样的输入机构,而无头服务器机器可能不包括这样的触摸输入设备。应当理解,i/o组件2150可以包括图20中未示出的许多其他组件。根据功能将i/o组件2150分组,以仅用于简化以下讨论,并且分组不以任何方式进行限制。在各种示例实施例中,i/o组件2150可以包括输出组件2152和输入组件2154。输出组件2152可以包括视觉组件(例如显示器,比如等离子体显示面板(pdp)、发光二极管(led)显示器、液晶显示器(lcd)、投影仪或阴极射线管(crt))、听觉组件(例如,扬声器)、触觉组件(例如,振动马达、阻抗机构)、其他信号发生器等。输入组件2154包括字母数字输入组件(例如,键盘、被配置为接收字母数字输入的触摸屏、光电键盘或其他字母数字输入组件)、基于点的输入组件(例如,鼠标、触摸板、轨迹球、操纵杆、运动传感器或其他定点仪器)、触觉输入组件(例如,物理按钮、提供触摸或触摸手势的位置和力的触摸屏或其他触觉输入组件)、音频输入组件(例如,麦克风)等。

在另一些示例实施例中,i/o组件2150可特别包括生物测定组件2156、运动组件2158、环境组件2160或位置组件2162等组件。例如,生物测定组件2156可以包括用于检测表现(例如,手表现、面部表现、语音表现、身体姿势或眼睛跟踪)、测量生物信号(例如,血压、心率、体温、汗水或脑波)、标识人(例如,语音标识、视网膜标识、面部标识、指纹标识或基于脑电图的标识)等的组件。运动组件2158可以包括加速度传感器组件(例如,加速度计)、重力传感器组件、旋转传感器组件(例如,陀螺仪)等。环境组件2160可以包括例如照度传感器组件(例如,光度计)、温度传感器组件(例如,检测环境温度的一个或多个温度计)、湿度传感器组件、压力传感器组件(例如气压计)、声学传感器组件(例如,检测背景噪声的一个或多个麦克风)、接近传感器组件(例如,检测附近物体的红外传感器)、气体传感器(例如,为安全而检测有害气体浓度或测量大气中的污染物的气体传感器)、或可以提供对应于周围物理环境的指示、测量或信号的其他组件。位置组件2162可以包括位置传感器组件(例如,全球定位系统(gps)接收机组件)、高度传感器组件(例如,高度计或检测气压的气压计(根据气压可以导出高度))、取向传感器组件(例如,磁力计)等。

可以使用各种各样的技术来实现通信。i/o组件2150可以包括通信组件2164,通信组件2164可操作以分别经由耦接2182和耦接2172将机器2100耦接到网络2180或设备2170。例如,通信组件2164可以包括网络接口组件或与网络2180接口连接的其他合适设备。在另一些示例中,通信组件2164可以包括有线通信组件、无线通信组件、蜂窝通信组件、近场通信(nfc)组件、组件(例如低能量)、组件、以及经由其他模态提供通信的其他通信组件。设备2170可以是另一机器2100或各种外围设备中的任一种(例如,经由usb耦接的外围设备)。

此外,通信组件2164可以检测标识符或包括可操作以检测标识符的组件。例如,通信组件2164可以包括射频标识(rfid)标签读取器组件、nfc智能标签检测组件、光学读取器组件(例如,用于检测一维条形码(如通用产品代码(upc)条形码)、多维条形码(如快速响应(qr)码)、aztec码、数据矩阵(datamatrix)、数据字(dataglyph)、maxicode、pdf417、超大规模码、统一商业码缩减空间符号(uccrss)-2d条形码、以及其他光学代码)的光学传感器)、或声学检测组件(例如,标识带标签的音频信号的麦克风)。另外,可以经由通信组件2164导出各种信息,诸如经由互联网协议(ip)地理位置的位置、经由信号三角测量的位置、经由检测可以指示特定位置的nfc信标信号的位置等等。

传输介质

在各种示例实施例中,网络2180的一个或多个部分可以是自组织网络、内联网、外联网、虚拟专用网(vpn)、局域网(lan)、无线lan(wlan)、广域网(wan)、无线wan(wwan)、城域网(man)、互联网、互联网的一部分、公共交换电话网络(pstn)的一部分、普通老式电话服务(pots)网络、蜂窝电话网络、无线网络、网络、另一类型的网络、或两个或更多个这样的网络的组合。例如,网络2180或网络2180的一部分可以包括无线或蜂窝网络,并且耦接2182可以是码分多址(cdma)连接、全球移动通信系统(gsm)连接或另一个类型的蜂窝或无线耦接。在该示例中,耦接2182可以实现各种类型的数据传输技术中的任何一种,例如单载波无线电传输技术(1xrtt)、演进数据优化(evdo)技术、通用分组无线电服务(gprs)技术、gsm演进增强数据速率(edge)技术、包括3g的第三代合作伙伴计划(3gpp)、第四代无线(4g)网络、通用移动电信系统(umts)、高速分组接入(hspa)、全球微波接入互操作性(wimax)、长期演进(lte)标准、由各种标准设置组织定义的其他标准、其他远程协议或其他数据传输技术。

指令2116可以经由网络接口设备(例如,包括在通信组件2164中的网络接口组件)使用传输介质并且利用多个公知的传输协议(例如,超文本传输协议(http))中的任一个通过网络2180发送或接收。类似地,可以使用传输介质经由耦接2172(例如,对等耦接)向设备2170发送或从其接收指令2116。术语“传输介质”应被认为包括能够存储、编码或承载用于被机器2100执行的指令2116的任何无形介质,并且包括用于促进这样的软件的通信的数字或模拟通信信号或其他无形介质。术语载体介质包括能够承载可由处理器执行的一组指令的任何介质,并且包括机器可读介质和传输介质。

下面的编号示例是实施例。

1.一种系统,包括:

至少一个处理器和具有指令的存储器,所述指令在被执行时使得所述至少一个处理器执行包括以下的操作:

从生产网络接收业务信息的第一部分的副本作为第一业务信息,所述第一业务信息在提供对超大规模监测结构的接入的多个入口接口处被接收;

在所述超大规模监测结构中利用由控制器计算机控制的第一多个白盒交换机传送所述第一业务信息,所述传送包括将所述第一业务信息传送给所述控制器计算机;

将所述第一业务信息存储在数据库中;

基于所述第一业务信息在所述超大规模监测结构中配置第二多个白盒交换机;

接收来自所述生产网络的所述业务信息的第二部分的副本作为第二业务信息,所述第二业务信息在提供对所述超大规模监测结构的接入的所述多个入口接口中包括的第一入口接口处被接收;以及

在所述超大规模监测结构中用所述第二多个白盒交换机转发所述第二业务信息,所述转发包括通过多个出口接口将所述第二业务信息转发给包括多个工具的工具库,所述工具用于监测生产网络中的业务信息。

2.根据示例1所述的系统,其中所述传送还包括:

过滤所述第一业务信息以生成过滤的第一业务信息;

将所述过滤的第一业务信息传送给控制器计算机;以及

将所述过滤的第一业务信息存储在数据库中作为生产网络管理信息。

3.根据示例2所述的系统,其中所述配置还包括:

在控制器计算机处基于生产网络管理信息生成生产网络配置信息;以及

基于生产网络信息配置所述第二多个白盒交换机,以及

其中所述生产网络信息包括所述生产网络管理信息和所述生产网络配置信息。

4.根据示例3所述的系统,其中,所述生产网络管理信息包括以下至少一项:地址解析协议(arp)信息、传输控制协议(tcp)信息、动态主机配置协议(dhcp)信息、域名系统(dns)信息、轻量级目录访问协议(ldap)信息和样本信息。

5.根据示例1至4中任一项所述的系统,其中,接收所述业务信息的所述第一部分的所述副本还包括:经由包括跨接端口和分路器的多个监测机构来接收。

6.根据示例1至5中任一项所述的系统,其中所述第二业务信息包括web业务、数据库业务和链路级别业务中的至少一个,并且

其中转发所述第二业务信息包括:

过滤第二业务信息以生成第一业务流;

将所述第一业务流转发给专用服务计算机;

在所述专用服务计算机处标识所述第一业务流的副本;以及

移除所述第一业务流的所述副本。

7.根据示例1至6中任一项所述的系统,其中接收所述第一业务信息包括:接收链路级别信息,并且其中传送所述第一业务信息包括:将所述链路级别信息传送给所述控制器计算机,所述操作还包括:显示所述生产网络中与所述第一入口接口相关联的设备的名称,所述设备的名称基于所述链路级别信息被标识。

8.根据示例1至7中任一项所述的系统,其中接收所述第一业务信息还包括接收地址解析协议信息,并且其中,传送所述第一业务信息还包括将所述地址解析协议信息传送给所述控制器计算机,所述操作还包括将所述地址解析协议信息存储在数据库中,所述地址解析协议信息包括:标识连接到生产网络的设备的设备标识符、描述包括所述设备的子网的网际协议子网信息以及描述包括所述设备的局域网的虚拟本地地址网络信息。

9.根据示例1至8中任一项所述的系统,其中所述操作还包括:

利用采样技术对所述第一业务信息进行采样,以生成多个样本信息;

将所述多个样本信息传送给所述控制器计算机;以及

将所述多个样本信息存储在数据库中。

10.一种方法,包括:

从生产网络接收业务信息的第一部分的副本作为第一业务信息,所述第一业务信息在提供对超大规模监测结构的接入的多个入口接口处被接收;

在所述超大规模监测结构中利用由控制器计算机控制的第一多个白盒交换机传送所述第一业务信息,所述传送包括将所述第一业务信息传送给所述控制器计算机;

将所述第一业务信息存储在数据库中;

基于所述第一业务信息在所述超大规模监测结构中配置第二多个白盒交换机;

接收来自所述生产网络的所述业务信息的第二部分的副本作为第二业务信息,所述第二业务信息在提供对所述超大规模监测结构的接入的所述多个入口接口中包括的第一入口接口处被接收;以及

在所述超大规模监测结构中用所述第二多个白盒交换机转发所述第二业务信息,所述转发包括通过多个出口接口将所述第二业务信息转发给包括多个工具的工具库,所述工具用于监测生产网络中的业务信息。

11.根据示例10所述的方法,其中所述传送还包括:

过滤所述第一业务信息以生成过滤的第一业务信息;

将所述过滤的第一业务信息传送给控制器计算机;以及

将所述过滤的第一业务信息存储在数据库中作为生产网络管理信息。

12.根据示例11所述的方法,其中所述配置包括:

在控制器计算机处基于生产网络管理信息生成生产网络配置信息;以及

基于生产网络信息配置所述第二多个白盒交换机,以及

其中所述生产网络信息包括所述生产网络管理信息和所述生产网络配置信息。

13.根据示例12所述的方法,其中,所述生产网络管理信息包括以下至少一项:地址解析协议(arp)信息、传输控制协议(tcp)信息、动态主机配置协议(dhcp)信息、域名系统(dns)信息、轻量级目录访问协议(ldap)信息和样本信息。

14.根据示例10至13中任一项所述的方法,其中,接收所述业务信息的所述第一部分的所述副本包括经由包括跨接端口和分路器的多个监测机构来接收。

15.根据示例10至14中任一项所述的方法,其中所述第二业务信息包括web业务、数据库业务和链路级别业务中的至少一个,以及

其中转发所述第二业务信息包括:

过滤第二业务信息以生成第一业务流;

将所述第一业务流转发给专用服务计算机;

在所述专用服务计算机处标识所述第一业务流的副本;以及

移除所述第一业务流的所述副本。

16.根据示例10至15中任一项所述的方法,其中接收所述第一业务信息包括接收链路级别信息,并且其中传送所述第一业务信息包括将所述链路级别信息传送给所述控制器计算机,并且还包括显示所述生产网络中与所述第一入口接口相关联的设备的名称,所述设备的名称基于所述链路级别信息被标识。

17.根据示例10至16中任一项所述的方法,其中接收所述第一业务信息包括接收地址解析协议信息,并且其中传送所述第一业务信息包括将所述地址解析协议信息传送给所述控制器计算机,并且还包括将所述地址解析协议信息存储在数据库中,所述地址解析协议信息包括:标识连接到所述生产网络的设备的设备标识符、描述包括所述设备的子网的网际协议子网信息以及描述包括所述设备的局域网的虚拟本地地址网络信息。

18.根据示例10至17中任一项所述的方法,还包括:

利用采样技术对所述第一业务信息进行采样,以生成多个样本信息;

将所述多个样本信息传送给所述控制器计算机;以及

将所述多个样本信息存储在数据库中。

19.根据示例10至18中任一项所述的方法,其中接收所述第一业务信息包括接收传输控制协议信息,并且其中传送所述第一业务信息包括将所述传输控制协议信息传送给所述控制器计算机,并且还包括将所述传输控制协议信息存储在所述数据库中,所述传输控制协议信息包括:第一设备的设备标识符、第二设备的设备标识符以及指示所述第一设备发起建立与所述第二设备的连接的状态。

20.一种存储一组指令的机器可读介质,所述指令在由处理器执行时使机器执行包括以下步骤的操作:

从生产网络接收业务信息的第一部分的副本作为第一业务信息,所述第一业务信息在提供对超大规模监测结构的接入的多个入口接口处被接收;

在所述超大规模监测结构中利用由控制器计算机控制的第一多个白盒交换机传送所述第一业务信息,所述传送包括将所述第一业务信息传送给所述控制器计算机;

将所述第一业务信息存储在数据库中;

基于所述第一业务信息在所述超大规模监测结构中配置第二多个白盒交换机;

接收来自所述生产网络的所述业务信息的第二部分的副本作为第二业务信息,所述第二业务信息在提供对所述超大规模监测结构的接入的所述多个入口接口中包括的第一入口接口处被接收;以及

在所述超大规模监测结构中用所述第二多个白盒交换机转发所述第二业务信息,所述转发包括通过多个出口接口将所述第二业务信息转发给包括多个工具的工具库,所述工具用于监测生产网络中的业务信息。

21.一种携带指令的载体介质,所述指令在由处理器执行时使机器执行示例10至19中任一项所述的方法。

语言

在整个说明书中,多个实例可以实现被描述为单个实例的组件、操作或构造。虽然一个或多个方法的各个操作被示意和描述为分离的操作,但是各个操作中的一个或多个可以同时执行,并且无需按所示顺序执行操作。在示例配置中被示为分离组件的结构和功能可以被实现为组合结构或组件。类似地,被示为单个组件的结构和功能可以被实现为分离的组件。这些和其他变型、修改、添加和改进落入本主题的范围内。

尽管已经参考具体示例实施例描述了本发明主题的概述,但是在不脱离本公开的实施例的更宽范围的情况下,可以对这些实施例进行各种修改和改变。本文中,本发明主题的这些实施例单独地或统一地由术语“发明”来指代,其仅是为了方便,并且不是旨在主动将本申请的范围限制为任意单个发明或发明构思(如果实际上不止一个被公开的话)。

本文充分详细地描述了示出的实施例以使得本领域技术人员能够实现公开的教导。可以利用并根据这些实施例得出其他实施例,从而可以在不脱离本公开的范围的情况下做出结构和逻辑上的替换和改变。因此,该“具体实施方式”不应当看做是限制意义,并且各种实施例的范围仅通过所附权利要求以及权利要求的等同物的全部范围来限定。

如本文所使用的,术语“或”可以被解释为包括性或排他性的意义。此外,可以针对本文中描述为单个实例的资源、操作或结构提供多个实例。另外,各种资源、操作、模块、引擎和数据存储之间的边界在某种程度上是任何的,并且在具体说明性配置的上下文中示出了特定操作。设想了功能的其他分配,并且这些分配可以落入本公开的各种实施例的范围内。一般来说,在示例配置中作为单独资源呈现的结构和功能可以被实现为组合的结构或资源。类似地,作为单个资源呈现的结构和功能可以被实现为单独的资源。这些和其他变型、修改、添加和改进落入由所附权利要求表示的本公开的实施例的范围内。因此,说明书和附图应当被看做说明性的而不是限制意义的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1