大疆社区

标题: 怪不得DJI GO同步飞行记录如此慢 [打印本页]

作者: 杉木    时间: 2016-3-5
标题: 怪不得DJI GO同步飞行记录如此慢
本帖最后由 杉木 于 2016-3-5 02:57 编辑

今天在研究点东西,在抓IPAD的网络数据包,顺便抓了DJI GO的网络访问数据。

发现DJI GO同步飞行记录的服务器域名是mydjiflight.dji.com,对应ip为54.147.234.76



而经过查询这个IP是 美国亚马逊机房的服务器


本地ping这个服务器100次的丢包率是34%,ping延迟在400 - 560间。


我本地的网络是电信20M光纤,测速下载2M/S (实际满速是2.5M/S,因为我在路由器做了限速,所以单机最高2M/S)

通过测试,白天一般情况下下载速度大约是10-35kb/s左右,情况好的时候能达到40-70kb/s,偶尔网络好时能达到100kb/s(发表前凌晨1点半后测试偶尔可以),人品超好的时候例外。平均速度在20-40kb/s间
由于丢包率高,经常会出现连接超时的情况(从dji内部的同步记录文件看到)。

而通过比较总结,IOS版APP内飞行记录文件大小大约计算方式如下:(仅代表个人观点)
每记录一秒大约产生0.9-1.3kb的数据,每拍一张照片大约生成15-50kb左右的缩略图(每条飞行记录最多取4张)
(备注:好像早期的记录数据尺寸比大一点,照片尺寸比小;现在记录数据尺寸小了,照片尺寸比增大了。可能是增加了缩略图的清晰度。另外数据尺寸比例和操作的复杂度有关,没有gps信号且没有操作遥控杆量 肯定比 有gps信号操作遥控杆量的记录数据量大)
文件大小=飞行记录秒数*1.1kb+照片数*20kb
这样大约就能计算出来飞行记录的文件大小了。

而网络传输过程中,飞行记录是经过压缩传输的,没有图片的记录文件大约压缩率大约在0.38-0.4左右,带4张图片的记录文件压缩率大约在0.45-0.6左右。缩略图复杂、清晰,则压缩率数值越大越接近1(进行取样比较,不绝对,)

比如说你一条飞行记录是10分钟的长度也就是600秒,生成的飞行记录文件大约是600kb,而网络传输时的压缩数据大约是240kb左右。

这里取我一条实际飞行记录来说明,飞行记录时间是9分29秒总计569秒,另外有4张清晰度还不错的缩略图,对应的飞行记录文件是881kb,网络传输的压缩数据是529kb,比率是0.6。


上边是APP中的飞行记录截图,下左是网络传输的压缩文件,下右是对应的飞行记录文件

而按同步的平均速度35kb/s来计算,需要下载秒数为529/35=15。而网络情况好一些时比如在写这段时已经快凌晨2点,用软件测试甚至能达到100kb/s,也就是4秒左右下载完毕。

如果按每月玩5次,每次累积飞40分钟算,一个月的飞行记录时间长度是200分钟,也就是12000秒,按都没有缩略图来计算记录文件总大小为12000kb,网络传输总大小按0.4比率计算是4800kb,按平均35kb/s的速度计算要137秒下载完。

如果再加上连接加密数据通道以及解压压缩数据以及数据丢包重连的时间,可能要接近160秒左右,也就是接近3分钟的同步时间。(感觉这个时间不是很准确,因为网络速度确实很不稳定,经常遇到10-30kb/s的龟速。。70kb/s以上的速度真的很少见)

如果你同步的是6个月甚至是全部记录时,那么同步记录需要的时间就真的可以让你去吃个饭喝喝茶洗个澡了。

由于写到这里时,账号服务器突然500挂掉了(天空之城登陆页验证码无法显示为证),DJI GO变成了未登陆状态,我也没法再仔细测试了。

网络传输速度的测试,DJI GO APP内实时下载速度、通过代理传输速度、直接电脑上下载数据的速度各不一样,且速度很不稳定,具体的速度我也没法肯定。但平均35kb/s是差不多的。


最后,还是希望DJI能优化飞行记录存储服务器的部署,国内这么多用户,怎么也得在国内部署一个存储服务器吧?美国服务器访问速度还是慢的多,延迟500ms和30%以上的丢包率 导致体验很差的。

或许你们公司专线网络访问很快,但这个要站在用户的角度去测试实际的使用体验效果,应该用国内普通家用网络来进行访问速度测试,不是吗?

如果你们担心数据托管在国内,会带来数据泄露、被相关部门审查的话,给国内用户一个选择权,选择是否以国内空间来作为主要记录存储空间也好。
感觉不是很说的通,飞行记录数据都是压缩过的,反正我是没有能解压开(⊙︿⊙) 或许是服务器成本问题吧

ps:论坛不支持emoji表情感觉好不开森


好了,回顾下来,感觉这篇文章其实是一篇装X文 …(⊙_⊙;)…
我还是洗洗睡吧。


另外,抓包时,意外发现了后台机制存在一个设计隐患,比如可以爆反馈系统的菊花呀、直接查看所有在app发的反馈信息。。。

下面是部分反馈的内容,还有反馈者的联系方式都是明文的就不截图出来了。


