利用WireShark对手游的协议抓包
最近项目上被吐槽登录和断线重连太卡。为什么王者荣耀和乱世王者的重连瞬间就好了?这需要抓包看看他们重连都经历了什么。
1.准备工作
首先去官网下载wireshark,地址:https://www.wireshark.org/download.html
安装完wireshark,同时PC上安装android模拟器,同时模拟器中安装好游戏。最好安装一个可以控制网络连接/断开的模拟器。我用的是夜神模拟器:系统设置》属性设置》网络连接 来设置。
2.如何定位和手游的连接
打开wireshark运行并开始捕获协议时,会发现我们PC上在联网状态下,即使你什么都不做也是每秒产生大量的通信。那么如何快速定位你想观察的那款游戏的收发包?
1.首先推测协议类型,一般手游是tcp/ip的,所以看tcp/ip部分的变化
2.通过连接和断开的握手协议来区分。我们点击关掉游戏,一定会产生TCP关闭的握手,然后再点击进入游戏,会产生建立连接的握手。
关闭应用时:客户端向服务器发送[FIN ACK] 》服务端相应[FIN ACK] 》 客户端相应[ACK]
建立连接时:客户端向服务器发送[SYN] 》服务端相应[SYN ACK] 》 客户端相应[ACK]
上图满足特征,所以判断出服务器的端口号是12258。
所以上方绿色地址栏中的过滤表达式可以写成:tcp port eq 12258,即可过滤出和游戏服务器所有的手法协议。
3.分析比对和总结
原先我一直认为我们游戏的登陆协议设计太重,接口多且数据量大。但是抓包发现那款优质的竞品游戏重连时数据量是略大于我们的。区别是它们是大量的[PUSH ACK]推送,我们是50多次的request和response。竞品整个重连过程大概耗时不到一秒,但我们时把50多条协议串成一个队列,每次收到响应才发送下一条。相当于把网络延时放大了50多倍。这一块改好了,重连的压力也就不大了。
同时,wireshark对我们日常开发因为有很大帮助,尤其项目初期刚刚搭建联调网络的时候,前后端的打点都不可信,唯一可信的就是它了。抓个包,前后端再也不争吵协议到底发没发,发的格式对不对了。
利用WireShark对手游的协议抓包相关推荐
- Wireshark数据抓包分析(网络协议篇)第1章网络协议抓包概述
Wireshark数据抓包分析(网络协议篇)第1章网络协议抓包概述 网络协议是用于不同计算机之间进行网络通信的.网络协议是网络上所有设备(如网络服务器.计算机.交换机.路由器等)之间通信规则的集合,它 ...
- ICMP协议抓包分析-wireshark
ICMP协议抓包分析-wireshark ICMP- (Internet Control Message Protocol,网际报文协议)是Internet协议族的核心协议之一,也可称为是网际控制报文 ...
- HTTP协议版本介绍以及使用Wireshark工具针对HTTP进行抓包分析详解
一.http协议版本介绍 http:Hyper Text Transfer Protocol 超文本传输协议,是互联网应用最为广泛的一种网络协议,主要用于Web服务.通过计算机处理文本信息,格式为HT ...
- TCP协议抓包分析 -- wireshark
TCP协议抓包分析 – wireshark TCP- (Transmission Control Protocol,传输控制协议)是一种面向连接的.可靠的.基于IP的传输层协议.它的主要目的就是为数据 ...
- UDP协议抓包分析 -- wireshark
UDP协议抓包分析 – wireshark UDP是User Datagram Protocol用户数据报协议的简称.他是OSI七层模型中一种无连接的传输层协议,提供面向事务的简单的不可靠信息传送服务 ...
- ARP协议抓包分析 -- wireshark
ARP协议抓包分析 – wireshark ARP- Address Resolution Protocol协议,即地址解析协议.该协议功能就是将IP地址解析成MAC地址. 在发送数据的时候,只知道目 ...
- Wireshark手机等移动设备抓包
Wireshark手机等移动设备抓包 手机.pad在访问网络时会有数据交换,请求的数据从你的手机上的无线网卡发送出去,经过运营商的各种操作后把该请求数据送到了目的地址--请求数据所在服务器的网卡,服务 ...
- http抓包实战 pdf_网络协议HTTP 协议(抓包实战和网络分层)
这篇文章主要介绍一下 Wireshark 抓包工具获取到的 HTTP协议 相关的数据,然后对这些数据进行简单的分析,主要目的是更深入的理解 HTTP协议,然后了解一下网络为什么要分层, OSI模型和T ...
- 使用wireshark对grpc的helloworld抓包分析
使用wireshark对grpc的helloworld抓包分析 wireshark的抓包全貌图 主要帧头 主要帧头分析 grpc的code码 总结 参考链接 wireshark的抓包全貌图 [客户端] ...
最新文章
- FPGA的设计艺术(15)逻辑设计及仿真利器之各式各样的循环
- foxmail收件不及时_临近双11,多地快递网点却不送货、欠薪、倒闭?啥原因→
- java1234小峰推荐书籍_java1234 webservice 第2 课 cfx实现
- Calculation控制台
- 雾山五行专题高清壁纸,绝美动漫场景
- Linux下导入SQL文件
- 基于Linux操作系统的底层驱动技术
- java中普通变量、静态变量、静态代码块初始化的顺序辨析
- 马哥SRE第七周课程作业
- 青蒿素发现者与两外籍科学家共获诺奖
- html手机号显示错误,手机号码被错误标记有救了 联通开通了查询清除服务
- MacBook Air 2015换硬盘
- ubuntu 22.04右上角找不到wifi图标,有线网络也失效
- 快速接入 微信微博QQ钉钉 原生登录分享
- C语言【程序19】题目:两个乒乓球队进行比赛,各出三人。
- 电路方案分析(十)2 端口 USB 3.0 集线器参考方案设计
- EXCEL表格转化为XML格式文件
- 阿凯的第一个作品---自我介绍
- SCT52240STDR,SCT52240MTER,SCT52240QSTDR,SCT52240QMTER,栅极驱动器
- ubuntu无法添加PPA
热门文章
- 【JavaEE学习日记】----多线程基础(下)
- 华为荣耀v20是android10,华为荣耀v20适配安装EMUI10.0简约风格主题
- L3-025 那就别担心了 (30分)
- 网络规划.弱电CAD设计规范
- 【ROS2知识】SQLite数据库
- java/php/net/pythont电影票订票系统设计
- 二次调频,4机2区系统二次调频,用模型方法对四机两区系统进行了二次调频分析
- 线上自用防伪系统源码,可以商用,后端java,前端uni-app
- NGINX服务搭建详解
- 毕业论文关键字HTML5,毕业论文中关键词应该怎么定