基于手游帧同步智能预调度算法的王者荣耀体验时延优化研究
瓦联N +应用
nternet Application
基于手游帧同步智能预调度算法的
王者荣耀体验时延优化研究
□付涛中国移动通信集团河南有限公司新乡分公司
【摘要】针对王者荣耀时延高导致用户玩王者荣耀手游感知不佳的问题,提出了利用Wireshark互联网抓包软件,分析研究手游报 文,创新设计了一套利用华为4G的上行智能预调度算法参数进行保障优化手游环回感知时延的方法,提升手游用户的游戏业务感知,为后续持续提升4G手游用户的市场份额打下了坚实基础。
【关键词】王者荣耀手游私有协议帧同步TCP报文UDP报文时延
引言
随着包含王者荣耀在内的MOBA类游戏爆火以及用户数激增,运营商网络的手游业务面临着前所未有
的挑战。这 类游戏对着时延有着极高的要求,特别是在高校、住宅区等热点区域,时延较高,极大的影响用户的感知。
为了体验王者荣耀手游的时延影响,优化工程师A在测试手机上安装王者荣耀体验手机游戏,发现游戏界面右上角显示的时延小于l〇〇m s时,玩游戏很顺畅;时延大于200m s后,玩游戏会出现卡顿现象。于是开展了本次王者荣耀手游时延优化的研究专题,利用上行智能预调度、256QAM等一系列创新方案,有效的降低了游戏时延。
一、王者荣耀手游手机抓包过程简述
1.1解析抓包数据获取王者荣耀交互服务器丨P地址
在电脑上安装安卓模拟器,并下载王者荣耀APP,手机与电脑通过USB数据线共享网络为电脑提供上网服务,使 用W ireshark对游戏过程中的数据流进行抓包分析。解析得到王者荣耀服务器的I P地址。
1.2获取客户端与服务器之间的T C P长连接
分析抓包数据发现游戏客户端与服务器之间建立了一个T C P长连接,游戏客户端通过这个T C P长连接与服务器进行心跳和其它信息交互。
根据抓包数据的通信过程,绘制王者荣耀游戏心跳流程如下:
客户端服务器
请求
tc p ack
旅游哪里好玩应用层环回时廷
troubleisafriend歌词嫡^—--------------------------------------------J
响应
tc p ack
通过观察发现,王者荣耀的心跳请求消息和心跳响应消息的I P报文长度都是124字节。心跳间隔:3秒。当连接上有其它报文交互时,心跳会停止,此时不需要通过心跳来检测服务器工作是否正常;当没有其它报文交互时,每隔3秒 心跳一次。1、从心跳间隔3秒来看,与游戏界面右上角显示时延的更新周期2秒不一致。2、通过心跳消息交互测得的应用层环回时延大约为60毫秒,游戏界面右上角显示的时延为100多毫秒,二者明显不一致。
通过上面的2点分析可以得出:游戏界面右上角显示的时延并不是通过心跳连接测得的环回时延。
1.3客户端和服务器之间交互的U D P报文
进一步观察研究抓包报文,发现只要登录王者荣耀手游客户端,客户端就会和服务器建立一个T C P长连接。当玩家玩第一局游戏时,客户端和当前服务器之间开始交互UDP 游戏报文。玩完一局游戏后,如果玩家不退出手游客户端,接着再玩一局游戏,客户端访问的服务器I P地址会在域名解析得到的I P地址列表中随机选取更换一个I P服务器,更 换服务器的依据待进一步研究推理^
客户端和服务器之间交互的报文,除了 T C P长连接报文以外,还有大量的U D P报文。上行UDP报文:客户端通过上行U D P报文将玩家所做的操作上报给服务器。下行UDP 报文:服务器汇总参加对战的所有玩家的操作,通过下行UDP报文广播给参加对战的所有玩家的手机客户端。
1.4时延测量U D P报文
客户端和服务器之间交互的UDP报文除了游戏报文以外,还有专门用来测量时延的UDP报文,每隔5秒测量一次。服务器端口为:5002客户端-->服务器:UDP报文为60字节,打包成I P报文后为104字节;服务器--> 客户端:UD P报 文为58字节,打包成I P报文后为102字节。游戏端到端时延测量结果,在一局游戏结束后,手机会上报到服务器。
二、创新解决方案研究
2.1游戏时延要求
互联网查询得到的腾讯王者荣耀服务器对环回时延的要求如下:
王者荣耀端到端时延与游戏体验要求:
1 )流畅:l〇〇m s以下
2) —般:100 〜200ms
3 )体验不好:200〜460ms
4)服务器视为丢包,不处理:460m s以上
根据上文抓包分析,推测游戏界面右上角显示的RTT
76
T互联网+应用
丄nternet Application
时延受3个因素影响:网络环回时延、客户端手机的处理时延、服务器处理玩家报文的时延。
2.2网络环回时延研究
2.2.1帧同步机制分析,建立互联网帧同步模型
通过对抓包获取的报文进行大量研究观察,推演出手机终端手游A PP与服务器之间是通过互联网帧同步技术,让 分布在世界各地的互联网上的手游玩家能够联网同步对战游戏的。
立春习俗1 )游戏场景与互联网同步技术研究
参加对战游戏的玩家手机制式(3G/4G/5G/WLAN)有可能不同,而不同制式的无线网络时延差别比较大,很容易出现各玩家的游戏步调不一致的情况。为了避免这种情况的出现,手机游戏开发商在设计时采用了帧同步机制,确保参加对战游戏的各玩家步调一致。
网速理想场景对战游戏的帧同步原理见下图:
服务器收集各玩家上报的各自操作,进行汇总,以固定的时间间隔向参加对方的各玩家广播所有玩家的操作。各客户端接收到广播,知道了所有玩家的操作,按照相同的游戏逻辑进行运算,得到相同的结果,呈现在游戏界面上。
通过上述帧同步机制,基本可以保证参加对战的各玩家游戏步调是一致的。
2)大时延场景对战游戏的帧同步机制:
假定服务器和客户端2之间的网络时延突然变大,导致服务器下发第N+1帧广播时没有收到客户端2在收到第N 帧广播时上报的操作信息,也就是说N+1帧的广播中没有包含客户端2所做的操作,到了 N+2帧才广播给各对战玩家:客户端2玩家会发现游戏突然卡了一下:自己做了某个操作之后很长时间才有反应。
3)服务器广播报文研究
观察一段5v5对战场景下抓取的报文,解析出广播间隔大约是60ms。对本局对战游戏进行全量报文进行统计分析得到如下统计数据:
1、报文大小:最小68字节,最大313字节,平均190.8字节。
2、王者荣耀服务器每隔60m s广播一次,每次广播的报文个数不同,有的场景每次广播1个报文,有的场景每次2 个报文,还有的场景每次3个报文。
4)手机操作上报报文研究
大部分报文大小都是140字节,少量为68字节。操作上报报文的个数应该与玩家所做的操作有关,操作越频繁,操作上报报文个数越。
2.2.2网络环回时延推演
推测:游戏界面右上角显示的时延是通过U D P报文测量得到的。
1)环回时延的测量:服务器测量发出广播报文到收到客户端操作上报报文的时间间隔,作为1个RTT:(Round-Trip Time:往返时间)。2)服务器环回时延的计算方法:对2秒时间内测得的所有RTT取平均。3)手游A P P时延的显示:服务器将平均RTT下发给手游A P P客户端显示出来。
2.2.3利用无线智能预调度,降低无线网络环回时延
无线网络除了我们日常遇到的弱覆盖、高负荷、高干扰、承载网传输瓶颈等问题外,上行预调度的相关算法对网络环回时延影响也很大。
用户数很多的情况下,SRI(上行调度请求指示)调度周期很长,会导致网络环回时延很大。为此创新的提出了利用智能预调度算法来降低网络环回时延。开启智能预调度算法,预调度的数据量应不低于U D P报文中的平均字节长度,经 过大量研究,智能预调度200字节效果较好;智能预调度的持续时长要足够长,经过大量研究,智能预调度持续时长大于两个手游的广播帧周期2*60mS=:120mS效果
最好。
2.3终端性能优化,降低客户端的处理时延
从实际抓包心跳连接统计的时延来看,网络时延只有几十毫秒的情况下,游戏界面右上角显示的时延有1〇〇多毫秒,说明客户端的处理时延还是比较大的。客户端的处理时延主要受手机的性能影响。为了提高游戏体验,建议玩游戏时配置为“性能模式”。
2.4服务器的报文处理时延研究
从实际抓包心跳连接统计的时延来看,正常情况服务器时延大约是l-20mS,但在游戏高峰期,玩家暴增的情况下,
77
瓦联M +应用nternet Application
服务器处理U D P报文的性能受服务器C P U的性能影响,有 可能出现时延陡增的情况,推测腾汛目前推出的游戏加速包就是在游戏高峰期进行的服务器差异化调度的一种减小时延,提升游戏体验的方法,服务器的性能是有限的,V I P付费用户应该优先得到调度响应。
2.5影响游戏感知主要因素
综合上文研究,可以看出影响游戏感知的主要因素可以细分为以下几个方面:1)终端:终端性能、节电模式、用 户行为。2)无线网络:覆盖质量、负荷、调度策略。3)传 输网:接入、汇聚传输环路容量、传输链路带宽。4)服务器:服务器性能差异、服务器与用户距离、服务器流控策略。
由于终端设备及游戏服务器不可控性,网络侧主要通过优化无线网络,调整传输资源降低游戏时延,提升用户游戏业务感知。
三、具体实施步骤及应用效果
3.1无线侧智能预调度算法匹配手游帧同步协议参数优化创新
根据上述研究成果,开启4G无线网络的智能预调度算法功能,设计优化预调度的数据量不低于手游U D P报文中的平均字节长度,智能预调度200字节;设计智能预调度的持续时长匹配手游的帧同步周期130m s,大于两个手游的广播帧周期2*60mS=120m S保证在两个游戏帧广播周期内能够及时响应上报服务器要求的UDP报文。具体措施和脚本如下:
1 )关闭预调度,打开智能预调度
M O D C E L L A L G O S W I T C H:L O C A L C E L L I D=0,U L S C H S W I T CH=PreAllocationSwitch—O&SmartPreAllocationSwitch—1;
2)修改智能预调度字节数到200字节,预调度时间延长到130ms
M O D C E L L U L S C H A L G O:L O C A L C E L L I D=0,P R E A L L O C A T I O N S I Z E=2(X),S M A R T P R E A L L O C A T I O N D U R A T I O N=130;
3.2无线侧调制参数优化提升空口数传效率创新
新乡高校室内场景,已经全部完成4G室分部署,无线信号网络质量较好,为解决空口容量问题,本次研究课题创新使用4G网络的256QAM提升无线口传输效率,打开256QAM算法开关,提升无线网络传输速率,实施MML脚 本如下:
M O D P U S C H C F G:L O C A L C E L L I D=0,U L256Q A M A L G O S W I T C H=U L_256Q A M_S W I T C H-1;
M O D C E L L A L G O S W I T C H:L O C A L C E L L I D= 0,D L256Q A M A L G O S W I T C H= D12 5 6Q a m S w i t c h-1&D1256QamAccessorySwitrh—1;
3.3承载网传输侧优化保障参数调整消除传输瓶颈
分析研究新乡高校区域承载网传输环的网络架构,发现该区域1个传输环下挂站点一般都多于40个站点,传输资源明显存在瓶颈。为验证问题,可以先优化问题站点c m保 障带宽由40Mbp s提升到800Mh ps。后续进行传输环分裂扩容最终解决传输瓶颈问题。
3.4研究应用效果
创新措施执行优化前,新乡科技学院10号宿舍楼投诉游戏卡顿较多,单局卡顿次数10次以上,时延200m s以上 占比40%左右。
新乡科技学院10号宿舍楼执行创新优化措施后,通过端到端的TCP23步时延观察,传输优化过CIR/P1R参数后,时延平均值由103.2毫秒降低至53.6毫秒,无线网络预调度参数精准适配王者荣耀手游协议广播周期后,时延进一步降低至39.2毫秒。详细数据见下表:
•rCP23步平均时延
2020/10/19 0:0091.65
2020/10/200:00107.16
2020/10/21 0:00113.53
2020/10/22 0:00100.72
2020/10/24 0:0064.73
2020/10/25 0:0048.55
2020/10/260:0052.35
35.76
羊肉饺子馅怎么调好吃2020/10/28 0:0044.75
2020/10/29 0:0037.30
2020/10/300:0039.14
103.27
优化前
优化前
优化前
三国演义内容简介优化前
传输优化后
传输优化后
传输优化后
传输优化后
|预调度优化后
预调度优化后
预调度优化后
预调度优化后回访新乡科技学院10号宿舍楼的王者荣耀游戏玩家,游戏非常流畅,基本没有再出现过游戏卡顿现象。
陆续将该创新措施在河师大、新乡学院、新乡工学院、小店职业技术学院进修推广,约解决100多例游戏卡顿投诉。
四、总结
本文提出了通过分析互联网交互报文抓包,推演手游私有协议和帧同步关键参数,进而利用华为智能预调度算法参数优化和传输承载网参数优化改善王者荣耀体验时延的方案,实验数据表明该方案可以大幅度改善手游卡顿体验,提 升用户手游类业务感知,在改善用户满意度和市场推广上有很大参考价值。
参考文献
[1]张新雨张晓林基于U)PC码约束条件的多帧联合帧同步方法m信息通信2020年01期
[2J张波一种提高帧同步性能的方法⑴现代电子技术2018年21期
[31钮远卢海杨等手机h网业务质量端到端分析方法和系统⑴电信工程技术与标准化2016年07期
[4】胡琳欣廖章雄等基于I)P丨大数据的5G手机上网性能自适应评价丨C丨5G网络创新研讨会(2020 ) 2020-09-22 [5]徐付湘手机游戏时延优化研究⑴电信技术2019年S1期
[6】赵根.LTE网络王者荣耀时延优化的讨探[J]信息通信.2018年05期
78付涛(1977年7月),男,汉族,河南洛阳人。全日制本科,工程硕士,2000年7月毕业于郑州大学,2000年8月参加工作,就职于中国移动通信集团河南有限公司洛阳分公司,主要从事于通信无线维护、传输维护、工程建设等方面T.作,于2006年12/〗取得工程师任职资格长期从事通信企业项目管理,团队建设以及通信业务管理工作,先后担任漯河移动副总经理、河南移动网络部副总经理,现担任新乡移动副总经理。杨幂 马天宇

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。