协议分析及Wireshark使用

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
– 语法:==,!=,>,<, >=, <=,&&, ||, ^^(xor), !, […],()
– eht.src[0:3] == 00:00:83 – 同时支持英语和C语言语法 – 例如: ip.addr==192.168.0.1 – 过滤内容:数据,协议,字段值等等
常用功能
• 保存过滤器 • 查找数据
• TTL
– 暂无用途,需要结合PING/ICMP才能使用
抓包分析KPI——包重组率
• 定义:TCP/IP重组(Reassemble)帧数 / 总 TCP/IP帧数 * 100%
• 包重组率越低越好,正常应该为0。 • TCP/IP重组帧数过大表明中间有路由器不
支持当前设定的MTU
握手成功率
• 定义:SYN请求收到对应ACK的次数 / SYN请求的次数 * 100%
WAP 2.0/HTTP抓包分析
• WAP重定向比率
– 定义:WAP 300~307响应数 / 所有WAP响应数 * 100% – 重定向越多,对无线网络压力越大,重定向数据是无效数据,浪费带宽
• WAP 2.0主要失败原因比例
– 502 WAP网关失败 – 504 WAP网关超时 – 其余50x 服务器端错误 – 400 请求错误 – 404 地址错误 – 403 权限受限 – 其余4xx,客户端错误
ip.addr == 10.1.1.1 显示来源或目的IP地址为10.1.1.1的封包。
ip.src != 10.1.2.3 or ip.dst != 10.4.5.6 显示来源不为10.1.2.3或者目的不为10.4.5.6的封包。
Ip.addr == 192.168.0.1 || ip.addr==202.103.96.68 Ip.port==9000 && ip.addr=61.143.38.40 http,ftp 表达式构建工具
协议分析及Wireshark使用
鼎利通信
为什么要抓包?
• 查找网络故障,网络管理员的帮手…… • 做游戏外挂的分析数据需要使用…… • 做底层协议开发需要使用…… • 学习和理解协议使用…… • 破解及非法用途……
抓包支持的协议(常用)
• 应用层:WAP、FTP、 HTTP、SMTP、POP3、 Fetion、PING……
– 例如display filter:查找192.168.0.1发起的三 步握手建立连接,使用如下字符:
– ip.addr == 192.168.0.1 and tcp.flags.syn
• 复制数据(Copy,导出)
• Follow
– 查看数据非常有用 – 用于查看某次会话所有的发送的数据
捕捉时过滤语法
• 输出:最大值、最小值、平均值
抓包显示参数
• MTU
– 最大传输单元,影响TCP/IP重传率和应用层速率 – 最大,最小,平均值 – MTU正常的值设定:1500(以太网),1492(PPPoE
拨号网络)
• TCP Window Size
– 最大,最小,平均值 – TCP Window Size影响TCP/IP速率
– 影响TCP/IP重传率的相关参数:MTU,ACK超时设定 – 受TCP/IP影响的KPI:应用层速率
• 引申指标:TCP ACK重传率
– 定义:TCP ACK包重传帧数 / 所有TCP IP重传帧数 * 100%
• TCP/IP和无线关系:误帧率/误码率高导致TCP/IP重传, RLP重传增强ACK包的可靠性,避免因为RLP误码或ACK 超时而导致TCP/IP不必要的重传
显示过滤器
英文 eq ne gt lt ge le
C语言 == != > < >= <=
含义 等于 不等于 大于 小于 大于等于 小于等于
英文 and or xor not
C语言 && || ^^ !
含义 逻辑与 逻辑或 逻辑异或 逻辑非
பைடு நூலகம்
snmp || dns || icmp 显示SNMP或DNS或ICMP封包。
抓包KPI——复位率
• 定义:RST帧数 / 所有帧数 * 100% • RST呈现了网络的有效性(可服务能力),
比率越大,网络质量越差
抓包KPI——TCP帧响应时延(RTT)
• 定义:第N帧收到ACK的时间 – 第N帧PSH 的时间,单位:毫秒
• 意义:帧时延能够反映TCP/IP网络响应速 度,可以检查网关设备、路由设备、服务 器的响应速度和能力
前台不足
• 不能抓取PPP过程
– 解决方案:首先拨号,然后设定抓包的拨号网 络,然后停止拨号,此时再启动抓包进程,最 后按正常流程测试
• 未对抓包的数据提供统计、分析、KPI输出 和图表呈现等
• 未对抓包业务数据提供分析报表功能
抓包分析KPI——TCP/IP重传率
• 定义:TCP重传的帧数 / 所有TCP帧数 * 100%,反应应 用层传输质量
如何在WiFi下抓包?
• WLAN,WiFi模式在默认的情况下无法抓包,需要关闭网卡的 混杂模式
例子
• 电信FTP问题
– Pioneer FTP下载不正常
飞信协议分析
• 控制软件 • 抓包 • 分析
如何用好Wireshark?
• 依靠经验积累
• 工具使用简单,但经验不是一下子可以学 会的,依靠大家对协议的理解,领悟能力, 以及敏锐的感觉能力,如同医院那些阅片 的医生一样,会照片的不一定能够发现病 情,还得靠自己的积累。
• 可以给出RLP重传率、TCP/IP重传率、应用层速率等三者 的关系图,可以给出TCP/IP ACK包重传次数和RLP重传 次数的比例曲线。
• TCP ACK重传率很高,则说明网络需要优化RLP对ACK 的重传,将大大提高应用层速率。
抓包KPI——TCP丢包率
• 定义:(TCP帧总数 – TCP收到ACK的帧 数)/TCP总帧数 * 100%
• 协议分析利器,主要是用来抓包及分析网 络数据包格式和协议
• 免费,且是目前最好用的工具 • Wireshark几乎是万能的协议抓包和分析工
具,只要是以太网上的都能抓 • 其他类似工具:Sniffer Pro
Wireshark优点
• 方便使用,与其他抓包工具相比易用的多, 界面也友好的多
• 支持的协议多 • 支持过滤:抓包过滤和显示过滤,强大的
• 握手成功率表明TCP/IP的可服务能力 • 握手成功率依赖网关、服务器的处理能力

