Netflow Collector
Netflow Collector 是 NorthStar 控制器中的网络规划和报告工具。它提供了一种收集和生成有关详细网络流量信息的报告的方法。NorthStar 使用 Netflow 版本 9 和版本 10 (IPFIX) 流模板利用 Junos OS 的流监控和聚合实施。有关背景信息,请参阅以下 Junos OS 文档:
配置流聚合以使用版本 9 流模板
配置流聚合以在 MX、vMX 和 T 系列路由器、EX 系列交换机和 NFX250 上使用 IPFIX 流模板
配置流聚合以在 PTX 系列路由器上使用 IPFIX 流模板
路由器上的 Junos OS 对流量进行采样,构建流表,并定期将流表的详细信息发送到 NorthStar。
NorthStar (Netflow 守护程序),从路由器接收数据,解码记录,执行额外的数据聚合并创建需求,将数据存储在 NorthStar 数据库中,并与 PCS 共享信息。然后,这些数据可用于在 NorthStar 控制器中创建报告,并在 NorthStar 计划器中用于报告创建、规划和建模。
NorthStar 监控 AS 和 VPN 流量,同时支持 IPv4 和 IPv6。
NorthStar Netflow Collector 需要:
网络中路由器上的配置。
初始和定期设备收集,以便在 NorthStar 中创建和维护准确的 VPN 模型。建议至少每天执行一次设备收集。
您可以选择在 NorthStar 应用程序服务器上的 /opt/northstar/data/northstar/cfg 文件中自定义 Netflow 收集器设置。
以下部分介绍如何在 NorthStar 控制器中使用 Netflow 收集器:
Netflow 收集器的配置
网络路由器上的配置
NorthStar 控制器上的 Netflow 收集器要求根据路由器操作系统文档将网络路由器配置为流监控(Netflow v9 或 v10)。
目前,支持 Juniper 设备和 Cisco IOS-XR 设备,同时支持 Netflow v9 和 v10。
一些重要的注意事项:
源地址(inline-jflow 语句)向 netflow 守护程序 (netflowd) 标识报告流的设备。它应配置为路由器的环路地址。
流活动超时值的默认值为 60 秒。我们建议将其保持在 60 秒或更短。
这是一个显示 Netflow v9 配置语句的 Junos OS 示例:
在接口层次结构级别:
interfaces { ge-0/0/1 { unit 0 { family inet { sampling { input; } address 10.0.21.1/24; } } } }
在转发选项层次结构级别:
forwarding-options { sampling { nfv9-ipv4 { input { rate 1; run-length 0; } family inet { output { flow-inactive-timeout 15; flow-active-timeout 60; flow-server 172.16.18.1 { port 9000; version9 { template { nfv9-ipv4; } } } inline-jflow { source-address 10.1.0.104; } } } }
在机箱层次结构级别:
chassis { network-services enhanced-ip; fpc 0 { sampling-instance nfv9-ipv4; } }
在服务层次结构级别:
services { flow-monitoring { version9 { template nfv9-ipv4 { nexthop-learning { enable; } template-refresh-rate seconds 60; option-refresh-rate seconds 60; ipv4-template; } } } }
这是一个显示 Netflow v10 配置语句的 Junos OS 示例:
在接口层次结构级别:
interfaces { ge-0/0/1 { unit 0 { family inet { sampling { input; } address 10.0.21.1/24; } } } }
在转发选项层次结构级别:
forwarding-options { sampling { instance { nfv10-ipv4 { input { rate 1; run-length 0; } family inet { output { flow-inactive-timeout 15; flow-active-timeout 60; flow-server 172.16.18.1 { port 9000; version-ipfix { template { nfv10-ipv4; } } } inline-jflow { source-address 10.1.0.104; } } } } } } }
在机箱层次结构级别:
chassis { network-services enhanced-ip; fpc 0 { sampling-instance nfv10-ipv4; } }
在服务层次结构级别:
services { flow-monitoring { version-ipfix { template nfv10-ipv4 { nexthop-learning { enable; } template-refresh-rate { seconds 60; } option-refresh-rate { seconds 60; } ipv4-template; } } } }
NorthStar 应用程序服务器上的配置
Netflow Collector 作为 NorthStar 控制器分析包的一部分进行安装。请参阅 NorthStar 控制器入门指南中的安装数据收集器进行分析。
采样在入口接口上配置。流进入入口 PE,后者将 netflow 记录发送到 netflowd。netflow 记录包括确定流的目标或“前缀”的信息。
在安装了 NorthStar 分析包的 NorthStar 服务器上, /opt/northstar/data/northstar.cfg 文件中有一些可以为 Netflow 自定义的设置,所有这些设置都以“netflow_”开头,如 表 1 中所述。
有关支持的部署配置的信息,请参阅 NorthStar 控制器入门指南中的平台和软件兼容性。分析包可能会也可能不会与 NorthStar 应用程序安装在同一台服务器上,具体取决于您的部署配置。
设置 |
笔记 |
---|---|
netflow_collector_address |
安装 NorthStar 分析包的服务器的 IP 地址(该服务器可能与安装 NorthStar 应用程序的服务器相同,也可能不是)。 |
netflow_port |
默认 Netflow 端口为 9000。 |
netflow_ssl |
SSL 已禁用(默认)= 0 已启用 SSL = 1 |
netflow_log_level |
日志文件中捕获的信息级别 /opt/northstar/logs/netflowd.msg。默认级别为“信息”。如果需要更多信息,可以将级别设置为“debug”,日志将包括从每个设备接收的所有流,由源 IP 地址标识。对于每个流,您还可以看到 netflowd 处理和分析的所有字段。 |
netflow_sampling_interval |
默认采样间隔(如果路由器未在模板流集中提供采样间隔)。
注意:
如果您在网络中使用 Netflow v10 (IPFIX),则必须在 /opt/northstar/data/northstar.cfg 中手动配置 netflow_sampling_interval。NorthStar 不支持自动提取 IPFIX 采样间隔。 |
netflow_publish_interval |
Elasticsearch 和 PCS 的发布间隔。流量按发布间隔聚合。默认间隔为 60 秒。此值必须等于或大于路由器中配置的报告时间(流-活动-超时值),以确保为每个发布间隔报告所有活动流。 |
netflow_workers |
有关辅助角色的详细信息,请参阅 NorthStar 控制器入门指南中的分布式数据收集辅助收集器安装。 |
netflow_ageout |
启用 = 1,禁用 = 0 如果启用,netflowd 会在流不再处于活动状态后发送一个最终更新,将带宽报告为 0。如果禁用,则在流变为非活动状态后不会报告带宽值,因此上次报告的活动值是显示的最后一个值。 |
netflow_aggregate_by_prefix |
可能的值为:
|
netflow_stats_interval |
将统计信息打印到日志文件的时间间隔。默认值为 -1(从不)。 |
netflow_as_demands |
默认情况下,Netflowd 不会生成 AS 需求。除非另行指定,否则 AS 需求不会通过 REST API 或 UI 中的需求报告显示,即使导出了有效的 netflow 记录也是如此。 此设置的可能值为:
如果 northstar.cfg 文件中完全缺少该设置,则会禁用 AS 需求生成。 |
如果对这些设置进行更改,则必须重新启动 netflowd 进程才能使更改生效。
在 Web UI 中查看需求
网络信息表中的“需求”选项卡根据 Netflow 收集器的流量监控显示聚合需求。使用了四个聚合键:
入口 PE(报告流量的设备)
BGP 下一跳 IP 地址
路由表名称
如果存在密钥,则它是为其配置入口接口的 VRF 名称。
如果没有与需求关联的 VPN,则此密钥不存在。在这种情况下,入口接口在默认路由表中配置。
如果 netflowd 无法确定入口接口是在默认路由表上配置的还是在 VRF 上配置的,则此项显示为“NONE”。例如,如果 NorthStar 无法收集接口的 snmp 索引,就会发生这种情况。
IPv4(显示为 IP)或 IPv6 的规范
键的值反映在表中的需求名称中。一些例子:
vmx102_10.1.0.10/32_vpn100_IP
vmx102_10.1.0.10/32_IP(没有与需求关联的 VPN)
vmx102_10.1.0.10/32_NONE_IP(未知入口接口是在默认路由表上配置的还是在 VRF 上配置的)
在表中选择需求会突出显示拓扑图中相应的路由路径。
目前,在拓扑图上预览路径的功能仅限于基于 RSVP 的 LSP(不包括分段路由)。将来的版本将增强此功能。
从网络信息表中,您可以删除需求,但不能添加或修改它们。需求永远不会自动删除。
要查看网络信息表中的需求数据:
-
默认情况下不显示“需求”选项卡。单击网络信息表标题中的加号 (+),然后从下拉菜单中进行选择 Demand ,如图 1 所示。
图 1:将“需求”选项卡添加到网络信息表图 2 显示了“需求”选项卡数据的示例。
图2:需求选项卡 的网络信息表对于每个需求,“需求”选项卡会列出需求属性。需求是否与 VPN 关联显示在“所有者”字段中。如果没有与需求关联的 VPN,则“所有者”字段为空。“最近更新”列在每个发布间隔更新。如果未更新,则流不再处于活动状态。
-
右键单击表中的需求,然后选择 View Demand Traffic。这将在网络信息表中打开一个新选项卡,其中显示了一段时间内的需求流量图表。您可以调整图表显示左上角的时间段,以显示过去一小时、一天、七天或自定义时间段。
-
您可以在任务计划程序 (Administration > Task Scheduler) 中创建需求计龄任务,以定期从 UI 中删除非活动需求。
当不再观察到某个流时,该需求将保留在 NorthStar UI(网络信息表中的“需求”选项卡)中,直到您将其删除。您可以手动执行此操作,也可以创建“需求帐龄”任务来自动执行该过程。此任务根据您指定的最长期限删除不再处于活动状态的需求。
例如,如果您创建的“需求计龄”任务的最长期限为 10 分钟,则该任务将删除处于非活动状态 10 分钟或更长时间的所有需求。
要创建需求计龄任务,请在任务计划程序中单击 Add 。输入任务的名称,然后从任务类型字段的下拉菜单中选择需求帐龄。单击 Next 以进入最长期限窗口。
要指定最长期限:
-
在“最长期限”字段中输入一个整数。
-
使用单位字段中的下拉菜单选择秒、分钟、小时或天。
单击 Next 以进入计划窗口。与许多其他任务类型一样,您可以将此任务计划为定期自动重复执行。
有关任务计划程序的详细信息,请参阅 任务计划程序简介。
-
需求报告收集
当您从 > Task Scheduler运行Administration需求报告收集任务时,将生成需求报告。
单击 Add 此项可开始创建新任务。图 3 显示了“创建新任务”窗口。在“名称”字段中为新任务命名。使用任务类型下拉菜单 Demand Reports选择 。
图 3:创建新任务窗口单击 Next 以进入“报告类型和选项”窗口。
报告类型如图 5 所示。在“报告类型”选项卡中,选择要生成的报告。如果选择 Include AS Demands,则可以从多个 AS 报告中进行选择。
注意:必须在 northstar.cfg 文件中启用 AS 需求,如 NorthStar 应用程序服务器上的配置中所述。
图 4:“报告类型”选项卡Report Options单击选项卡。
图 5 显示了“报告选项”选项卡。
图5:“报告选项”选项卡在此窗口中,您可以选择报告期间:
日期范围,包括小时和分钟(最多 7 天)
过去 N 天的范围(最多 60 天)
过去 24 小时的范围(提供过去 24 小时的数据)
如果想要包含特定小时数据的报告,可以选择日期范围选项,并指定要包括的小时数,如图 6 所示。
图 6:带小时的 日期范围选项流量根据需求加载,具有可配置的统计周期数。表 2 介绍了下拉菜单中的Aggregation Statistic选项。
表 2:聚合统计信息选项 聚合统计
描述
平均
对于每个区间,对该区间内的样本求平均值。如果特定间隔内有 N 个样本,则结果是所有样本值的总和除以 N。
麦克斯
对于每个区间,将使用该区间内样本值的最大值。
最小值
对于每个区间,将使用该区间内的最小样本值。
第 80、90、95、99 个百分位数(X 百分位数)
对于每个区间,将使用该区间内样本的 X 百分位值。X 百分位数是根据考虑区间平均值和标准差的方程计算得出的。结果是样本值的 X 百分比等于或低于计算值。
表 3 中介绍了聚合间隔选项。
表 3:聚合间隔选项 聚合间隔
描述
全频
整个范围是一个间隔。为整个范围生成一个聚合数据点。
日常
每一天都是一个间隔。每天生成一个聚合数据点。
小时
每个小时是一个间隔。每小时生成一个聚合数据点。
此外,在此窗口中,您还可以指定要根据在保存的拓扑布局中捕获的组对报表中的数据进行分组。您可以选择所有布局或特定布局。如果选择多个布局,则会为每个布局生成报告。
图 7 显示了“创建新任务 – 需求报告”窗口,其中选择了两个保存的布局进行数据分组。
图 7:需求报告任务,选择保存的布局进行分组有关创建组和使用自动分组功能的信息,请参阅 对选定节点进行分组和取消分组 ;有关保存布局的信息,请参阅 管理布局 。
单击 Next 以继续执行调度参数。
此时将显示“创建新任务 - 计划”窗口,如图 8 所示。可以选择仅运行集合一次,也可以按可配置的时间间隔重复该集合。
图 8:设备收集任务,计划单击以 Submit 完成新收集任务的添加,并将其添加到任务列表中。单击列表中的已完成任务以在窗口的下半部分显示结果。结果窗口中有三个选项卡:“摘要”、“状态”和“历史记录”。 图 9 显示了已完成的需求报告收集任务的 Status 选项卡示例。状态说明指示生成的报告的位置。
图 9:需求报告收集结果,状态选项卡也可以通过导航到 Applications > Reports来获取报告。报告列表示例如图 10 所示。
图 10:需求报告 示例列表