在高速发达的计算机网络世界,网络和系统运维者每天都可能面对成千上万的故障问题,从简单的终端病毒感染,到复杂的网络配置,甚至更为复杂的应用架构。当问题出现,我们永远也不可能立即解决所有的,而良好的知识储备和系统工具,能够帮助我们更加快速的响应形式多样的错误。
所有的网络问题或基于网络的应用问题,都源自应用的数据包,无论应用设计的有多完美,但其访问的终端可能具有很大的差别,或者应用本身可能存在不可告人的小秘密。为了更好地了解网络,快速解决相关问题,我们需要进入到网络传输的最小单元数据包中。数据包不会撒谎,在这里,没有任何东西能够逃脱我们的视野。通过分析数据包,信息传输不再存在秘密(即使有些加密通信在特定环境下也无法避免)。我们对网络数据包进行深入分析,就是为了更好地了解网络是如何运行的,数据包是如何被转发的,应用是如何被访问的,有了这些了解,当再次出现网络故障或网络应用问题,就能够很快的解决。这就是为什么需要分析网络数据包,也就是分析网络数据包的意义所在。
从现在开始,网深科技将开展一系列关于数据包分析的主题文章,带你领略神奇的数据包世界。你将学习如何查看网络使用情况,如何解决网络访问速度慢的问题,定位识别应用的性能瓶颈问题,分析感染病毒的终端系统,发现被攻击的服务器,甚至追踪存在于真实场景中的黑客。通过这一系列的学习,你应该能够掌握并使用先进的网络数据包分析技术来解决日常自己网络中遇到的实际问题,哪怕起初感觉极为复杂或难以解决的问题。
网络数据包分析,就是通常所说的抓包分析,其它类似网络分析、协议分析、数据包分析或数据包嗅探的说法,都是指采集和解码网络上实时传输数据的过程,分析的目的通常是为了能更好地了解网络上正在发生的事情。网络数据包分析过程主要由抓包软件来捕获数据包。
全球使用最多的Wireshark
使用网络数据包分析技术,一般能够实现如下目的:
了解网络工作原理;
查看网络使用情况及网络上的通信主体;
确认哪些应用占用带宽;
识别网络中存在的攻击或恶意行为;
分析定位网络故障和延时大小;
查看用户访问应用的快慢情况;
优化和改进应用性能
当然,这些功能可能只是最常见的使用之一,通过数据包分析可做的事情远远不止这些。
目前全球最流行、使用最广泛的数据包分析软件为Wireshark,本系列关于网络分析的主题,主要介绍如何使用该软件。其中可能会提及或使用更为智能的商业产品,如NetInside系列性能管理系统,但仅作为参考,或对比学习。
Omnipeek厂商改名并被收购
另外,较为常用的网络数据包分析软件有基于命令行的tcpdump,Wildpackets的Omnipeek(这家公司后转向于安全取证领域分析,改名Savvius,被LiveAction收购),国内也有家做网络流量分析的厂商,早期的产品也与Omnipeek颇有渊源。