CN106559257B - 分布式网络的分析 - Google Patents
分布式网络的分析 Download PDFInfo
- Publication number
- CN106559257B CN106559257B CN201610865671.3A CN201610865671A CN106559257B CN 106559257 B CN106559257 B CN 106559257B CN 201610865671 A CN201610865671 A CN 201610865671A CN 106559257 B CN106559257 B CN 106559257B
- Authority
- CN
- China
- Prior art keywords
- data
- inquiry
- pod
- analysis system
- analyzing container
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004458 analytical method Methods 0.000 title claims abstract description 275
- 238000003860 storage Methods 0.000 claims abstract description 72
- 230000004044 response Effects 0.000 claims abstract description 42
- 230000002776 aggregation Effects 0.000 claims description 75
- 238000004220 aggregation Methods 0.000 claims description 75
- 238000004891 communication Methods 0.000 claims description 52
- 235000013399 edible fruits Nutrition 0.000 claims description 5
- 238000000034 method Methods 0.000 abstract description 29
- 230000005540 biological transmission Effects 0.000 description 24
- 238000005516 engineering process Methods 0.000 description 24
- 238000009826 distribution Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 238000007726 management method Methods 0.000 description 6
- 230000033228 biological regulation Effects 0.000 description 5
- 238000013500 data storage Methods 0.000 description 5
- 239000004744 fabric Substances 0.000 description 5
- 241001269238 Data Species 0.000 description 4
- 230000032683 aging Effects 0.000 description 4
- 238000013475 authorization Methods 0.000 description 4
- 239000012141 concentrate Substances 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000015556 catabolic process Effects 0.000 description 3
- 238000006731 degradation reaction Methods 0.000 description 3
- 239000006185 dispersion Substances 0.000 description 3
- 238000005538 encapsulation Methods 0.000 description 3
- 230000033001 locomotion Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000001737 promoting effect Effects 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- VCUFZILGIRCDQQ-KRWDZBQOSA-N N-[[(5S)-2-oxo-3-(2-oxo-3H-1,3-benzoxazol-6-yl)-1,3-oxazolidin-5-yl]methyl]-2-[[3-(trifluoromethoxy)phenyl]methylamino]pyrimidine-5-carboxamide Chemical compound O=C1O[C@H](CN1C1=CC2=C(NC(O2)=O)C=C1)CNC(=O)C=1C=NC(=NC=1)NCC1=CC(=CC=C1)OC(F)(F)F VCUFZILGIRCDQQ-KRWDZBQOSA-N 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000012010 growth Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- YIWGJFPJRAEKMK-UHFFFAOYSA-N 1-(2H-benzotriazol-5-yl)-3-methyl-8-[2-[[3-(trifluoromethoxy)phenyl]methylamino]pyrimidine-5-carbonyl]-1,3,8-triazaspiro[4.5]decane-2,4-dione Chemical compound CN1C(=O)N(c2ccc3n[nH]nc3c2)C2(CCN(CC2)C(=O)c2cnc(NCc3cccc(OC(F)(F)F)c3)nc2)C1=O YIWGJFPJRAEKMK-UHFFFAOYSA-N 0.000 description 1
- 241000721662 Juniperus Species 0.000 description 1
- JAWMENYCRQKKJY-UHFFFAOYSA-N [3-(2,4,6,7-tetrahydrotriazolo[4,5-c]pyridin-5-ylmethyl)-1-oxa-2,8-diazaspiro[4.5]dec-2-en-8-yl]-[2-[[3-(trifluoromethoxy)phenyl]methylamino]pyrimidin-5-yl]methanone Chemical compound N1N=NC=2CN(CCC=21)CC1=NOC2(C1)CCN(CC2)C(=O)C=1C=NC(=NC=1)NCC1=CC(=CC=C1)OC(F)(F)F JAWMENYCRQKKJY-UHFFFAOYSA-N 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 229910002056 binary alloy Inorganic materials 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000010219 correlation analysis Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000005206 flow analysis Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000009545 invasion Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000037361 pathway Effects 0.000 description 1
- 238000006116 polymerization reaction Methods 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000004576 sand Substances 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 239000011800 void material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/142—Network analysis or design using statistical or mathematical methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/02—Capturing of monitoring data
- H04L43/026—Capturing of monitoring data using flow identification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/04—Processing captured monitoring data, e.g. for logfile generation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
- H04L43/062—Generation of reports related to network traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/12—Network monitoring probes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
- H04L41/044—Network management architectures or arrangements comprising hierarchical management structures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Algebra (AREA)
- Pure & Applied Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Mathematical Physics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Remote Sensing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了分布式网络的分析。一种实例方法包括:由中央分析***接收与网络装置的地理分布式网络相关联的通信流数据的查询;由中央分析***将所述查询输出给多个分析容器,其中,所述多个分析容器中的每个耦接至在所述地理分布式网络内的网络装置的储存单元;并且响应于输出所述查询,由中央分析***从所述多个分析容器中接收查询结果,其中,所述结果至少包括基于所述查询来自所述多个分析容器的通信流数据。
Description
技术领域
本公开涉及计算机网络,并且更具体而言,涉及分析分布式网络。
背景技术
计算机网络是交换数据和分享资源的互连的计算装置的集合。在基于数据包的网络中,计算装置通过将数据分成称为数据包的小块,传送数据。在网络内的装置(例如,路由器和交换机)通过网络将数据包从源装置转发给目的地装置。目的地装置从数据包中提取数据并且将数据组合成其原始形式。
存在各种协议,这些协议允许中间网络装置(例如,路由器和交换机)收集和报告通信量统计。例如,网络装置在接收和/或传输通信量的装置的接口上部署收集通信量统计的取样机构。根据协议,网络装置可以将包含通信量统计的记录定期输出给称为“流量收集器”的数据包流量收集器的集中式(中心)装置。在很多网络环境中,流量收集器可以通过从各种网络位置发送的通信流量数据包接收通信流量信息。因此,网络管理员可以使用数据包流量收集器来分析总体网络通信流量。用于将通信量记录报告给流量收集器的实例协议包括的以及Juniper的
发明内容
通常,描述了允许中央(central,中心)分析***来分析在分布式网络(例如,地理分布式网络)中的多个网络装置的网络特性并且尤其是性能特性的技术。如在本文中所述,这些技术允许中央分析***响应于一个或多个查询,自动分析这种特性,其中,中央分析***被配置成将查询分布给分布式网络内的多个不同的分析容器,并且聚集查询结果,下面进一步详细描述。
在一个实例中,一种方法包括:由中央分析***接收针对与网络装置的地理分布式网络相关联的通信流数据的查询;由中央分析***将所述查询输出给多个分析容器,其中,所述多个分析容器中的每个耦接至所述地理分布式网络内的网络装置的储存单元;并且响应于输出所述查询,由中央分析***从所述多个分析容器接收查询结果,其中,所述结果至少包括基于所述查询源自所述多个分析容器的通信流量数据。
在一个实例中,一种中央分析***包括至少一个处理器。所述至少一个处理器被配置成:接收针对与网络装置的地理分布式网络相关联的通信流量数据的查询;将所述查询输出给多个分析容器,其中,所述多个分析容器中的每个耦接至在所述地理分布式网络内的网络装置的储存单元;并且响应于输出所述查询,从所述多个分析容器接收查询结果,其中,所述结果至少包括基于所述查询源自所述多个分析容器的通信流数据。
在一个实例中,一种方法包括:由分析容器从中央分析***接收针对通信流数据的查询,其中,所述分析容器包含在分析容器的分层布置内,所述分析容器中的每个耦接至网络装置的分布式网络内的网络装置的储存单元,并且其中,所述分层布置基于分布式网络的拓扑。实例方法进一步包括:由分析容器将查询输出给与分析容器相关联的一个或多个子分析容器,其中,所述一个或多个子分析容器是在分析容器的分层布置内的分析容器的子代;响应于输出查询,由分析容器从一个或多个子分析容器中接收查询结果,其中,所述结果至少包括源自一个或多个子分析容器的流量数据;并且由分析容器将查询结果输出给中央分析***。
在一个实例中,一种装置包括至少一个处理器。所述至少一个处理器被配置成:从中央分析***接收针对通信流数据的查询,其中,所述装置包括分析容器,所述分析容器包含在分析容器的分层布置内,所述分析容器中的每个耦接至网络装置的分布式网络内的网络装置的储存单元,并且其中,所述分层布置基于分布式网络的拓扑。所述至少一个处理器进一步被配置成:将查询输出给一个或多个子分析容器,其中,所述一个或多个子分析容器是在分析容器的分层布置内的分析容器的子代;响应于输出查询,从一个或多个子分析容器接收查询结果,其中,所述结果至少包括源自一个或多个子分析容器的流量数据。所述至少一个处理器进一步被配置成将查询结果输出给中央分析***。
在附图和以下描述中陈述本公开的一个或多个实施方式的细节。通过描述和附图并且通过权利要求,本公开的其他特征、目标以及优点将变得显而易见。
附图说明
图1A是示出根据本公开的技术的包括分布式分析***的实例网络***的方框图;
图1B是示出根据本公开的技术的包括分布式分析***的实例企业网络***的方框图;
图2是示出根据本公开的技术的分布式分析***的进一步细节的方框图;
图3是示出根据本公开的技术的在分布式分析***内的分析容器的层级的进一步细节的方框图;
图4是示出根据本公开的技术的在分布式分析***内的分析容器与网络装置之间的关系的进一步细节的方框图;
图5是示出根据本公开的技术的包括分布式分析***的另一个实例网络的方框图;
图6是示出根据本公开的技术的分布式分析***的实例操作的流程图;
图7是示出根据本公开的技术的分布式分析***的进一步实例操作的流程图。
具体实施方式
由路由器和交换机产生的遥测和性能数据的量以高速率持续增长。该增长的驱动器包括日益增长的数据平面通信量,并且对这样的硬件解决方案感兴趣,即,该硬件解决方案可以产生内联遥测,而不影响路由性能,并且具有更便宜的并且更快速的储存以及能够分析数据的装置。大部分网络按照比例在地理上分布并且是分散的,并且大部分网络还可以使用广域网(WAN)链路而连接在一起,这些链路通常比局域网(LAN)连接贵几个数量级。
虽然网络通常是分布式和分散的,但是由分布式分析***的中央分析***生成的集中的或聚集的视图可用于以全局和整体的方式查看网络。尤其地,由中央分析***生成的集中的或聚集的视图可以提供几个有用的方面。首先,集中的或聚集的视图可以提供网络的拓扑(例如,物理和/或逻辑)的全局可见性。其次,集中的或聚集的视图可以在分布式和分散的网络内的每个网络装置上提供数据包流的特性(尤其是性能特性)的信息。此外,集中的或聚集的视图可以提供通过网络提取的特定流量信息或队列利用。
这种分布式分析***的中央分析***还可以减少对昂贵的WAN带宽的需求,这通常需要将在整个网络中收集的所有遥测数据聚集在中央储存库内。分布式分析***的中央分析***还可以使用分层级分布并且连接至中央分析***的分析容器,以克服局部分析的挑战。通常,用户需要基于拓扑、流量信息以及路由表格确定反思(内省,introspect)哪个局域网络装置。然而,在一些实例中,中央分析***可以实时保持关于拓扑、流量信息以及路由表格的数据库,从而甚至在具有网络拥塞时,允许中央分析***确定反思哪个局域网络装置,并且通常,用户不能直接识别本地网络装置。在一些实例中,中央分析***可以提供安全应用,对网络总体上具有全面纵览,这可以在确定威胁和异常通信量模式方面提供增强的能力。
图1A是示出根据本文中描述的技术的实例网络***2的方框图。图1A至图1B提供可以实现本公开的各种技术的一个或多个网络的非限制性实例。如在图1A的实例中所示,网络***2包括城域接入和聚集网络4,其耦接至互联网服务提供商网络7。通常,互联网服务提供商网络7通常由互联网服务提供商(ISP)所拥有并且用作给用户装置18A、18B(在本文中,“用户装置18”)提供基于数据包的网络服务的专用网络。用户装置18可以是例如个人电脑、膝上型电脑或与用户相关联的其他类型的计算装置,例如,3G无线卡、无线功能的笔记本、游戏机装置、寻呼机、智能电话、个人数字助理(PDA)、或任何其他合适的用户装置。每个用户装置18可以运行各种软件应用程序,例如,文字处理和其他办公支持软件、网络浏览软件、支持语音呼叫、视频游戏、视频会议以及电子邮件等。即,互联网服务提供商网络7提供针对用户装置18的网络访问的认证和建立,使得用户装置18可以通过互联网骨干网12开始与一个或多个内容数据网络(CDN)8A-8B(在后文中,“CDNs 8”或“CDN 8”)交换数据包。
通常,每个CDN 8通常是互连装置的专用网络,所述互连装置相配合以使用一个或多个服务将内容分配给客户。每个CDN 8可以包括一个或多个数据中心,其具有数据服务器、网络服务器、应用服务器、数据库、计算机集群、大型计算机以及任何其他类型的服务器、计算部件和/或数据库,其可以由内容服务提供商利用以促进通过互联网骨干网12和互联网服务提供商网络7将内容传送给用户装置18。例如,这种内容可以包括流媒体文件、数据文件、软件、域名***信息、文档以及数据库查询结果等。因此,由CDN 8提供的服务的实例可以包括超文本传输协议(HTTP)、基于HTTP的自适应流媒体、实时流协议(RTSP)流媒体、其他媒体流、广告、文件传输协议(FTP)等。
在图1A的实例中,在某些情况下,城域传送网24可以针对与用户装置18相关联的网络通信量提供层2(L2)传输服务。城域传送网24通常包括内部传输节点(“N”)19,例如,以太网交换机和下层传输***,用于通过接入提供商边缘路由器(A-PE)36与网络提供商边缘路由器(N-PE)30之间的高速链路进行传输、多路复用并且切换通信。虽然为了简单起见,仅仅示出了单个互联网服务提供商网络7,但是城域传送网24可以给多个不同的互联网服务提供商的用户装置18提供数据包的城域接入、聚集以及传输。通常,城域传送网24通常由城域载体拥有和操作,而每个互联网服务提供商网络7由单独的互联网服务提供商拥有和运营。
在图1A的该实例中,A-PE 36在城域传送网24的边界操作,并且分别为接入网络(AN)27提供连接性。通常,AN 27给用户装置18提供对城域传送网24的接入。例如,A-PE 36通常包括将源自与用户装置18相关联的一个或多个端点的输出聚集到城域传送网24的高速上行链路内的功能。例如,用户装置18可以连接至本地用户端设备(CPE),例如,DSL或电缆调制解调器,并且A-PE 36可以包括数字用户线接入复用设备(DSLAM)或其他交换装置。用户装置18的本地CPE可以使用点到点协议(PPP),例如,通过异步传输模式(ATM)的PPP、通过以太网的PPP(PPPoE),以与A-PE 36通信。可以在线路上支持PPP,例如,线路为连接端点计算装置18和网络交换机的数字用户线(DSL)。在其他实施方式中,端点用户计算装置18可以使用非PPP协议与A-PE 36通信。除了DSL线路,其他实施方式还可以使用其他线路,例如,电缆、通过T1、T3的以太网、或其他接入链路。
通常,用户装置18是拥有和运营互联网服务提供商网络7的互联网服务提供商的客户的装置。如此,互联网服务提供商网络7处理认证和会话建立,以便提供用户装置18对网络的接入。宽带网络网关(BNG)23针对经由N-PE 30至城域传送网24的连接性提供路由和切换功能,并且为针对用户装置18建立的IP会话提供端点以及管理。在另一个实例中,BNG23可以是宽带远程接入服务器(BRAS)或其他路由装置,其为用户会话提供锚定点。
在认证给定的用户装置18时,互联网服务提供商网络7将专用IP地址从服务提供商的IP域分配给用户,并且可以为与用户相关联的通信会话提供层3(L3)服务。例如,服务提供商网络7的AAA服务器111通常是认证、授权和计费(AAA)服务器,以认证请求网络连接的用户的证书。AAA服务器11可以是例如远程认证拨号用户服务(RADIUS)服务器。在认证源自用户装置18的网络访问请求时,AAA服务器11分配层3(L3)网络地址(例如,专用IPv4或Ipv6网络地址),以通过互联网服务提供商网络7接收数据服务。策略控制服务器14表示为用户装置18提供策略控制和计费规则功能(PCRF)的网络装置。
通过这种方式,层2(L2)网络功能和层3(L3)网络功能通常划分在城域传送网24与互联网服务提供商网络7之间。作为一个实例,城域传送网24执行虚拟专用局域网业务(VPLS),其使城域传送网24能够用作切换用户装置18的L2通信量的L2网络,L3功能(例如用户装置18的L3地址分配和路由)由用户的相应互联网服务提供商(即,在该实例中,ISP网络7)处理。例如,通过执行VPLS服务,城域传送网24传输L2通信,例如,以太网数据包,使用虚电线来传送封装的L2通信。在于2007年1月提交的题为“Virtual Private LAN Service(VPLS)Using BGP for Auto-Discovery and Signaling”的RFC 4761中可以找出关于使用VPLS的更多信息,通过引证将其全部内容结合于此,犹如完全在本文中陈述的一样。后面标有数字的网络层的引用可以表示开放***互连(OSI)模型的特定层。在日期为1980年4月由Hubert Zimmermann在IEEE Transactions on Communications、vol.28、no.4中公开的题为“OSI Reference Model–the ISO Model of Architecture for Open SystemsInterconnection”的IEEE出版物中可以找出关于OSI模型的更多信息,其通过引证结合于此,犹如完全在本文中陈述的一样。
在通过互联网服务提供商网络7认证和建立网络接入之后,任一个用户装置18可以开始与CDN 8交换数据包。在该过程中,由互联网服务提供商网络7分配给用户装置18的专用IP地址可以转译成与互联网服务提供商网络7的路由前缀相关联的公共地址,以在互联网骨干网12上进行基于数据包的通信。而且,网关21提供层3(L3)路由功能,以通过互联网服务提供商网络7到达用户装置18。即,网关21通知L3能到达性信息(例如,路由),该能到达性信息用于到达与互联网服务提供商网络7相关联的公共地址前缀。在接收层3(L3)路由信息时,自治***边界路由器(ASBR)30使用用于到达由互联网服务提供商网络7通知的地址前缀的网络层能到达性信息,来更新其相应的路由表。同样,使用用于到达用户装置18的L3路由信息而不需了解用户的L2网络地址,由CDN 8提供的并且发送给用户装置18的基于数据包的内容流过互联网骨干网12,进而到达互联网服务提供商网络7,用于通过城域传送网24和接入网络27传送给单独的用户装置18。虽然未示出,但是,互联网服务提供商网络7可以包括其他装置以用于提供其他服务,例如,安全服务、负荷平衡、记账、深度数据包检测(DPI)以及用于穿过互联网服务提供商网络7的流量的其他服务。
通常,网络***2内的网络通信量(例如,在CDN 8与用户装置18之间的数据包流量)可以使用多个不同的物理路径而穿过网络***2的物理网络。例如,“数据包流量”可以由数据包的报头内使用的值限定,例如,网络“五元组”,即,用于通过物理网络路由数据包的源IP地址、目的地IP地址、源端口以及目的地端口、以及通信协议。例如,协议规定通信协议,例如,传输控制协议(TCP)或用户数据报协议(UDP),并且源端口和目的地端口表示连接的源和目的地端口。与特定的流量入口匹配的一个或多个数据包数据单元(PDU)的组表示流量。可以使用PDU的任何参数,在广义上将流量分类,例如,源和目的地数据链路(例如,MAC)和网络(例如,IP)地址、虚拟局域网(VLAN)标签、传输层信息、多协议标签交换(MPLS)或通用MPLS(MPLS)标签、以及接收流量的网络装置的进入端口。例如,流量可以是在传输控制协议(TCP)连接中传输的所有PDU、由特定的MAC地址或IP地址发起的所有PDU、具有相同的VLAN标签的所有PDU或者在相同的交换机端口上接收的所有PDU。
在一些实例中,网络***2可以包括中央分析***40,其连接至基于网络拓扑在整个网络***2上分层分布的多个分析容器38(A-POD 38)。每个A-POD 38耦接至网络装置,该装置基于分层分布接收数据包流量,生成通信流数据,并且将通信流数据传输给一个或多个父分析容器38或中央分析***40。A-POD 38可以是专用计算机或专门装置、网络路由器或可以用于流量分析的其他网络装置的一部分或者包括这些,包括但不限于网关、交换机、集线器、服务器、工作站等。
术语“数据包”在本文中用于总体上描述在符合基于数据包的通信协议的网络装置之间通信的数据的单元。本公开的原理容易适用于实现各种协议中的任一个协议的***,例如,TCP、UDP、ATM、帧中继等。因此,“数据包”用于包括任何这种数据单元,并且可以与术语“单元”或者在这种协议中用于描述在网络内的资源之间通信的数据单元的其他相似的术语进行互换。
短语“通信流数据”在本文中用于描述包括收集的通信流数据或聚集的通信流数据的数据。作为一个实例,收集的通信流数据可以对应于根据流量分析工具生成的“cflowd”数据包,例如,由思科***创建的NetFlowTM。作为另一个实例,聚集的通信流数据可以对应于从根据流量分析工具生成的cflowd数据包的集合中生成的通信流信息,例如,由思科***创建的NetFlowTM。如在本文中所述,可以输出这些或其他通信流数据,以通过分层分布的方式传输。通过这种方式,即使一部分A-POD 38同时将通信流数据发送给中央分析***40,可以通过减少的带宽以及最小的通信流数据损失,将通信流数据传输给中央分析***40。
A-POD 38可以连接至针对单独网络装置的通信量的流量统计进行累积的一个或多个收集器(在图4示出)。在一些实例中,一个或多个收集器可以是网络装置的一部分,例如,网关21、BNG 23、N-PE 30以及A-PE36的一部分。更具体而言,每个A-POD 38可以连接至一个或多个收集器,所述收集器接收或者以其他方式获取从一个或多个链路到单独网络装置的数据包,并且计算表示通过一个或多个链路的数据包流量的流量统计。在一个或多个收集器接收数据包时,A-POD 38可以接收通信流数据,一个或多个收集器的通信流量模块可以使所接收的数据包与相应的数据包流相关联,并且更新数据包流量的统计。例如,一个或多个收集器的通信流量模块可以保持用于每个数据包流量的数据包计数、字节字数、源IP地址、目的地IP地址、下一跳IP地址、输入接口信息、输出接口信息、发送的总八位字节、流开始时间、流结束时间、源和目的地端口号、TCP标记、IP服务类型、起源AS、源地址前缀屏蔽位、目的地地址前缀屏蔽位等。
收集器可以提供记账能力,用于保持关于一个或多个收集器接收的所有数据包的精确流量统计。例如,收集器的通信流量模块可以监控和生成高通信量速率(甚至互联网的核心通信量速率)的统计,包括不限于OC-3、OC-12、OC-48、OC-192以及更高或更低的速率。在一些实例中,正在监控的特定的数据包流量可以至少由源和/或目的地网络地址限定。此外,在数据包内的其他路由信息可以容易用于限定保持流量统计所针对的数据包流量,例如,MPLS标签、VPN标签、服务类别(CoS)信息等。通过这种方式,针对特别的(particularized)数据包流量的统计可以保持为有效通信量分析所需要的粒度等级,包括通信流数据的聚集。
A-POD 38可以从一个或多个收集器的原始存储器接收所收集的通信流数据和/或聚集的通信流数据的输出。所收集的通信流数据具体可以是五元组和/或每个流量的统计数据,例如,在一些非限制性实例中,多个数据包、多个字节、获取流量的第一数据包的时间、获取流量的最近数据包的时间、输入接口、输出接口、源/目的地网络掩码、源/目的地自主***(AS)号等。在一些实例中,聚集的通信流数据或通信流量信息可以包括所收集的通信流数据的一部分或者所收集的通信流数据的全部。在一些实例中,A-POD 38可以从一个或多个收集器中接收通信流数据,并且在数据库或其他合适的数据结构内储存通信流数据。此外,分析容器38可以分析所接收的通信流数据,以识别任何可疑的数据包流量。例如,A-POD 38可以识别由拒绝服务(DOS)攻击和其他网络安全违规引起的数据包流量。通过这种方式,分析通过网络2的通信流量可以提高网络可靠性,并且用于降低安全漏洞或其他网络活动的可能性。此外,分析容器38可以将通信流数据提供给父分析节点38或中央分析***40,并且中央分析***40可以使用通信流数据来提高网络性能。
操作中央分析***40的***管理员可以向中央分析***40提供查询。中央分析***40可以基于查询以及拓扑管理器模块将查询传送给一些或所有A-POD 38,如下面进一步详细所述。例如,***管理员可以提供关于在特定的地理区域内的任何可疑的数据包流量的查询,并且中央分析***40可以将查询传送给位于特定的地理区域内的一些或所有分析容器,其由路由数据库内的拓扑管理器模块管理。通过这种方式,中央分析***40可以确定相关A-POD 38,并且可以选择性限定数据包流量以及为分析和聚集拦截的规定流量内的数据包。
此外或者可替换地,可以在每个A-POD 38上限定单独网络装置的所有数据包流量或单独网络装置的数据包流量的限定子集,而无需中央分析***40的管理指导。在一些实例中,可以监控每个数据包的通信流量。可替换地,通过选择性取样一个或多个数据包流量,或者通过取样仅仅一段时间内给定的数据包流量,可以监控传输的数据包的子集。
如在本文中所述,A-POD 38可以被配置成基于A-POD的分布层级,将通信流数据(例如,收集的通信流数据和/或聚集的通信流数据)传输给中央分析***40,A-POD的分布层级可以基于网络拓扑。换言之,每个A-POD 38可以基于分布层级,将通信流数据传送给父分析容器38或中央分析***40中的一个。通过这种方式,A-POD 38可以避免将由各个A-POD38计算的所有通信流数据输出给中央分析***40,这可以使中央分析***40超负荷或负担重。反而,在一些实例中,分析容器38可以自动或者响应于查询将收集的通信流数据和/或聚集的通信流数据输出给分层相关的分析容器38(例如,父分析容器),其可以进一步将接收的通信流数据和储存的通信流数据聚集一起。中央分析***40能够基于网络拓扑和/或流量或路由信息,将查询发送给确定的A-POD 38(例如,父分析容器),并且任何给定的父分析容器能够将查询发送给在容器层级内的其子分析容器中的一个或多个,以获得查询结果,然后,聚集这种结果,下面进一步详细描述。给定的分析容器38可以将收集的通信流数据和/或聚集的通信流数据输出给中央分析***40,这可以自动或者响应于来自中央分析***40的查询,进一步聚集接收的通信流数据和来自其他A-POD 38的通信流数据。
因此,可以使从A-POD 38到中央分析***40的通信流数据的传输更瘦而鲁棒,从而减小带宽和数据损失。为此,在确保传输的通信流数据将由中央分析***40接收时,基于A-POD 38的分布层级的分布式分析可以非常有用,而不会使输入缓冲器或中央分析***40的其他资源超负荷。
图1B是示出根据本公开的技术的实例企业计算机网络***104的方框图。网络104包括耦接至公共网络106(例如,互联网)的专用企业计算网络105。公共网络106可以包括例如一个或多个客户端计算装置(例如,在图1A中描述的用户装置18)。防火墙109保护专用企业网络105,尤其保护内部计算节点108A–108N(计算节点108)。计算节点108表示在企业网络105内的任何专用计算装置,例如,工作站、膝上型电脑、文件服务器、打印服务器、数据库服务器、网络服务器、电子邮件服务器、数据库、打印机、个人数字助理(PDA)、智能电话以及其他装置。安全管理装置118可以管理企业网络105的一个或多个网络安全装置,例如,入侵检测***(IDP)110、防火墙109、IDP 114、或者一个或多个计算节点108。
在图1B的实例中,企业网络105包括中央分析***140和多个A-POD 138,在一些实例中,这可以对应于图1A中描述的中央分析***40和A-POD 38。A-POD 138可以连接至不同的网络装置并且在整个企业网络105上分层分布。在图1B的实例中,不同的网络装置可以包括防火墙109、IDP 110、隧道端点119、节点108A以及IDP 114,并且均与单独的A-POD 138连接。
A-POD 138可以从连接的网络装置(例如,IDP 110)内的一个或多个收集器的原始存储器中接收源自一个或多个收集器的所收集的通信流数据和/或聚集的通信流数据的输出。所收集的通信流数据可以是通过网络装置的一个或多个数据包流量的分析。聚集的通信流数据可以是所收集的通信流数据的汇总或特征。
例如,IDP 110的一个或多个收集器可以监控在防火墙109与内部计算节点108之间流动的通信量。尤其地,IDP 110监控数据包流量的数据包,其中,除了正常数据包以外,数据包还封装了已封装的数据包流的子数据包。IDP 110试图确定特定的网络通信是否表示网络攻击。网络通信可以是标准数据包或封装的子数据包。IDP 110可以首先试图识别与网络通信相关联的应用。IDP 110还可以确定网络通信是否表示多层应用程序。
IDP 110还可以对与应用程序和协议特有的异常检测匹配的模式进行结合,以识别复杂的攻击行为。在一个实例中,IDP 110允许***管理员规定攻击定义。***管理员可以规定复合攻击定义。
攻击定义可以规定例如文本和非文本(例如,二进制)模式和协议异常的任何组合,以限定复杂的攻击签名。而且,IDP 110可以使特定签名与某些应用程序的协议相关联。对于IDP 110拦截的给定的通信会话,IDP试图识别会话的数据包流的应用类型和下层协议,以便选择一个或多个攻击签名应用于数据包流中。
通过这种方式,连接至IDP 110的A-POD 138可以从IDP 110的原始存储器中接收防火墙109与内部计算节点108之间的通信流数据。例如,A-POD 138可以接收所收集的通信流数据,这可以包括每个流的五元组和/或统计数据,例如,多个数据包、多个字节、获取流的第一数据包的时间、获取流的最近数据包的时间、输入接口、输出接口、源/目的地网络掩码、源/目的地自主***(AS)号等。在另一个实例中,A-POD 38可以接收聚集的通信流数据,这可以包括与网络通信相关联的识别的应用程序以及网络通信是否表示多层应用。
在数据包到达隧道端点119之前,IDP 110还可以检查数据包。IDP 110可以识别封装在特定的外部数据包内的恶意网络会话的子数据包。IDP 110可以通过从外部数据包中去除这种子数据包,而响应于这种子数据包的检测。即,IDP 110可以重构封装所有原始数据但被IDP 110确定为属于恶意网络会话的子数据包除外的外部数据包。IDP 110向隧道端点119转发未检测到攻击的数据包以及重构的数据包。
通过这种方式,连接至IDP 110的A-POD 138可以从IDP 110的原始存储器中接收基于恶意网络会话的通信流数据。例如,A-POD 138可以接收所收集的通信流数据,这可以包括具有恶意网络会话的流的五元组和/或统计数据,例如,多个数据包、多个字节、识别恶意网络会话的子数据包的时间、获取流的最近数据包的时间等。在另一个实例中,A-POD 38可以接收聚集的通信流数据,这可以包括具有恶意网络会话的子数据包的流的标识。
操作中央分析***140的***管理员可以向中央分析***140提供查询。中央分析***140可以基于查询以及拓扑管理器模块将查询传送给一些或所有A-POD 138,如在图2更详细所述。例如,***管理员可以提供关于在特定的地理区域内的任何可疑的数据包流的查询,并且中央分析***140可以将查询传送给位于特定的地理区域内的一些或所有分析容器,其由路由数据库内的拓扑管理器模块管理。通过这种方式,中央分析***140可以确定相关分析POD 138,并且可以选择性限定数据包流以及给定流量内为了分析和聚集拦截的数据包。通过这种方式,在一些实例中,***管理员可以接收基于聚集的通信流数据并且由中央分析***140生成的响应,该响应表示IDP 110识别出具有恶意网络会话的子数据包的特定流。此外,在一些实例中,***管理员可以接收基于IDP的收集的通信流数据的额外信息,如上所述。
此外或者可替换地,可以在每个A-POD 138上定义单独网络装置的所有数据包流或单独网络装置的数据包流的限定子集,而无需中央分析***140的管理指导。在一些实例中,可以监控每个数据包的通信流。可替换地,通过选择性取样一个或多个数据包流,或者通过仅仅在一段时间内取样给定的数据包流,可以监控传输的数据包的子集。
如在本文中所述,A-POD 138可以被配置成将通信流数据(例如,收集的通信流数据和/或聚集的通信流数据)传输给分布层级中的中央分析***140。换言之,每个A-POD138可以基于分布层级,将通信流数据传送给父分析容器138或中央分析***140中的一个。通过这种方式,A-POD 138避免将由各个A-POD 138计算的所有通信流数据输出给中央分析***140,这会使中央分析***140超负荷或负荷加重。反而,在一些实例中,A-POD 138可以将收集的通信流数据和/或聚集的通信流数据输出给分层父分析容器,这可以进一步将接收的通信流数据和储存的通信流数据聚集一起。A-POD 138可以将收集的通信流数据和/或聚集的通信流数据输出给中央分析***40,这可以自动或者响应于中央分析***140的查询进一步聚集接收的通信流数据和源自其他A-POD 138的通信流数据。
因此,可以使从A-POD 138到中央分析***140的通信流数据的传输更瘦而鲁棒,从而减小带宽和数据损失。为此,在确保传输的通信流数据将由中央分析***140接收方面,基于A-POD 138的分布层级的分布式分析可以非常有用,而不会使输入缓冲器或中央分析***140的其他资源超负荷。
在一些实例中,代替提供查询,操作中央分析***140的***管理员可以接收来自中央分析***140的自动响应。例如,连接至IDP 110的A-POD 138可以被配置成将通信流数据自动传输给中央分析***140。在该实例中,中央分析***140还可以被配置成基于从连接至IDP 110的A-POD 138接收的通信流数据,将响应自动提供给***管理员。通过这种方式,可以连续通知***管理员通过IPD 110的数据包流的当前状态。
在其他实例中,代替提供查询或自动响应,操作中央分析***140的***管理员可以接收来自中央分析***140的触发响应。例如,连接至IDP 110的A-POD 138可以被配置成在通信流数据包括关于恶意网络会话的子数据包的信息时,将通信流数据传输给中央分析***140。在该实例中,中央分析***140还可以被配置成在所接收的通信流数据包括关于恶意网络会话的子数据包的信息时,将响应提供给***管理员。通过这种方式,可以仅仅将恶意网络会话的识别的子数据包通知给***管理员。
为了说明的目的,以上描述了在***管理员、中央分析***140以及连接至IDP110的A-POD 138之间的实例交互。然而,根据每个网络装置的类型和通过不同的网络装置的数据包流的特征,在***管理员、中央分析***140以及连接至不同的网络装置的任何A-POD 138之间可以发生相似和不同的交互。
图2是示出根据本公开的技术的分布式分析***50的进一步细节的方框图。在图2的实例中,分布式分析***50包括连接至中央分析***40的多个A-POD 38。中央分析***40包括基于角色的访问控制模块202、认证模块204、授权模块206、路由数据库208、拓扑管理器模块210、拓扑数据库207、查询处理器212、查询分配器和聚合器模块214、应用(APP)数据库216以及分析应用218。在本文中描述的任何模块可以包括或者储存在存储器内,例如,随机存取存储器(RAM)、只读存储器(ROM)、可编程只读存储器(PROM)、可擦可编程只读存储器(EPROM)、电可擦可编程只读存储器(EEPROM)、闪速存储器,和/或可以包括用于促使一个或多个处理器执行归因于其的动作的可执行的指令。
此外,在本文中描述的任何模块可以还包括一个或多个处理器,例如,一个或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或任何其他等效的集成或离散逻辑电路以及这种元件的任何组合。
基于角色的访问控制模块202允许分布式分析***50的用户作为一个或多个组的成员。在一些实例中,基于角色的访问控制模块202可以包括策略引擎,其认证和授权用户组从中央分析***40中执行查询、访问数据和/或接收响应。例如,基于角色的访问控制模块202的策略引擎可以包括认证模块204和授权模块206。基于角色的访问控制模块202还可以将查询和数据分成几类。在该实例中,基于角色的访问控制模块202可以将特定的访问等级分配给特定的组,以允许仅仅特定组的成员生成对应于特定的访问等级的类别中归类的查询。同样,在另一个实例中,认证模块204和授权模块206可以仅仅允许特定组的成员根据其分配的访问等级访问数据中央分析***40,和/或执行某些数据类型的特定类型的查询。
拓扑数据库207可以被配置成储存分布式分析***50的总体拓扑。路由数据库208可以是数据库,其被配置成储存分布式分析***50的路由信息和/或流数据。
拓扑管理器模块210可以保持拓扑数据库207和路由数据库208。例如,在拓扑管理器模块210从一个或多个A-POD 38接收登记和/或初始流数据时,拓扑管理器模块210可以接收在多个A-POD 38之间的分层关系的指示。在某些情况下,拓扑管理器模块210还可以基于来自***管理员的用户输入更新拓扑数据库207,其提供与包括A-POD 38的分布式***的拓扑相关联的拓扑信息。
路由数据库208可以包括路由信息和/或流数据。在某些情况下,路由数据库208可以基于来自一个或多个A-POD 38的登记和/或初始流数据而更新,这可以包括与关联于流数据的五元组数据结构相关联的信息,如前所述。在某些情况下,还可以处理通过***管理员的用户输入,以更新路由数据库208。在各种实例中,可以根据一个或多个基于时间的标准,组织和/或过滤路由数据库208。例如,这种标准可以用于滤出或者识别与A-POD 38相关联的最近路由和/或流信息、在上周与A-POD相关联的路由和/或流信息等。
在接收分布式***中的新A-POD 38的指示时,拓扑管理器模块210可以控制拓扑数据库207以更新分布式分析***50的总体拓扑,并且可以控制路由数据库208以更新与新A-POD 38相关联的路由和/或流数据。在接收一个A-POD 38断开或者不再存在于分布式分析***50内的指示时,拓扑管理器模块210可以控制路由数据库208以更新分布式分析***50的总体拓扑,并且可以控制路由数据库208以去除与断开的A-POD 38相关联的路由和/或流数据。在一些实例中,拓扑管理器模块210可以从除了A-POD 38以外的来源中接收多个A-POD 38之间的分层关系的指示。例如,如上所述,拓扑管理器模块210可以从***管理员接收在多个A-POD 38之间的分层关系的指示。在另一个实例中,拓扑管理器模块210可以从由基于角色的访问控制模块202限定的组的成员中接收多个A-POD 38之间的分层关系的指示。
在一些实例中,拓扑管理器模块210可以将拓扑信息从拓扑数据库207中提供给一个或多个A-POD 38,使得在处理来自查询分配器和聚合器模块214的查询时,例如,为了确定一个或多个A-POD 38之间的分层关系,例如,父分析容器的一个或多个子分析容器,这些A-POD可以使用这种拓扑信息。在一些实例中,一个或多个A-POD 38可以单独配置有这种拓扑信息,例如,通过***管理员或其他用户。
查询处理器212可以处理来自***管理员(由基于角色的访问控制模块202限定的组的成员)的查询。在某些情况下,在执行来自分析应用218的请求和/或响应于该请求时,查询处理器212可以处理这种查询。在某些情况下,查询处理器212可以接收来自***管理员的查询。在接收查询时,查询处理器212被配置成通过与拓扑管理器模块210交互或者基于来自拓扑管理器模块210的输入,确定应接收查询的A-POD 38的相关子集。在一个实例中,查询处理器212还可以接收做出回应的A-POD 38的索引或列表,并且将A-POD 38的索引或列表提供给拓扑管理器模块210,从而允许拓扑管理器模块210更新拓扑数据库207和路由数据库208。在一些实例中,查询处理器212可以包括一个或多个处理器,例如,一个或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或任何其他等效的集成或离散逻辑电路以及这种元件的任何组合。
查询分配器和聚合器模块214可以用作中央分析***40与分层分布的A-POD 38之间的接口。换言之,查询分配器和聚合器模块214可以通信地耦接至一个或多个层级内的一个或多个等级的A-POD 38,如图2所示,并且还可以与应用数据库216相接。查询分配器和聚合器模块214可以接收来自查询处理器212的处理的查询,以及来自拓扑管理器模块210的总体拓扑以及路由和/或流数据,以基于A-POD 38的分层分布将查询分配给相关的A-POD38。例如,查询分配器和聚合器模块214可以基于包含在路由数据库208内的路由和/或流信息(例如,与特定服务和/或目的地或路线相接的分布式网络的一部分),识别与给定的查询相关的特定流,然后,可以进一步基于该路由和/或流信息,识别特定的A-POD 38以及包含在拓扑数据库207内的拓扑信息,该拓扑数据库提供与A-POD 38之间的分层关系相关联的信息。查询分配器和聚合器模块214可以将查询分配给识别的A-POD 38(例如,在A-POD的一个或多个层级中的最高等级上的父A-POD 38),并且必要时,这些识别的A-POD进一步可操作以提供响应数据和/或沿着A-POD的层级向下分配查询,并且将提供回给查询分配器和聚合器模块214的响应数据聚集。
在将查询分配给相关的A-POD 38之后,查询分配器和聚合器模块214可以从相关的A-POD 38中接收包括通信流数据的结果。在一些实例中,结果可以是从接收查询的每个A-POD 38中收集的通信流数据(例如,非聚集的通信流数据)。在其他实例中,结果可以是源自接收查询的每个A-POD 38的聚集的通信流数据(例如,汇总的通信流数据)。在其他实例中,结果可以是来自接收查询的A-POD 38的组合中的收集的和聚集的通信流数据的组合。
在一些实例中,查询分配器和聚合器模块214可以聚集从接收查询的A-POD 38中接收的结果,并且将聚集的结果提供给被配置成储存聚集结果的应用数据库216。在其他实例中,查询分配器和聚合器模块214可以对从自动生成结果的A-POD 38接收的结果进行聚集,并且将聚集的结果提供给被配置成储存聚集结果的应用数据库216。在其他实例中,查询分配器和聚合器模块214可以聚集从基于触发事件生成结果的A-POD 38接收的结果,并且将聚集的结果提供给被配置成储存聚集结果的应用数据库216。
分析应用218可以从应用数据库216中检索聚集的结果,以基于聚集的结果生成分布式分析***50的集中视图。在一些实例中,分析应用218还可以从***管理员或由基于角色的访问控制模块202限定的组的成员中接收初始查询,并且可以将查询提供给查询处理器212,该处理器触发上述处理。
由中央分析***40查询的通信流数据可以与分布式网络50中的相应数据流相关联。中央分析***40可以响应于查询,从A-POD 38中接收每个不同的相应数据流的至少一部分通信流数据。例如,如果具有两个不同的数据流,则查询可以请求与相应的第一和第二数据流相关联的总体通信流数据的第一和第二部分。中央分析***40可以响应于查询从A-POD 38中接收与这些相应的第一和第二数据流相关联的通信流数据的第一和第二部分。
如图2所示,A-POD 38连接至中央分析***40,以在分布式分析***50内形成分析容器的一个或多个层级。在图2的实例中示出两个这种层级,每个层级具有在层级内的最高等级(等级1)以及一个或多个子等级。在这些相应层级内的这两个等级1父A-POD 38中的每个分别可以具有N或M个等级的子A-POD 38,如图所示,其中,N和M是大于1的整数。在图2,位于规定层级的更低等级(例如,等级2)上的A-POD 38是位于规定层级的更高等级(例如,等级1)上的一个或多个相应A-POD 38的子A-POD 38。此外,如果适用的话,则任何规定的A-POD 38可以用作规定层级内的相应更低等级A-POD 38的父A-POD 38以及相应更高等级A-POD 38的子A-POD 38。因此,在某些情况下,特定的A-POD 38可以用作父A-POD和子A-POD。
通常,针对A-POD的多个不同的层级可以具有任何数量的等级1父A-POD 38,每个具有任何数量的子A-POD。通过这种方式,中央分析***40可以与可以在地理上并且分层分布的A-POD 38形成网络。
在一个或多个非限制性使用情况实例中,***管理员可以发现恶意网络会话,而需要使用或者不使用中央分析***40。然而,在发现恶意网络会话时,***管理员通常不能立即确定在网络(例如,网络***2)内的任何其他地方是否发生过相似的并且同等的恶意网络会话。使用分析应用218,***管理员能够基于前一个恶意网络会话的信息,将查询提供给查询处理器212。查询处理器212可以处理查询并且与拓扑管理器模块210相接,以确定可以具有相似的恶意网络会话的相关的A-POD 38。查询处理器212和/或拓扑管理器模块210可以访问拓扑数据库207和/或路由数据库208,以确定这些相关的A-POD 38(例如,A-POD的一个或多个层级布置的等级1上的一个或多个父A-POD)。
查询处理器212可以将处理的查询以及在某些情况下来自拓扑数据库207的拓扑信息一起提供给查询分配器和聚合器模块214。拓扑信息与分布式***的拓扑以及A-POD之间的分层关系相关联。在某些情况下,A-POD 38已经访问拓扑信息(例如,通过***管理员),并且在这些情况下,查询分配器和聚合器模块214不需要将拓扑信息提供给A-POD。
如前所述,查询分配器和聚合器模块214可以基于拓扑和路由和/或流信息,将查询分配给相关的A-POD 38。通过将结果的通信流数据提供回给查询分配器和聚合器214或者基于局部储存在相应的A-POD 38上的父A-POD,每个A-POD 38能够处理查询。然而,每个A-POD 38也能够将子查询向下递归分配给层级内的一个或多个子A-POD,从这些子A-POD中接收通信流数据的结果,并且将该数据以及任何本地储存的数据聚集以向上提供回给层级内的父A-POD或者查询分配器和聚合器模块214。
例如,相关的A-POD 38可以从父A-POD中或者从查询分配器和聚合器模块214中接收查询,并且以包括通信流数据(例如,收集的和/或聚集的通信流数据)的结果对一个父A-POD 38作出回应,或者如果A-POD 38是等级1A-POD 38,则直接对中央分析***40作出回应。查询分配器和聚合器模块214可以聚集响应于查询所接收的所有结果,并且将聚集的结果提供给应用数据库216。分析应用218可以基于储存在应用数据库216内的聚集的结果,生成集中的视图。通过这种方式,***管理员可以支持(leverage)恶意网络会话的发现,来确定在全球网络内的不同的网络装置中是否发生了相似的恶意网络会话。虽然描述了恶意网络会话,但是其他集中的视图可用,包括但不限于网络优化和可见性。
在一些实例中,父A-POD 38可以从中央分析***40中接收查询,并且将查询输出给多个子A-POD。例如,在图2的实例中,在层级的等级1的父A-POD 38可以将第一查询输出给在层级的等级2的第一子A-POD 38,并且还可以将第二查询输出给同样在层级的等级2的第二子A-POD 38。在某些情况下,这些第一和第二查询可以是由父A-POD 38接收的原始查询的子查询。
父A-POD 38可以从第一子A-POD 38中接收包括第一A-POD 38的流数据的第一查询的结果。父A-POD 38还可以从第二子A-POD 38中接收包括源自第二子A-POD 38的流数据的第二查询的结果。然后,父A-POD 38可以聚集第一查询的结果和第二查询的结果,并且给中央分析***40发送聚集的结果。
在一些实例中,A-POD 38可以可选地处理查询(例如,触发事件),这些查询可以产生数据的汇总和集合。通过这种方式,然后,可以将数据的汇总和集合发送给在规定的层级内的父A-POD 38。父A-POD 38可以聚集该数据和本地储存在父A-POD内的任何数据。数据聚集的这种处理可以在层级内的每个等级上重复。在一些实例中,分布式分析***50还可以被视为智能分布查询***。在这些实例中,分布式分析***50可以允许收集大规模数据(例如,基于Netflow、IPFIX以及Jvision的输出),以用于网络优化、可见性和安全性中。此外,在一些实例中,分布式分析***50可以用于几种不同类型的数据收集中,包括IoT、服务器日志分析、以及通常来自由WAN分离的网络装置的大量数据流。
图3是示出根据本公开的技术的分布式分析***内的A-POD 38的实例层级60的进一步细节的方框图。在图3的实例中,层级60可以包括参考图1A和图1B的实例描述的多个A-POD 38。每个A-POD 38包括策略模块250、分析模块252以及储存单元254。如图3所示,每个A-POD 38的储存单元254连接至网络装置,例如,N-PE 30或BNG 23,如图1所述。然而,每个A-POD 38的储存单元254可以连接至在图1A和图1B中描述的任何网络装置或任何其他合适的网络装置。
在本文中描述的任何模块250、252和/或储存单元254可以包括或者储存在存储器内,例如,随机存取存储器(RAM)、只读存储器(ROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、闪速存储器,和/或可以包括用于促使一个或多个处理器执行归因于其的动作的可执行的指令。
此外,在本文中描述的任何模块可以还包括一个或多个处理器,例如,一个或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或任何其他等效的集成或离散逻辑电路以及这种元件的任何组合。
储存单元254可以被配置成从单独网络装置接收和储存收集的或聚集的通信流数据。例如,在层级60内的一个子A-POD 38的储存单元254被配置成从BNG 23中接收和储存收集的通信流数据,如图1所述。分析模块252可以分析储存在储存单元254内的收集的通信流数据。例如,分析模块252可以聚集或者汇总储存在储存单元254内的收集的通信流数据,作为聚集的通信流数据。策略模块250可以基于策略模块250内限定的策略,输出储存在储存单元254内的收集的或聚集的通信流数据。在一些实例中,策略模块250可以具有自动化策略、查询策略以及触发策略。例如,策略模块250可以基于从层级60内的父A-POD 38或者中央分析***40中接收的查询,输出聚集的通信流数据。在一些实例中,父A-POD 38的策略模块250还可以确定是否将查询输出给其他子A-POD 38。
储存单元254可以被配置成从单独网络装置以及一个或多个子A-POD 38中接收和储存收集的或聚集的通信流数据。例如,在层级60内的最顶层父A-POD 38的储存单元254被配置成从N-PE 30中接收和储存收集的通信流数据以及从两个示出的子A-POD 38中接收和储存收集的和/或聚集的通信流数据。分析模块252可以分析储存在储存单元254内的通信量数据。例如,分析模块252可以聚集或者汇总储存在储存单元254内的通信流数据,其包括源自一个或多个子A-POD 38和单独网络装置的通信流数据,作为聚集的通信流数据。
如上所述,策略模块250可以基于在策略模块250内限定的策略,确定是否输出储存在储存单元254内的收集的或聚集的通信流数据。在一些实例中,策略模块250可以具有自动化输出策略、查询输出策略以及触发输出策略。例如,基于查询输出策略,策略模块250可以基于从父A-POD 38或者从中央分析***40中接收的查询,输出聚集的通信流数据。在一些实例中,策略模块250可以从父A-POD 38或者从中央分析***40中接收查询。在这些实例中,策略模块250还可以确定是否将查询输出给层级60内的任何相应子A-POD 38。在某些情况下,这些查询可以包括简单的聚集查询或更复杂的查询。
基于自动化输出策略,策略模块250可以根据基于策略的时间间隔,确定将收集的(例如,原始储存数据)或聚集的汇总数据发送给父A-POD 38或者中央分析***40的时间和/或频率。在自动或者响应于查询从一个或多个子A-POD中接收数据之后,任何特定的父A-POD 38可以聚集和储存这种数据(例如,在高速缓冲存储器内),用于处理从父A-POD 38或从中央分析***40中到达的最高等级查询。
在各种实例中,A-POD 38可以设置在一个或多个层级或者层级布置内,如图2至图3所示。在这些实例中,在这些一个或多个层级的每个中的最高等级A-POD 38可以称为父A-POD 38,并且在层级的相应更低等级内的A-POD 38可以相对于更高级父A-POD 38称为子A-POD 38。当然,任何规定的A-POD 38可以处于规定层级的中间等级,在这种情况下,这种A-POD 38可以是相对于其子代的父A-POD,但是也可以是相对于其父代的子A-POD。
在这些实例中,父A-POD 38可以收集、汇总或者以其他方式聚集流通信数据(包括从一个或多个其子代中获得的数据)以及父A-POD 38的任何本地收集的流数据。可以将A-POD 38分配给单独的网络装置,例如,由资源管理器,并且A-POD 38的层级可以基于包括单独网络装置的网络的拓扑。A-POD 38可以在地理上分散在网络内,并且可以用作一个或多个层级内的叶和/或最高等级节点。
作为一个非限制性实例,网络可以包括分散在整个校园(例如,大学校园)内的各种网络装置,并且数据中心还可以包括网络装置。在校园内的网络装置以及在数据中心的网络装置均可以耦接至相应的A-POD 38,其中,在数据中心的A-POD 38可以用作最高等级的父A-POD 38,并且耦接至校园网络装置的A-POD 38可以相对于最高等级A-POD 38用作子A-POD 38。子A-POD 38可以收集和汇总与其相应的网络装置相关联的流数据,并且最高等级父A-POD 38可以收集与其网络装置相关联的流数据。在某些情况下,在层级内的任何父A-POD 38还可以收集和聚集由其相应的子A-POD 38中的一个或多个自动提供的流数据。
在从中央分析***40中接收查询时(例如,如果中央分析***40连接至数据中心的网络装置),最高等级父A-POD 38可以将查询发送给在校园内的每个子A-POD 38,然后,这些子A-POD 38收集并且将聚集的汇总或结果数据提供回给最高等级父A-POD 38。这可以递归地进行,使得如果规定的子A-POD 38也是一个或多个其他子A-POD 38的父代,则子A-POD 38可以将查询向下发送给其子代,收集由其子代提供的聚集的数据,并且将聚集的数据传送给层级内的其父A-POD 38,直到其到达数据中心的最高等级父A-POD 38。通过这种方式,耦接至数据中心的最高等级父A-POD 38可以响应于规定的查询,通过子A-POD 38收集和聚集从层级的各种分支接收的通信量数据。
图4是示出根据本公开的技术的在分布式分析***内的A-POD与网络装置300之间的关系70的进一步细节的方框图。参考图3描述图4。在图4的实例中,关系70可以包括在A-POD 38与A-PE 36之间的关系,如在图1A所述。A-POD 38包括策略模块250、分析模块252以及储存单元254。如图4所示,A-POD 38的储存单元254连接至网络装置300,例如,A-PE 36,如图1所述。然而,A-POD 38的储存单元254可以连接至在图1A和图1B中描述的任何网络装置或任何其他合适的网络装置。网络装置300可以包括时效(aging,老化)策略模块302、收集器选择模块304、路由器306、收集器308A–308N(统称为“收集器308”)以及原始存储器310。
在本文中描述的任何模块、储存单元254、收集器308以及原始存储器310可以包括或者储存在存储器内,例如,随机存取存储器(RAM)、只读存储器(ROM)、可编程只读存储器(PROM)、可擦可编程只读存储器(EPROM)、电可擦可编程只读存储器(EEPROM)、闪速存储器,和/或可以包括用于促使一个或多个处理器执行归因于其的动作的可执行的指令。
此外,在本文中描述的任何模块还可以包括一个或多个处理器,例如,一个或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或任何其他等效的集成或离散逻辑电路以及这种元件的任何组合。
网络装置300可以包括完整功能的网络路由器,其接收数据包并且根据路由表将数据包转发给下一跳。可替换地,网络装置300可以包括另一个网络装置,例如,网关、交换机、集线器、工作站等。在某些情况下,网络装置300包括仅仅专用于分析通信流的计算机。
在图4的实施方式中,虽然在这方面不限制本公开,但是网络装置300配置有接口卡(IFC)324A-324B(IFC 324)。例如,IFC 324可以可移除地***容纳网络装置300的机箱内。使用IFC 324可以为网络装置300提供可扩展性,并且可以允许支持不同类型的网络接口。虽然在这方面不限制本公开,但是每个IFC 324可以包括用于通过通信链路321A和321B接收和传输信号的端口,例如,单向光学信号。
网络装置300通过IFC 324的输入端口接收输入数据包,并且收集器选择模块304可以控制路由器306以将输入数据包提供给一个或多个收集器308。收集器308可以基于接收的数据包生成(例如,收集)通信流数据,并且将通信流数据输出给原始存储器310。更具体而言,在接收输入数据包时,收集器选择模块304可以检索和读取称为“密钥(key)”的一个或多个数据块,该密钥定义与数据包相关联的数据包流。例如,该密钥可以通常包括数据包的报头,并且可以包含各种信息,包括例如数据包的源和目的地地址、MPLS标签、VPN标签、服务等级(CoS)信息等。收集器选择模块304可以基于密钥控制路由器306,并且可以将密钥转发给一个或多个收集器308,所述收集器计算和保持关于限定的数据包流的通信流数据。
收集器308基于接收的数据包生成通信流数据。具体地,使用密钥,收集器308可以使接收的数据包与相应的数据包流相关联,并且更新关于数据包流的统计。如前所述,在各种实例中,数据包流可以由数据包报头内使用的值限定,例如,网络“五元组”,即,用于通过物理网络路由数据包的源IP地址、目的地IP地址、源端口以及目的地端口、以及通信协议。收集器308可以为每个限定的数据包流保持以下中的一个或多个:精确的数据包计数、字节字数、源IP地址、目的地IP地址、下一跳IP地址、输入接口信息、输出接口信息、发送的总八位字节、流开始时间、流结束时间、源和目的地端口号、TCP标记、IP服务类型、父代AS、源地址前缀屏蔽位、目的地地址前缀屏蔽位等。此外,数据包内的其他路由信息可以用于限定保持流量统计所针对的数据包流,例如,MPLS标签、VPN标签、服务等级(CoS)信息等。通常,特定的数据包流的统计可以保持为有效流量分析所需要的粒度等级。
收集器308还可以进一步基于随着时间累积的通信流数据生成聚集的通信流数据。尤其地,在可以是固定的或动态的规定的时间段之后,时效(aging)策略模块302可以输出收集的或聚集的通信流数据,并且丢弃针对正在监控的数据包流的累积的通信流数据。在一些实例中,将通信流数据输出给A-POD的储存单元254,并且A-POD 38可以检查输出的通信流数据。
在某些实例中,收集器选择模块304和网络装置300的其他元件可以根据从计算机可读介质中获取的可执行指令操作。这种介质的实例包括随机存取存储器(RAM)、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦可编程只读存储器(EEPROM)、闪速存储器等。通过使用一个或多个处理器、离散硬件电路、固件、在可编程处理器上执行的软件或者任何以上的组合执行计算机可读介质的指令,可以执行网络装置300的功能。
在本文中描述的分布式分析***可以高度可扩展。在一些非限制性实例中,分布式***可以使用A-POD 38以在网络内记录所有收集器和数据源(例如,网络装置),然后,分布式***可以将网络装置发射的每个数据类型映射至收集器的特定实例,并且跟踪收集器每秒可以处理的记录(RPS)的数量以及分配收集器的原始存储器的容量。分布式***能够动态重新分配收集器并且增加相关联的储存节点。
在一些实例中,分布式***可以提供基于策略的可用性和地理冗余的能力。即,该***能够将所需要的尽可能多的收集器分配给特定网络装置(例如,网络装置300的收集器308)。在一些实例中,网络装置的单个收集器的故障可以造成故障转移到备用收集器,在这种情况下,可以在分布式***内分配新的备用收集器。在一些实例中,收集器的下层储存器可以高度可用,并且可以配置有***限定的复制因子。
在一些实例中,可以由资源管理器基于查询的计算复杂性以及可用于其的A-POD38的数量,动态分配A-POD 38。在一些实例中,分布式分析***可以被配置成将A-POD 38复制到地理上不同的位置,以用于灾难恢复的目的。可以基于在不同的部分之间分配的带宽确定所使用的复制模型(活动-活动或最终一致)。
在一些实例中,分布式分析***可以实现时效策略,该策略规定在一个或多个收集器内以其原始形式保持多长的数据,例如,收集器308。基于该策略,通过计算数据的汇总和/或集合,并且储存这些汇总和/或集合代替原始数据,数据可能老化。通过这种方式,时效策略可以造成大量节省数据储存容量。
图5是示出根据本公开的技术的包括分布式分析***的另一个实例网络350的方框图。在网络350中示出了在图5示出的分布式分析网络,以仅仅用于示出的目的,但是在某些实例中,可以同样在各种其他网络内实现分布式分析网络,例如,在图1A中示出的网络。
如图5所示,在一些实例中,网络350可以包括提供WAN的MPLS网络,其中,网络350包各种用户边缘(CE)路由器354,例如,标记为CE#1、CE#2、CE#3以及CE#4的CE路由器。网络350进一步包括各种提供商边缘(PE)路由器356,例如,标记为PE#1、PE#2、PE#3以及PE#4的PE路由器。每个CE 354耦接至相应的PE 356,例如,CE#1耦接至PE#1,CE#2耦接至PE#2,CE#3耦接至PE#3,并且CE#4耦接至PE#4。CE#1还耦接至中央分析***40。此外,每个PE 356还耦接至一个或多个提供商(P)路由器360的网络。在该实例中,CE 354和PE 356中的每个以及P路由器360中的每个可以包括网络装置,例如,在图4示出的网络装置300。
而且,各种A-POD 38可以耦接至CE 354和PE 356中的一个或多个。例如,在图5的实例中,A-POD 38耦接至PE#1,A-POD 38耦接至PE#2,A-POD 38耦接至PE#3,A-POD 38耦接至PE#4,并且A-POD 38耦接至CE#2。虽然在该实例中未示出,但是在一些实例中,A-POD 38还可以耦接至CE#1、CE#3和/或CE#4。而且,如图5所示,一个或多个A-POD 38还可以耦接至一个或多个P路由器360。
任何CE 354可以用作在客户端的数据源,并且PE 356可以在地理上分布在网络350上。作为一个非限制性使用情况实例,中央分析***40的***管理员或用户可以希望了解多少通信量发送给但是实际上未到达与CE#2相关联的目的地IP地址“ip1”(例如,对于连接至CE#2的装置)。由于CE 354可以由WAN与载波网络分开,并且在地理上分布PE 356,所以试图通过集中化流数据(例如,IPFIX数据)以用于分析从而确定该通信量,在网络350内是昂贵的。
根据某些技术,为了在图5的实例的目的,可以假设CE 354是时钟同步的,例如,通过使用点对点隧道协议(PPTP)。此外,规定的CE 354的每个输出数据包可以包括时间戳数据。CE 354和PE 356能够使用一个或多个收集器(例如,收集器308)来根据五元组结构(即,用于通过物理网络路由数据包的源IP地址、目的地IP地址、源端口以及目的地端口、以及通信协议)收集流数据(例如,IPFIX数据)。
在图5,CE#1、CE#2、CE#3、CE#4、PE#1、PE#2、PE#3以及PE#4中的每个以及在某些情况下的P路由器360可以收集这种数据,其中,流数据可以由耦接至每个相应路由器的A-POD38根据柱状数据存储或者在该实例中称为“flow_records_raw”的数据结构,来储存(例如,在储存单元254内),在某些情况下,该数据结构还包括描绘相应的A-POD 38获取流数据时的时间段的字段。例如,该字段可以表示对于规定的流,接收流数据的最后时间,并且还可以表示对于该流发送流数据的最后时间。在“flow_records_raw”中,对于每个流,相应流数据的源IP地址、源端口、目的地IP地址以及目的地端口可以分别具有字段名称“src_ip”、“src_port”、“dest_ip”以及“dest_port”。
对于中央分析***40的用户希望了解多少通信量发送了但是实际上未到达与CE#2相关联的目的地IP地址“ip1”(例如,对于连接至CE#2的装置)的该非限制性实例,中央分析***40可以(例如,基于用户输入)构造查询(例如,结构化查询语言(SQL)查询),该查询包括SELECT语句,用于从“flow_records_raw”中选择源IP地址、源端口、目的地IP地址以及目的地端口,其中,目的地IP地址是“ip1”(与CE#2相关联)。SELECT语句可以为如下:“SELECT src_ip、src_port、dest_ip、dest_port FROM flow_records_raw WHERE(dest_ip=‘ip1’)”。如此,查询可以基于五元组信息。在某些情况下,查询还可以规定基于时间的标准。例如,查询可以仅仅请求最近收集的流数据(例如,由A-POD 38仅仅在特定的时间点或者之后接收的流数据)。
然后,中央分析***40可以经由网络350通过查询处理器212和查询分配器和聚合器模块214将该请求发送给在图5中示出的各种A-POD 38。例如,中央分析***40可以将该查询发送给耦接至PE#1的A-POD 38、耦接至PE#2的A-POD 38、耦接至PE#3的A-POD 38、耦接至PE#4的A-POD 38以及耦接至CE#2的A-POD 38,CE#2可以是与目的地IP地址“ip1”相关联的CE。
这些A-POD 38中的每个能够执行关于“flow_records_raw”流数据的查询,其中“flow_records_raw”流数据由相应的A-POD 38处理和/或储存。这些A-POD 38中的每个被配置成将相应的查询结果返回给耦接至CE#1的中央分析***40的查询分配器和聚合器模块214。在很多情况下,这些结果的大小相比于实际的数据包数据或者甚至储存在每个A-POD 38内的“flow_records_raw”表格中的原始流表格信息,会相当地小。
在接收结果时,查询分配器和聚合器模块214和/或分析应用218可以在应用数据库216内储存部分或所有结果数据。此外,在该实例中,查询分配器和聚合器模块214和/或分析应用218可以将来自PE#1、PE#2、PE#3以及PE#4的数据集中的每个添加,并且从其中减去从耦接至CE#2的A-POD 38中收集的流数据,并且还可以在应用数据库216内储存所计算的结果。响应于该查询,这种减法的结果是并不指向CE#2的通信量,并且该结果可以表示在网络350内的数据损失。
在各种实例中,连接至PE#1、PE#2、PE#3、PE#4以及CE#2的A-POD 38可以均用作从中央分析***中接收查询的最高等级A-POD 38。在某些情况下,基于网络拓扑信息或特征,这些A-POD 38中的任一个还可以用作在一个或多个相应层级内的一个或多个子A-POD 38的父A-POD 38,例如,在图2至图3中示出的层级。父A-POD 38可以自动或者响应于查询(例如,源自中央分析***40的查询)收集、汇总或者聚集通信流数据(包括从一个或多个其子代中获得的数据)以及父A-POD 38的任何本地收集的流数据。如果A-POD 38是子A-POD,则可以从层级内的其父A-POD 38中接收查询,而非直接从中央分析***40中接收查询,并且可以将汇总流数据返回提供给层级内的其父A-POD 38。
在一些实例中,在各种A-POD 38连接至P路由器360(例如,针对相应的一个P路由器360的一个A-POD 38)的情况下,这些A-POD 38可以根据一个或多个层级布置,相对于连接至一个或多个PE 356的一个或多个相应的父A-POD用作一个或多个子A-POD。在这些实例中,P路由器360的子A-POD 38可以自动或者响应于查询,将聚集的流数据提供给相应的父A-POD 38,然后,父A-POD 38可以响应于查询将聚集的流数据返回提供给中央分析***40,如在以上处理中描述的。
图6是示出根据本公开的技术的分布式分析***的实例操作400的流程图。仅仅为了说明的目的,将参考图2来描述图6。
中央分析***40可以接收针对与网络装置的分布式网络(例如,分布式网络50)相关联的通信流数据的查询(402)。中央分析***40可以将所述查询输出给多个A-POD 38(404)。每个A-POD 38可以耦接至分布式网络内的网络装置的储存单元。中央分析***40可以响应于输出查询,从A-POD 38中接收查询结果。所述结果可以至少包括基于所述查询来自A-POD 38的通信流数据。
此外,在一些实例中,中央分析***40可以确定接收查询的A-POD 38的子集,其中,将所述查询输出给A-POD 38包括:将所述查询输出给A-POD 38的子集。例如,中央分析***40可以通过基于网络装置的分布式网络的拓扑确定拓扑信息,来确定接收查询的A-POD 38的子集,并且可以确定至少基于所述拓扑信息接收查询的A-POD 38的子集。中央分析***40还可以从A-POD 38的子集中接收结果,其中,所述结果至少包括基于所述查询来自A-POD 38的子集的通信流数据。
在一些实例中,确定接收查询的A-POD 38的子集可以包括:由中央分析***40基于网络装置的分布式网络的拓扑确定拓扑信息;并且由中央分析***40确定至少基于所述拓扑信息接收查询的A-POD 38的子集。确定接收查询的A-POD 38的子集可以进一步包括:由中央分析***40确定与网络装置的分布式网络相关联的路由信息(例如,包含在路由数据库208内的信息);并且由中央分析***40确定进一步基于所述路由信息接收查询的A-POD 38的子集。在将查询输出给A-POD 38的子集之前,中央分析***40可以从A-POD 38的子集中的一个或多个A-POD接收与路由信息相关联的流数据。
在一些实例中,A-POD 38的子集基于所述分布式网络的拓扑设置在一个或多个分层布置(例如,在图2和图3中示出的布置)中,并且A-POD 38的子集包括处于所述一个或多个分层布置中的至少一个父分析容器,所述至少一个父分析容器与处于所述一个或多个分层布置中的一个或多个子A-POD 38相关联。在某些情况下,中央分析***40可以将拓扑信息发送给A-POD 38的子集。中央分析***40还可以聚集结果,以生成对查询的聚集响应。
在一些实例中,接收针对通信流数据的查询包括:由中央分析***40接收针对与分布式网络中的多个数据流相关联的通信流数据的查询,并且接收查询结果包括:由中央分析***40从A-POD 38中接收多个数据流中的每个的通信流数据的至少一部分。所述查询可以包括针对与所述分布式网络内的多个数据流的相应第一和第二数据流相关联的通信流数据的第一和第二部分的查询,并且接收与多个数据流中的每个相关联的通信流数据的至少一部分可以包括:由中央分析***40从A-POD 38中接收通信流数据的与相应第一和第二数据流相关联的第一和第二部分。
与第一数据流相关联的通信流数据的第一部分可以包括与所述第一数据流相关联的多个数据包、与所述第一数据流相关联的多个字节、获取所述第一数据流的第一数据包的时间或者获取所述第一数据流的最近数据包的时间中的一个或多个,并且与第二数据流相关联的通信流数据的第二部分包括与所述第二数据流相关联的多个数据包、与所述第二数据流相关联的多个字节、获取所述第二数据流的第一数据包的时间或者获取所述第二数据流的最近数据包的时间中的一个或多个。
在一些实例中,接收所述查询的结果可以包括:由中央分析***40从A-POD 38的第一A-POD中接收所述通信流数据的第一部分;并且由中央分析***40从A-POD 38的第二A-POD中接收所述通信流数据的第二部分。中央分析***40可以聚集所述通信流数据的第一和第二部分。
在一些实例中,在将查询输出给A-POD 38之前,中央分析***40可以根据基于角色的访问控制机构确定将查询输出给A-POD 38,其中,基于角色的访问控制机构识别与查询相关联的用户的角色。来自A-POD 38的结果可以至少包括来自耦接至A-POD 38的至少一个网络装置的一个或多个收集器的通信流数据和来自一个或多个收集器的数据的汇总。
在一些实例中,由中央分析***40接收的查询指定与所述通信流数据相关联的源互联网协议(IP)地址、源端口、目的地IP地址以及目的地端口中的至少一个。该查询还可以指定与所述通信流数据相关联的基于时间的标准。
图7是示出根据本公开的技术的分布式分析***的另一个实例操作的流程图。仅仅为了说明的目的,参考图2来描述图7。
特定的A-POD 38可以从中央分析***40中接收针对通信流数据的查询(502)。该A-POD 38包含在A-POD的分层布置内,每个A-POD耦接至网络装置的分布式网络50内的网络装置的储存单元,例如,在图2示出的一个分层布置(例如,在等级S 1-N中的A-POD的分层布置)。接收查询的A-POD可以是在该布置的等级1上的父A-POD 38。该分层布置基于分布式网络50的拓扑。
在该实例中,父A-POD 38将查询输出给与父A-POD 38相关联的一个或多个子A-POD 38(504),例如,在分层布置中的等级2上的一个或多个子A-POD 38。一个或多个子A-POD 38是分层布置中的父A-POD 38的子代。
响应于输出查询,父A-POD 38从一个或多个子A-POD 38中接收查询结果(506)。所述结果至少包括来自一个或多个子A-POD 38的流数据。然后,父A-POD 38能够将查询结果输出给中央分析***40(508)。
在一些实例中,将查询输出给一个或多个子A-POD 38包括:由父A-POD 38识别与分层布置中的父A-POD 38相关联的子A-POD 38;并且通过父A-POD 38容器将查询输出给子A-POD 38,其中,接收所述查询结果可以包括:由父A-POD 38从子A-POD 38中接收查询结果,所述结果至少包括来自子A-POD 38的流数据。将查询输出给子A-POD 38可以包括:由父A-POD 38将第一查询输出给子A-POD 38的第一子A-POD 38;并且由父A-POD 38将第二查询输出给子A-POD 38的第二子A-POD 38。接收所述查询结果可以包括:由父A-POD 38从第一子A-POD 38中接收第一查询结果,所述结果包括来自第一子A-POD 38的流数据;并且由父A-POD 38从第二子A-POD 38中接收第二查询结果,所述结果包括来自第二子A-POD 38的流数据。输出查询结果包括:由父A-POD 38聚集第一查询结果和第二查询结果;并且由父A-POD 38向中央分析***40发送聚集的结果。
在一些实例中,父A-POD 38可以基于查询确定与父A-POD 38相关联的通信流数据。在这些实例中,输出查询结果可以包括:由父A-POD 38聚集从一个或多个子A-POD 38中接收的结果和与父A-POD 38相关联的通信流数据;并且由父A-POD 38将聚集的结果输出给中央分析***40。
在一些实例中,与父A-POD 38相关联的通信流数据包括来自耦接至父A-POD 38的网络装置的一个或多个收集器的数据或来自网络装置的一个或多个收集器的数据的汇总中的至少一个。此外,在某些情况下,父A-POD 38可以从中央分析***40中接收与分布式网络的拓扑相关联的拓扑信息,并且基于拓扑信息,确定A-POD 38的分层布置。
此外,在本公开的各种其他实例中,一种方法包括:由A-POD 38生成与地理分布式网络相关联的通信流数据,其中,A-POD 38耦接至地理分布式网络内的网络装置的储存单元;并且由A-POD 38将包括生成的通信流数据的结果自动输出给A-POD 38的一个父A-POD38或中央分析***40,其中,父A-POD 38是A-POD 38的层级内的A-POD 38的来源。A-POD 38从一个或多个子A-POD 38中接收至少一部分结果。将结果自动输出给一个父A-POD 38或中央分析***40可以包括:聚集来自A-POD 38的结果的至少第一部分和来自一个或多个子A-POD 38的结果的至少第二部分,以生成聚集的结果;并且将聚集的结果自动输出给一个父A-POD 38或中央分析***40。在某些情况下,结果包括来自网络装置的一个或多个收集器的数据或来自网络装置的一个或多个收集器的数据的汇总中的至少一个。
而且,在本公开的各种其他实例中,一种方法包括:由A-POD 38触发与地理分布式网络相关联的通信流数据的事件,其中,A-POD 38耦接至地理分布式网络内的网络装置的储存单元;响应于所述事件,由A-POD38将事件的结果输出给A-POD 38的一个父A-POD 38或中央分析***40,其中,父A-POD 38是A-POD 38的层级内的A-POD 38的父代。A-POD 38可将事件传输给一个或多个子A-POD 38,其中,所述一个或多个子A-POD 38是A-POD 38的层级内的A-POD 38的子代,并且A-POD 38可以基于该事件,从所述一个或多个子A-POD 38中接收至少一部分结果。将事件的结果输出给一个父A-POD 38或中央分析***40可以包括:聚集来自A-POD 38的结果的至少第一部分和来自一个或多个子A-POD 38的结果的至少第二部分,以生成关于事件的聚集的结果;并且将聚集的结果输出给一个父A-POD 38或中央分析***40。在某些情况下,事件的结果可以包括来自网络装置的一个或多个收集器的数据或来自网络装置的一个或多个收集器的数据的汇总中的至少一个。
在一些实例中,由A-POD 38接收的查询指定与所述通信流数据相关联的源互联网协议(IP)地址、源端口、目的地IP地址以及目的地端口中的至少一个。该查询还可以指定与所述通信流数据相关联的基于时间的标准。
在本文中描述的技术可以以硬件、软件、固件或其任何组合实现。描述为模块、单元或元件的各种特征可以在集成逻辑装置内一起地实现或者作为离散的但是互操作的逻辑装置或其他硬件装置单独地实现。在某些情况下,电子电路的各种特征可以作为一个或多个集成电路装置来实现,例如,集成电路芯片或芯片组。
如果以硬件实现,则本公开可以涉及一种设备,例如,处理器或集成电路装置,例如,集成电路芯片或芯片组。可替换地或者此外,如果以软件或固件实现,则这些技术可以至少部分由包括指令的计算机可读数据储存介质实现,在执行此种指令时,这些指令促使处理器执行上面描述的一种或多种方法。例如,计算机可读数据储存介质可以储存这种指令,以由处理器执行。
计算机可读介质可以形成计算机程序产品的一部分,该产品可以包括封装材料。计算机可读介质可以包括计算机数据储存介质,例如,随机存取存储器(RAM)、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦可编程只读存储器(EEPROM)、闪速存储器、磁或光学数据储存介质等。在一些实例中,制品可以包括一个或多个计算机可读储存介质。
在一些实例中,计算机可读储存介质可以包括永久性介质。术语“永久性”可以表示储存介质不以载波或传播信号实现。在某些实例中,永久性储存介质可以储存可以随着时间改变的数据(例如,在RAM或高速缓冲存储器内)。
代码或指令可以是由包括一个或多个处理器的处理电路执行的软件和/或固件,例如,一个或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其他等效的集成或离散逻辑电路。因此,在本文中使用的术语“处理器”可以表示任何上述结构或者适合于实现在本文中描述的技术的任何其他结构。此外,在一些方面,可以在软件模块或硬件模块内提供在本公开中描述的功能。
除了或者代替以上内容,描述以下实例。在任何以下实例中描述的特征可以供在本文中描述的任何其他实例使用。
实例1.一种方法,包括:由中央分析***接收针对与网络装置的地理分布式网络相关联的通信流数据的查询;由中央分析***将所述查询输出给多个分析容器,其中,所述多个分析容器中的每个耦接至所述地理分布式网络内的网络装置的储存单元;并且响应于输出所述查询,由中央分析***从所述多个分析容器接收查询结果,其中,所述结果至少包括基于所述查询源自所述多个分析容器的通信流数据。
实例2.根据实例1所述的方法,进一步包括:由所述中央分析***确定接收查询的多个分析容器的分析容器的子集,其中,将所述查询输出给多个分析容器包括:由所述中央分析***将所述查询输出给所述分析容器的子集,其中,从所述多个分析容器中接收结果包括:由中央分析***从所述分析容器的子集中接收结果,所述结果至少包括基于所述查询来自所述分析容器的子集的通信流数据,并且其中,所述方法进一步包括由所述中央分析***聚集所述结果,以生成对所述查询的聚集响应。
实例3.根据实例2所述的方法,其中,确定接收查询的所述分析容器的子集包括:由所述中央分析***基于网络装置的分布式网络的拓扑确定拓扑信息;并且由所述中央分析***至少基于所述拓扑信息确定接收查询的分析容器的子集。
实例4.根据实例3所述的方法,其中,确定接收查询的所述分析容器的子集包括:由所述中央分析***确定与网络装置的分布式网络相关联的路由信息;并且由所述中央分析***进一步基于所述路由信息确定接收查询的分析容器的子集。
实例5.根据实例3-4中任一项所述的方法,其中,所述分析容器的子集基于所述分布式网络的拓扑设置在一个或多个分层布置中,并且其中,所述分析容器的子集包括在所述一个或多个分层布置中的至少一个父分析容器,所述至少一个父分析容器与所述一个或多个分层布置中的一个或多个子分析容器相关联。
实例6.根据实例1-5中任一项所述的方法,其中,所述查询包括针对与所述分布式网络内的多个数据流的相应第一和第二数据流相关联的通信流数据的第一和第二部分的查询,并且其中,接收所述查询结果包括:由中央分析***从所述多个分析容器中接收与相应第一和第二数据流相关联的通信流数据的第一和第二部分。
实例7.根据实例6所述的方法,其中,与第一数据流相关联的通信流数据的第一部分包括与所述第一数据流相关联的多个数据包、与所述第一数据流相关联的多个字节、获取所述第一数据流的第一数据包的时间或者获取所述第一数据流的最近数据包的时间中的一个或多个,并且其中,与第二数据流相关联的通信流数据的第二部分包括:与所述第二数据流相关联的多个数据包、与所述第二数据流相关联的多个字节、获取所述第二数据流的第一数据包的时间或者获取所述第二数据流的最近数据包的时间中的一个或多个。
实例8.根据实例1-7中任一项所述的方法,其中,接收所述查询的结果包括:由所述中央分析***从所述多个分析容器的第一分析容器中接收所述通信流数据的第一部分;由所述中央分析***从所述多个分析容器的第二分析容器中接收所述通信流数据的第二部分;并且由所述中央分析***聚集所述通信流数据的第一和第二部分。
实例9.根据实例1-8中任一项所述的方法,其中,由所述中央分析***接收的查询指定与所述通信流数据相关联的源互联网协议(IP)地址、源端口、目的地IP地址以及目的地端口中的至少一个。
实例10.根据实例1-9中任一项所述的方法,其中,由所述中央分析***接收的查询指定与所述通信流数据相关联的基于时间的标准。
实例11.一种中央分析***,包括至少一个处理器,其中,所述至少一个处理器被配置成:接收针对与网络装置的地理分布式网络相关联的通信流数据的查询;将所述查询输出给多个分析容器,其中,所述多个分析容器中的每个耦接至所述地理分布式网络内的网络装置的储存单元;并且响应于输出所述查询,从所述多个分析容器中接收查询结果,其中,所述结果至少包括基于所述查询来自所述多个分析容器的通信流数据。
实例12.根据实例11所述的中央分析***,其中,所述至少一个处理器进一步被配置成确定接收查询的多个分析容器的分析容器的子集,其中,所述至少一个处理器被配置成至少通过将所述查询输出给所述分析容器的子集,来将所述查询输出给所述多个分析容器,其中,所述至少一个处理器被配置成至少通过从所述分析容器的子集中接收结果,来从所述多个分析容器中接收结果,所述结果至少包括基于所述查询来自所述分析容器的子集的通信流数据,并且其中,所述至少一个处理器进一步被配置成聚集所述结果,以生成对所述查询的聚集响应。
实例13.根据实例12所述的中央分析***,其中,所述至少一个处理器被配置成至少通过基于网络装置的分布式网络的拓扑确定拓扑信息并且至少基于所述拓扑信息确定接收查询的分析容器的子集,来确定接收查询的所述分析容器的子集,
实例14.根据实例13所述的中央分析***,其中,所述至少一个处理器进一步被配置成至少通过确定与网络装置的分布式网络相关联的路由信息并且进一步基于所述路由信息确定接收查询的分析容器的子集,来确定接收查询的所述分析容器的子集。
实例15.根据实例13-14中任一项所述的中央分析***,其中,所述分析容器的子集基于所述分布式网络的拓扑设置在一个或多个分层布置中,并且其中,所述分析容器的子集包括所述一个或多个分层布置中的至少一个父分析容器,所述至少一个父分析容器与所述一个或多个分层布置中的一个或多个子分析容器相关联。
实例16.根据实例11-15中任一项所述的中央分析***,其中,所述查询包括针对与所述分布式网络内的多个数据流的相应第一和第二数据流相关联的通信流数据的第一和第二部分的查询,并且其中,所述至少一个处理器被配置成至少通过从所述多个分析容器中接收与相应第一和第二数据流相关联的通信流数据的第一和第二部分,来接收所述查询结果。
实例17.根据实例11-16中任一项所述的中央分析***,其中,所述至少一个处理器被配置成至少通过从所述多个分析容器的第一分析容器中接收所述通信流数据的第一部分,从所述多个分析容器的第二分析容器中接收所述通信流数据的第二部分,并且聚集所述通信流数据的第一和第二部分,来接收所述查询的结果。
实例18.根据实例11所述的中央分析***,包括用于执行根据实例1-10中任一项所述的方法的装置。
实例19.一种计算机可读储存介质,其储存用于促使一个或多个处理器执行根据实例1-10中任一项所述的方法的指令。
实例20.一种方法包括:由分析容器从中央分析***中接收针对通信流数据的查询,其中,所述分析容器包含在分析容器的分层布置内,所述分析容器中的每个耦接至网络装置的分布式网络内的网络装置的储存单元,并且其中,所述分层布置基于分布式网络的拓扑;由分析容器将查询输出给与分析容器相关联的一个或多个子分析容器,其中,所述一个或多个子分析容器是在分析容器的分层布置内的分析容器的子代;响应于输出查询,由分析容器从一个或多个子分析容器中接收查询结果,其中,所述结果至少包括来自一个或多个子分析容器的流数据;并且由分析容器将查询结果输出给中央分析***。
实例21.根据实例20所述的方法,其中,将所述查询输出给一个或多个子分析容器包括:由所述分析容器将第一查询输出给多个子分析容器的第一子分析容器;由所述分析容器将第二查询输出给多个子分析容器的第二子分析容器,其中,接收所述查询结果包括:由分析容器从第一子分析容器中接收包括来自第一子分析容器的流数据的第一查询结果;并且由分析容器从第二子分析容器中接收包括来自第二子分析容器的流数据的第二查询结果,并且其中,输出查询结果包括:由所述分析容器聚集第一查询结果和第二查询结果;并且由分析容器向中央分析***发送聚集的结果。
实例22.根据实例20-21中任一项所述的方法,进一步包括:由所述分析容器基于查询确定与分析容器相关联的通信流数据,其中,输出查询结果包括:由所述分析容器聚集从一个或多个子分析容器中接收的结果和与分析容器相关联的通信流数据;并且由分析容器将聚集的结果输出给中央分析***。
实例23.根据实例20-22中任一项所述的方法,进一步包括:由所述分析容器从中央分析***中接收与分布式网络的拓扑相关联的拓扑信息;并且由所述分析容器基于拓扑信息确定分析容器的分层布置。
实例24.一种装置包括:至少一个处理器,其中,所述至少一个处理器被配置成:从中央分析***中接收通信流数据的查询,其中,所述装置包括分析容器,所述分析容器包含在分析容器的分层布置内,所述分析容器中的每个耦接至网络装置的分布式网络内的网络装置的储存单元,并且其中,所述分层布置基于分布式网络的拓扑;将查询输出给一个或多个子分析容器,其中,所述一个或多个子分析容器是分析容器的分层布置内的分析容器的子代;响应于输出查询,从一个或多个子分析容器中接收查询结果,其中,所述结果至少包括来自一个或多个子分析容器的流数据;并且将查询结果输出给中央分析***。
实例25.根据实例24所述的装置,其中,所述至少一个处理器被配置成至少通过将第一查询输出给多个子分析容器的第一子分析容器并且将第二查询输出给多个子分析容器的第二子分析容器,来将所述查询输出给一个或多个子分析容器,其中,所述至少一个处理器被配置成至少通过从第一子分析容器中接收包括流数据的第一查询结果并且从第二子分析容器中接收包括流数据的第二查询结果,来接收所述查询结果,其中,所述至少一个处理器被配置成至少通过聚集第一查询结果和第二查询结果并且向中央分析***发送聚集的结果,来输出查询结果。
实例26.根据实例24-25中任一项所述的装置,其中,所述至少一个处理器进一步被配置成基于查询确定与分析容器相关联的通信流数据,并且其中,所述至少一个处理器被配置成至少通过将从一个或多个子分析容器中接收的结果和与分析容器相关联的通信流数据聚集并且将聚集的结果输出给中央分析***,来输出查询结果。
实例27.根据实例24-26中任一项所述的装置,其中,所述至少一个处理器进一步被配置成从中央分析***中接收与分布式网络的拓扑相关联的拓扑信息;并且基于拓扑信息确定分析容器的分层布置。
实例28.根据实例24所述的装置,包括用于执行根据实例20-23中任一项所述的方法的装置。
实例29.一种计算机可读储存介质,其储存用于促使一个或多个处理器执行根据实例20-23中任一项所述的方法的指令。
而且,在上述任何实例中陈述的任何特定特征可以组合成所描述的技术的有利实例。即,任何特定特征通常适用于本公开的所有实例。描述了本公开的各种实例。
Claims (14)
1.一种分析方法,包括:
由中央分析***接收针对与网络装置的地理分布式网络相关联的通信流数据的查询;
由所述中央分析***将所述查询输出给多个分析容器,其中,所述多个分析容器中的每个耦接至所述地理分布式网络内的网络装置的储存数据,其中,所述多个分析容器中的每一个耦接至一个或多个收集器,所述一个或多个收集器连接至单独网络设备并且累积与所述单独网络设备相关联的通信量的储存数据的流量统计,以及其中,所述多个分析容器中的每一个将由所述单独网络设备发射的数据的每个数据类型映射至所述一个或多个收集器中的特定收集器,并且跟踪分配给所述特定收集器的所述储存数据的量;并且
响应于输出所述查询,由所述中央分析***从所述多个分析容器接收所述查询的结果,其中,所述结果至少包括基于所述查询来自所述多个分析容器的通信流数据。
2.根据权利要求1所述的分析方法,进一步包括:
由所述中央分析***确定所述多个分析容器中的接收所述查询的分析容器的子集,
其中,将所述查询输出给多个分析容器包括:由所述中央分析***将所述查询输出给所述分析容器的子集,
其中,从所述多个分析容器接收结果包括:由所述中央分析***从所述分析容器的子集接收所述结果,所述结果至少包括基于所述查询来自所述分析容器的子集的通信流数据,并且
其中,所述分析方法进一步包括:由所述中央分析***聚集所述结果,以生成对所述查询的聚集响应。
3.根据权利要求2所述的分析方法,其中,确定接收所述查询的所述分析容器的子集包括:
由所述中央分析***基于所述网络装置的地理分布式网络的拓扑确定拓扑信息;并且
由所述中央分析***至少基于所述拓扑信息确定接收所述查询的所述分析容器的子集。
4.根据权利要求3所述的分析方法,其中,确定接收所述查询的所述分析容器的子集,包括:
由所述中央分析***确定与所述网络装置的地理分布式网络相关联的路由信息;并且
由所述中央分析***进一步基于所述路由信息确定接收所述查询的所述分析容器的子集。
5.根据权利要求3所述的分析方法,
其中,所述分析容器的子集基于所述地理分布式网络的拓扑以一个或多个分层布置来设置,并且
其中,所述分析容器的子集包括在所述一个或多个分层布置中的至少一个父分析容器,所述至少一个父分析容器与所述一个或多个分层布置中的一个或多个子分析容器相关联。
6.根据权利要求1所述的分析方法,
其中,所述查询包括针对所述通信流数据的第一部分和第二部分的查询,所述第一部分和所述第二部分分别与所述地理分布式网络内的多个数据流的第一数据流和第二数据流相关联,
并且其中,接收所述查询的结果包括:由所述中央分析***从所述多个分析容器接收分别与所述第一数据流和所述第二数据流相关联的通信流数据的所述第一部分和所述第二部分。
7.根据权利要求6所述的分析方法,
其中,与所述第一数据流相关联的通信流数据的所述第一部分包括与所述第一数据流相关联的多个数据包、与所述第一数据流相关联的多个字节、获取所述第一数据流的第一数据包的时间或者获取所述第一数据流的最近数据包的时间中的一个或多个,并且
其中,与所述第二数据流相关联的通信流数据的所述第二部分包括与所述第二数据流相关联的多个数据包、与所述第二数据流相关联的多个字节、获取所述第二数据流的第一数据包的时间或者获取所述第二数据流的最近数据包的时间中的一个或多个。
8.根据权利要求1所述的分析方法,其中,接收所述查询的结果包括:
由所述中央分析***从所述多个分析容器中的第一分析容器接收所述通信流数据的第一部分;
由所述中央分析***从所述多个分析容器的第二分析容器接收所述通信流数据的第二部分;并且
由所述中央分析***聚集所述通信流数据的所述第一部分和所述第二部分。
9.根据权利要求1所述的分析方法,其中,由所述中央分析***接收的查询指定与所述通信流数据相关联的源互联网协议(IP)地址、源端口、目的地IP地址以及目的地端口中的至少一个。
10.根据权利要求1所述的分析方法,其中,由所述中央分析***接收的查询指定与所述通信流数据相关联的基于时间的标准。
11.一种中央分析***,包括:
至少一个处理器,
其中,所述至少一个处理器被配置成:
接收针对与网络装置的地理分布式网络相关联的通信流数据的查询;
将所述查询输出给多个分析容器,其中,所述多个分析容器中的每个耦接至所述地理分布式网络内的所述网络装置的储存数据,其中,所述多个分析容器中的每一个耦接至一个或多个收集器,所述一个或多个收集器连接至单独网络设备并且累积与所述单独网络设备相关联的通信量的储存数据的流量统计,以及其中,所述多个分析容器中的每一个将由所述单独网络设备发射的数据的每个数据类型映射至所述一个或多个收集器中的特定收集器,并且跟踪分配给所述特定收集器的所述储存数据的量;并且
响应于输出所述查询,从所述多个分析容器接收所述查询的结果,其中,所述结果至少包括基于所述查询来自所述多个分析容器的通信流数据。
12.根据权利要求11所述的中央分析***,
其中,所述至少一个处理器进一步被配置成确定所述多个分析容器中的接收所述查询的分析容器的子集,
其中,所述至少一个处理器被配置成至少通过将所述查询输出给所述分析容器的子集,来将所述查询输出给所述多个分析容器,
其中,所述至少一个处理器被配置成至少通过从所述分析容器的子集接收所述结果,来从所述多个分析容器接收结果,所述结果至少包括基于所述查询来自所述分析容器的子集的通信流数据,并且
其中,所述至少一个处理器进一步被配置成聚集所述结果,以生成对所述查询的聚集响应。
13.根据权利要求11-12中任一项所述的中央分析***,其中,所述至少一个处理器被配置成至少通过从所述多个分析容器的第一分析容器接收所述通信流数据的第一部分,从所述多个分析容器的第二分析容器接收所述通信流数据的第二部分,并且聚集所述通信流数据的所述第一部分和所述第二部分,来接收所述查询的所述结果。
14.根据权利要求11所述的中央分析***,包括用于执行根据权利要求1-10中任一项所述的分析方法的装置。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562235122P | 2015-09-30 | 2015-09-30 | |
US62/235,122 | 2015-09-30 | ||
US14/958,466 | 2015-12-03 | ||
US14/958,466 US10296551B2 (en) | 2015-09-30 | 2015-12-03 | Analytics for a distributed network |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106559257A CN106559257A (zh) | 2017-04-05 |
CN106559257B true CN106559257B (zh) | 2019-11-26 |
Family
ID=57083123
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610865671.3A Active CN106559257B (zh) | 2015-09-30 | 2016-09-29 | 分布式网络的分析 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10296551B2 (zh) |
EP (1) | EP3151470B1 (zh) |
CN (1) | CN106559257B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9338134B2 (en) | 2013-03-27 | 2016-05-10 | Fortinet, Inc. | Firewall policy management |
US10536357B2 (en) | 2015-06-05 | 2020-01-14 | Cisco Technology, Inc. | Late data detection in data center |
US10142353B2 (en) | 2015-06-05 | 2018-11-27 | Cisco Technology, Inc. | System for monitoring and managing datacenters |
US10389594B2 (en) * | 2017-03-16 | 2019-08-20 | Cisco Technology, Inc. | Assuring policy impact before application of policy on current flowing traffic |
US10826925B2 (en) * | 2017-04-28 | 2020-11-03 | Honeywell International Inc. | Consolidated enterprise view of cybersecurity data from multiple sites |
CN110119308B (zh) * | 2018-02-07 | 2021-06-04 | 北京零研科技有限公司 | 管理大规模容器应用的*** |
US10798006B2 (en) * | 2018-10-12 | 2020-10-06 | Akamai Technologies, Inc. | Overload protection for data sinks in a distributed computing system |
US10904366B2 (en) * | 2018-10-19 | 2021-01-26 | Charter Communications Operating, Llc | Assuring data delivery from internet of things (IoT) devices |
US10715394B2 (en) * | 2018-10-29 | 2020-07-14 | Sap Portals Israel Ltd. | Data aggregation based on a heirarchical tree |
US10659310B1 (en) * | 2019-08-16 | 2020-05-19 | LogicMonitor, Inc. | Discovering and mapping the relationships between macro-clusters of a computer network topology for an executing application |
US11316947B2 (en) * | 2020-03-30 | 2022-04-26 | International Business Machines Corporation | Multi-level cache-mesh-system for multi-tenant serverless environments |
CN113746654B (zh) * | 2020-05-29 | 2024-01-12 | ***通信集团河北有限公司 | 一种IPv6地址管理和流量分析的方法和装置 |
US11882138B2 (en) * | 2020-06-18 | 2024-01-23 | International Business Machines Corporation | Fast identification of offense and attack execution in network traffic patterns |
US11005721B1 (en) | 2020-06-30 | 2021-05-11 | Juniper Networks, Inc. | Scalable control plane for telemetry data collection within a distributed computing system |
US11809424B2 (en) * | 2020-10-23 | 2023-11-07 | International Business Machines Corporation | Auto-scaling a query engine for enterprise-level big data workloads |
CN112307066B (zh) * | 2020-11-03 | 2023-04-07 | 平安普惠企业管理有限公司 | 分布式数据聚合方法、***、设备及存储介质 |
CN113015039B (zh) * | 2021-03-04 | 2022-03-25 | 烽火通信科技股份有限公司 | 一种混合网络的端到端业务的部署方法和部署装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012122435A2 (en) * | 2011-03-08 | 2012-09-13 | Riverbed Technology, Inc. | Accessing network traffic data at multiple time scales and levels of detail |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7185103B1 (en) | 2002-09-10 | 2007-02-27 | Juniper Networks, Inc. | Rate-controlled transmission of traffic flow information |
WO2005109754A1 (en) | 2004-04-30 | 2005-11-17 | Synematics, Inc. | System and method for real-time monitoring and analysis for network traffic and content |
US8077718B2 (en) * | 2005-08-12 | 2011-12-13 | Microsoft Corporation | Distributed network management |
US20140280338A1 (en) | 2013-03-14 | 2014-09-18 | Cisco Technology, Inc. | Distributed network analytics |
US8839171B1 (en) * | 2013-03-31 | 2014-09-16 | Atrenta, Inc. | Method of global design closure at top level and driving of downstream implementation flow |
US9178824B2 (en) | 2013-10-29 | 2015-11-03 | Solana Networks Inc. | Method and system for monitoring and analysis of network traffic flows |
-
2015
- 2015-12-03 US US14/958,466 patent/US10296551B2/en active Active
-
2016
- 2016-09-27 EP EP16190891.8A patent/EP3151470B1/en active Active
- 2016-09-29 CN CN201610865671.3A patent/CN106559257B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012122435A2 (en) * | 2011-03-08 | 2012-09-13 | Riverbed Technology, Inc. | Accessing network traffic data at multiple time scales and levels of detail |
Also Published As
Publication number | Publication date |
---|---|
US10296551B2 (en) | 2019-05-21 |
CN106559257A (zh) | 2017-04-05 |
EP3151470A1 (en) | 2017-04-05 |
US20170091204A1 (en) | 2017-03-30 |
EP3151470B1 (en) | 2020-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106559257B (zh) | 分布式网络的分析 | |
CN105493450B (zh) | 动态检测网络中的业务异常的方法和*** | |
Hao et al. | Detecting Spammers with SNARE: Spatio-temporal Network-level Automatic Reputation Engine. | |
Crichigno et al. | A comprehensive tutorial on science DMZ | |
Basescu et al. | SIBRA: Scalable internet bandwidth reservation architecture | |
CN104519121B (zh) | 计算机网络内的会话感知服务链 | |
CN103765839B (zh) | 用于网络设备内的分组处理的基于变量的转发路径结构 | |
EP2845350B1 (en) | Method and apparatus for providing tenant information for network flows | |
US8584215B2 (en) | System and method for securing distributed exporting models in a network environment | |
Chen et al. | A first look at inter-data center traffic characteristics via yahoo! datasets | |
CN107566440A (zh) | 软件定义的网络环境中服务的自动发现和自动扩缩 | |
US11546266B2 (en) | Correlating discarded network traffic with network policy events through augmented flow | |
CN107241186A (zh) | 应用签名生成和分发 | |
US20060028999A1 (en) | Flows based visualization of packet networks with network performance analysis, troubleshooting, optimization and network history backlog | |
US20070248084A1 (en) | Symmetric connection detection | |
US20180048525A1 (en) | Method and apparatus to control anycast traffic using a software defined network controller | |
CN102763382A (zh) | 前端***和前端处理方法 | |
EP3756317B1 (en) | Method, device and computer program product for interfacing communication networks | |
US20220255820A1 (en) | Scalable in-band telemetry as a service (taas) | |
EP1906590A2 (en) | System and method for network analysis | |
Farhadi et al. | Rethinking flow classification in SDN | |
US11240140B2 (en) | Method and system for interfacing communication networks | |
Cisco | Product Overview | |
Xia et al. | Resource optimization for service chain monitoring in software-defined networks | |
KR101242599B1 (ko) | Mpls vpn 라우팅 정보 관리 서버 및 그 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: California, USA Patentee after: Juniper Networks, Inc. Address before: California, USA Patentee before: Jungle network |
|
CP01 | Change in the name or title of a patent holder |