工欲善其事,必先利其器。为了有利于深入了解WinPcap的内部机制,我们需要对网络分析与嗅探、网络模型与硬件基础作必要了解。

1.1 什么是网络分析与嗅探

网络分析(Network analysis) (也称为网络流量分析、协议分析、嗅探、数据包分析、窃听,等等)就是通过捕获网络流量并深入检查,来决定网络中发生了什么情况的过程。一个网络分析器对通用协议的数据包进行解码,并以可读的格式显示网络流量的内容。嗅探器sniffer)是一种监视网络上所传输数据的程序。未经授权的嗅探器对网络安全构成威胁,因为它们很难被发现并且可在任何地方被插入,这使得它们成为***最喜欢使用的一种工具。
网络分析器之间的差别,在于诸如支持能解码的协议数量、用户接口、图形化与统计能力等主要特性的不同。其它的差别还包括了推理能力(比如,专家分析特性)与数据包解码的质量。尽管几个不同的网络分析器针对同一个协议进行解码,但在实际环境中可能其中的一些会比另外一些工作得更好。
图2-1为Wireshark网络分析器的显示窗口。一个典型的网络分析器用三个窗格显示所捕获的网络流量:
图2-1 Wireshark网络分析器的显示窗口
概要 该窗格对所捕获的内容显示一行概要。包含日期、时间、源地址、目标地址、与最高层协议的名字与信息字段。
详情 该窗格提供所捕获数据包所包含的每层细节信息(采用树形结构)。
数据 该窗格用十六进制与文本格式显示原始的被捕获数据。
一个网络分析器是由硬件与软件共同组成。可以是一个带有特定软件的单独硬件设备,或者是安装在台式电脑或膝上电脑之上的一个软件。尽管每种产品之间具有差别,但都是由下列五个基本部分组成。
硬件 多数网络分析器是基于软件的,并工作于标准的操作系统与网卡之上。然而,一些硬件网络分析器提供额外的功能,诸如分析硬件故障(比如循环冗余纠错(CRC)错误、电压问题、网线问题、抖动、逾限(jabber)、协商错误等等)。一些网络分析器仅支持以太网或无线网适配器,而其它的可支持多重适配器,并允许用户定制它们的配置。依据实际情况,可能也需要一个集线器或一个网线探针(cable tap)连接已有的网线。
捕获驱动器 这是网络分析器中负责从网线上捕获原始网络流量的部分。它滤出了所需保持的流量,并把所捕的获数据保存在一个缓冲区中。这是网络分析器的核心——没有它就无法捕获数据。
缓冲区 该组件存储所捕获的数据。数据能够被存入一个缓冲区中只到该缓冲区被填满为止,或者采用循环缓冲的方式,那么最新的数据将会替换最旧的数据。采用磁盘或内存均可实现缓冲区。
实时分析 当数据一离开网线,该特性就可对数据执行分析。一些网络分析器利用该特性发现网络性能问题、同时网络***检测系统利用它寻找***活动。
解码(器) 该组件显示网络流量的内容(带有描述),所以是可读的 。解码是特定于每个协议的,因此网络分析器当前支持可解码的协议数目是变化的,网络分析器可能经常加入新的解码。

本文出自 “千江月” 博客,请务必保留此出处http://eslxf.blog.51cto.com/918801/200736

转载于:https://blog.51cto.com/runhook/386917