秋香你们看着办吧,我可以给你们发详细的说明,回我一个邮箱。
如果觉得不重要,那我也只能耸耸肩膀了。




作者: badcat    时间: 2016-3-5
白帽?
作者: PlayDog    时间: 2016-3-5
楼主很牛的样子
作者: 0ldPil0t    时间: 2016-3-5
美国服务器体验差,原因是什么,大家都懂。尤其是亚马逊的云服务器,都不知道是不是为了打压商业对手,对它各种墙堵。改用科学上网,就舒坦。 大疆对中国玩家已经很照顾,妥协很多了。 要不是中国油管-YouTube用不了,才不会弄个太空之城给你们。浪费钱体验还不好。
作者: 大信    时间: 2016-3-5
非常赞赏楼主的科学实践精神,用具体的技术分析、数据来说话,非常有说服力。
ipad的问题我很早就向大疆反映过了,说升级版本解决。结果新版本来了以后,iOS平台的设备上传飞行记录失败概率一飞非常高。 而且还出现了飞行记录越同步越少的怪异现象

作者: 杉木    时间: 2016-3-5
<div class="quote"><blockquote><font size="2"><a class="nopicture" rel="noopener" href="https://bbs.dji.com/forum.php?mod=redirect&goto=findpost&pid=493692&ptid=47122" target="_blank"><font color="#999999">badcat 发表于 2016-3-5 07:46</font></a></font>
白帽?</blockquote></div>称不上,最初级的一些东西而已

作者: kwbing    时间: 2016-3-5
终于明白了为什么上传飞行记录那么操蛋的原因了.
作者: 杉木    时间: 2016-3-5
<div class="quote"><blockquote><font size="2"><a class="nopicture" rel="noopener" href="https://bbs.dji.com/forum.php?mod=redirect&goto=findpost&pid=493792&ptid=47122" target="_blank"><font color="#999999">0ldPil0t 发表于 2016-3-5 09:05</font></a></font>
美国服务器体验差,原因是什么,大家都懂。尤其是亚马逊的云服务器,都不知道是不是为了打压商业对手,对它 ...</blockquote></div>即使现在,同步的体验也不怎么样。总不至于用一家中国公司的产品还非得学会科学上网。
通过观察,DJI所使用到的各种资源(头像、照片等)确实大量使用了cdn网络(比如大量使用七牛的cdn),效果还不错。只是飞行记录确实只有国外服务器。
作者: fish_xiaozhao@1    时间: 2016-3-5
终于明白了为什么上传飞行记录那么操蛋的原因了.还他妈的老是失败
作者: 杉木    时间: 2016-3-5
<div class="quote"><blockquote><font size="2"><a class="nopicture" rel="noopener" href="https://bbs.dji.com/forum.php?mod=redirect&goto=findpost&pid=494696&ptid=47122" target="_blank"><font color="#999999">fish_xiaozhao@1 发表于 2016-3-5 17:45</font></a></font>
终于明白了为什么上传飞行记录那么操蛋的原因了.还他妈的老是失败</blockquote></div>昨晚发文章时还有很多地方没测试,今天白天抽空测试了下发现一个更麻烦的问题,之后我详细测试后再补充一下,或许大家就该更郁闷了。
前边说的主要还是下载速度,还没说上传速度呢,上传速度会更慢,比如说上传一条飞行记录要30秒以上几乎1分钟。。。然后你想。。。
至于其他的,等我新贴

作者: fish_xiaozhao@1    时间: 2016-3-6
<div class="quote"><blockquote><font size="2"><a class="nopicture" rel="noopener" href="https://bbs.dji.com/forum.php?mod=redirect&goto=findpost&pid=495071&ptid=47122" target="_blank"><font color="#999999">杉木 发表于 2016-3-5 21:07</font></a></font>
昨晚发文章时还有很多地方没测试,今天白天抽空测试了下发现一个更麻烦的问题,之后我详细测试后再补充一 ...</blockquote></div>老是失败哎 这个做的真是受不了啊。。。

作者: 杉木    时间: 2016-3-7
<div class="quote"><blockquote><font size="2"><a class="nopicture" rel="noopener" href="https://bbs.dji.com/forum.php?mod=redirect&goto=findpost&pid=495881&ptid=47122" target="_blank"><font color="#999999">fish_xiaozhao@1 发表于 2016-3-6 11:32</font></a></font>
老是失败哎 这个做的真是受不了啊。。。</blockquote></div>这两天工作忙的没空测试发文章,看看今晚有没有时间发了

作者: speedchl    时间: 2016-3-9
DJI应该考虑一下分区域设置服务器吧!国内的数据传到帝国去不太合适毕竟飞行记录里面有很多地理信息。
作者: llx8226727    时间: 2016-3-12
我最近也总是失败,我的飞行经验已经几十年没有增长了,怎么飞都不涨
作者: lvhai22    时间: 2016-3-12
终于明白了为什么上传飞行记录那么难,无论你用什么网络!
作者: OsitaLV    时间: 2016-3-21
你可别忘了,DJI是美国公司
作者: 诸科杰    时间: 2016-5-20
杉木加一下QQ好么 1989795635 有事找你




欢迎光临 大疆社区 (https://bbs.dji.com/) Powered by Discuz! X3.2