以上我们分析了数据包捕获的过程,也就是数 据采集的实现过程,要对网络流量进行统计还有一 个重要的环节就是数据的分析。 要获得网络流量对IP包进行拆包分析,图6是 IP包的格式 6,可以清楚地看到所需的参数。在IP 包头中,有几个流量统计所需的主要参数:源IP地 址、目的IP地址和总长,这个总长包括头标长和数 据区长。在进行流量统计的数据分析的时候,只需 把这3个参数拿出来进行分析就可以了。
3.5 实验结果 采用这种基于流量监控工作站的方法,我们搭 建了实验平台,并开发了流量数据采集及其统计程 序。 程序开发平台为RedHat Linux 7.1,使用gcc 编译器,基于libpcap库,测试环境为网络技术研究 中心内部局域网。测试结果如下:
Ready to receive packets···
Protocol W eek Month Day Time Year Total Length Source Destination
IP ThU Jun 7 14:13:12 2001 40 10.10.13.3一>10.10.13.5
IP ThU Jun 7 14:13:12 2001 278 10.10.13.5一>10.10.13.3
IP ThU Jun 7 14:13:12 2001 40 10.10.13.3一>10.10.13.5
IP ThU Jun 7 14:13:12 2001 157 10.10.13.5一>10.10.13.3
IP Thu Jun 7 14:13:12 2001 40 10.10.13.3一>10.10.13.5
IP ThU Jun 7 14:13:12 2001 161 10.10.13.5一> 10.10.13.3
Protoool:Unknow!
Thu
Thu
Thu
Thu
Thu
Thu
Thu
Thu
Thu
Jun
Jun
Jun
Jun
Jun
Jun
Jun
Jun
Jun
14:13:13 2001 40
14:13:13 2001 210
14:13:13 2001 401
14:13:13 2001 406
14:13:13 2001 40
14:13:13 2001 286
14:13:13 2001 40
14:13:13 2001 40
14:13:13 2001 225
Intenal Traffic:6902 bytes
In Traffic:0 bytes
Out Traffic:6670 bytes
Other Traffic:2399 bytes
887 Packets received by filter
0 packets dropped by kernel
该程序通过捕获内部局域网的网络数据包,拆 包并分析其内容,获得最后的统计信息,较好地验证 了数据包捕获层次模型的正确性和实用性。本实验 平台对于高速数据链路的包处理还存在一些问题, 如丢包率较高,相信进一步改善会更具有实际的商 用价值。 4 结束语 本文对网络流量统计的方法进行了总结和比 较,提出了一种流量监控工作站的网络流量统计方 法,并着重阐述了其数据采集的实现过程,提出了一 种基于libpcap和BPF的数据包捕获层次结构并对 其具体的实现过程进行了详细的描述。对于在用户 层进行应用程序的开发有值得借鉴的地方。
参考文献:
10.10.13.3一> 10.10.13.5
10.10.13.5一> 10.10.13.3
10.10.13.4一> 202.119.230.80
202.119.230.8一>