深度剖析WinPcap之(二)——网络分析与嗅探的基础知识(1)相关推荐

  1. 深度剖析WinPcap之(二)——网络分析与嗅探的基础知识(4)

    1.3.3  CSMA/CD 以太网使用载波监听多点接入/冲突检测(CSMA/CD)协议,为了设备在网络上家交换数据.多点接入这个术语指许多网络设备连接到同一个网段 有发送的机会. 每个设备赋予等同的 ...

  2. 深度剖析E680G开发二.交叉编译BusyBox与图形化程序

    深度剖析E680G开发二.交叉编译BusyBox,图形化程序 草木瓜 20060917 一.前言         很多人看到这个剖析系列,觉得难了,其中不乏热衷于刷机的人.刚刚接触 E680g的普通人 ...

  3. 二、设计模式-必要的基础知识—旅行前的准备 #和设计模式一起旅行#

    必要的基础知识-旅行前的准备 工欲善其事,必先利其器.--<论语> 要开始一场旅行,准备的工作肯定不能少,不能太任性,一场说走就走的旅行,也需要基础条件的,那么本次就做做一些旅行之前的准备 ...

  4. C#进行MapX二次开发之MapX基础知识

    C#进行MapX二次开发之MapX基础知识 MapX的主要技术特点 (1). 以表(Table)的形式组织信息 每一个表都是一组MapInfo文件,这些文件组成了地图文件和数据库文件.为使用MapIn ...

  5. 数控技术复习(二):数控编程必备的基础知识

    文章首发于个人博客,欢迎访问:数控技术复习(二):数控编程必备的基础知识 数控机床加工零件:零件图代码->程序单->控制介质->数控装置->伺服电机->机床自动加工.从零 ...

  6. 深入理解深度学习——GPT(Generative Pre-Trained Transformer):基础知识

    分类目录:<深入理解深度学习>总目录 相关文章: · GPT(Generative Pre-Trained Transformer):基础知识 · GPT(Generative Pre-T ...

  7. lsdyna如何设置set中的node_list_ANSA中进行二次开发的Python基础知识

    ANSA.META的二次开发均基于Python开发.本文基于ANSA的帮助文档<Introduction to Python>进行一定的扩展,希望能帮助大家快速掌握这门语言. 首先来介绍下 ...

  8. Simulink 环境基础知识(二十六)--信号基础知识

    目录 信号基础知识 信号线的线型 信号属性 存储信号和状态的设计属性 测试信号 信号基础知识 信号是指在所有时间点都有对应值的时变量.可以指定各种信号属性,包括: 信号名称 数据类型(例如,8 位.1 ...

  9. 二、BLDC矢量控制基础知识:SVPWM原理

    SVPWM空间矢量脉宽调制 这里从三相逆变桥说起,介绍工作原理,逐步过渡到SVPWM实施的各种理论细节中,和之前学习坐标变换一样,SVPWM的学习也需要思考和总结,才能把看过的知识掌握.这是一个完整工 ...

最新文章

  1. 模板 - Min_25 筛法求素数和
  2. jetspeed 安装及数据库配置
  3. python的工资待遇-python数据分析师待遇有多少?工资待遇如何?
  4. 产生数(Floyd)
  5. 【小白学习C++ 教程】十一、C++类中访问修饰符
  6. 36篇博文带你学完opencv :python3+opencv学习笔记汇总目录(基础版)
  7. linux安装mysql详细过程【easy】
  8. mysql快速上手3
  9. Flink 新场景:OLAP 引擎性能优化及应用案例
  10. MOSS之:DataForm Web Part解析
  11. opencv+Java+android 灰度图像
  12. Microsoft caffe(caffe-windows) cifar实例编译之model的使用
  13. 如何将kux格式的视频转换成我们常用的MP4格式
  14. SAP 货币类型和公司代码的货币设置
  15. 蒙特卡洛仿真的基于Python实例
  16. 数据库设计-视图与中间表的比较
  17. DDD之Repository模式
  18. 拼音搜索 -- 自动解析拼音汉子组合(包含多音字,拼音缩写)
  19. 【图解CAN总线】-6-classic CAN 2.0总线网络“负载率”计算
  20. oracle中修改用户密码

热门文章

  1. 解决Access denied for user #39;#39;@#39;localhost#39; to database #39;mysql#39;问题
  2. Java 文件上传下载管理器(控制台)
  3. 用户空间和内核空间通讯Netlink
  4. linux vi快速删除文本内容
  5. 一款Windows管理Linux的软件
  6. gnome3.2 安装体验
  7. Silverlight学习笔记之文字特效之ImageBrush
  8. 点击更新没反应_Edge浏览器双击无反应?再也不用烦恼啦
  9. Tabhost嵌套以及Tab中多个Activity跳转的实现
  10. 动态规划---最短编辑距离