Answers:
NetFlow是用于导出聚合IP流总数的协议。因此,它非常适合Internet路由器上的IP流量统计。使用Netflow V9(也称为IPFIX,它也可以查看第2层流量)
sFlow是一种通用的网络流量测量系统技术。sFlow旨在嵌入任何网络设备中,并提供有关任何协议(L2,L3,L4以及直至L7)的连续统计信息,以便可以准确表征和监控整个网络中的所有流量。这些统计信息对于拥塞控制,故障排除,安全监控,网络规划等至关重要。它们还可以用于IP记帐目的。
Netflow会镜像所有流量,并在使用时对CPU造成负担。
SFlow是一种数据包采样技术,其中交换机捕获每个接口的第100个数据包(可配置)并将其发送给收集器。sFlow内置于ASIC中,可将CPU的负载降至最低。
思科,瞻博网络,阿尔卡特朗讯,华为,Enterasys,北电,VMWare支持的Netflow
sFlow受Alaxala,Alcatel Lucent,Allied Telesis,Arista Networks,Brocade,Cisco,Dell,D-Link,Enterasys,Extreme,Fortinet,Hewlett-Packard,Hitachi,Huawei,IBM,Juniper,LG-Ericsson,Mellanox,MRV, NEC,Netgear,Proxim Wireless,Quanta Computer,Vyatta,ZTE和ZyXEL(请参见sFlow链接)
唯一的区别是“ NetFlow是Cisco专有的,sFlow不是”是不完全正确的。
NetFlow最初是思科专有的,但其发展方式与GRE或EIGRP相同。从NetFlow v5开始,它已在其他供应商的硬件上实现并受支持。
NetFlow和sFlow之间的主要区别是NetFlow仅限于IP,而sFlow可以对所有内容进行采样(独立于网络层)。
编辑:以上似乎不再正确(至少从IPFIX标准开始)。我发现以下博客文章(警告:似乎是“ sflow”特定的URL,因此,如果需要的话,可以加一点盐)在概述IPFIX规范和sFlow之间的差异方面做得很好
思科设备尝试汇总流量(您可以将其视为对话),然后将有关流量的信息导出到收集器。这需要内存来缓存它们。
sFlow有两个主要组成部分:一个将定期将接口计数器和CPU使用率之类的统计信息导出到收集器,另一个将随机捕获N个(通过路由器,通常可配置为512,最多为32768)帧中的1个,以及导出前256个字节。然后,您可以对通过网络的流量进行统计分析。
sFlow数据包样本通过路由表中的信息(例如AS路径)得到增强。它与v4和v6无关,与NetFlow不同,它会根据您要接收的数据类型迫使您做出不舒服的妥协。
NetFlow可以追溯到一个时代,在这个时代,基于流的路由尚未被视为一个笑话。sFlow并非TLV格式,因此以可移植的方式实现供应商扩展几乎是不可能的。
Netflow是Cisco专有协议,因此Cisco设备以外的任何设备均不支持。
sFlow是一种IETF标准,用于执行几乎相同的操作,但该标准不属于某个特定制造商。