抓包KPI——拥塞率
• 定义:标识为CWR的帧数 / 总TCP帧数 * 100%
• 拥塞率越低越好,拥塞率
抓包结合数据分析
• 抓包结合应用层业务可以给出应用层失败 的原因及比例,分类等
• 支持的业务包括:WAP、HTTP、FTP、 EMAIL、SMTP
• 传输层:UDP、TCP、 RTP
• 网络层:IP、ARP、 IGMP……
• 链路层:PPP, PPOE……
• 物理层:以太网、令牌环、 FDDI、X.25、帧中继、 RS-232、v.35
• ……
前台对抓包的支持
• 采用WinPCAP库,和Wireshark一样 • 在拨号之后才能抓包 • 可以支持同时对多个拨号网络进行抓包 • 对抓包数据的呈现:仅仅是显示抓包数据 • 未对抓包进行统计分析
• 支持的语法,类似tcpdump,包括一些关键 字,如and, or, not,|, ||, &, &&,==等符号
• 捕捉来自10.0.0.5的服务器的telnet协议数 据,过滤表达式:
– tcp port 23 and host 10.0.0.5
捕捉过滤器
Protocol(协议)可能的值: ether, fddi, ip, arp, rarp, decnet, lat, sca, moprc, mopdl, tcp and udp. 默认使用所有支持的协议。 Direction(方向)可能的值: src, dst, src and dst, src or dst。默 认使用 “src or dst” 作为关键字。例如,“host 10.2.2.2”与 “src or dst host 10.2.2.2”是一样的。 Host(s)可能的值: net, port, host, portrange. 默认使用“host”关 键字。例如,“src 10.1.1.1”与“src host 10.1.1.1”相同。 Logical Operations(逻辑运算): 可能的值:not, and, or. 否 ("not")具有最高的优先级。或("or")和与("and")具有相同的优先级, 运算时从左至右进行。
表达式功能 • 一边抓包一边分析 • 跨平台 • ……
如何开始?
• 如何抓包?
– 指定接口(Interface) – 指定抓包范围,数据过滤(capture filter)
• 如何查看包?
– 帧结构 – 帧内容
• 如何过滤包?
– Filter express
常用功能
• 协议查看和分析 • 协议过滤
• 丢包率是重要的指标,严重影响TCP/IP的 传输性能,正常情况下丢包率和重传相差 不多
抓包KPI——TCP误帧率
• 定义:Checksum不正确的总包数 / TCP总 包数 * 100%
• 误帧率越低越好,误帧会影响速率
– 但误帧不一定需要重传,而且由于TCP checksum offload功能,不一定误帧就表示一 定不正确需要重传
• 可以列出每一次WAP失败的错误Code信息及其文字描述,WAP失败 详情包括:
– 时间、网关地址:端口、本地IP地址:端口、失败代码、失败原因、请求地 址
FTP 抓包分析
• FTP命令失败详情:
– 时间,服务器地址:端口,下载文件地址,命令, 命令错误代码
什么是Wireshark?
• Wireshark前身是Ethereal, http://www.wireshark.org/download.html
相关文档
最新文档