-
Notifications
You must be signed in to change notification settings - Fork 25
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
实际测速XTLS和TLS相差不大 #2
Comments
看起来像是网口最高速率到了上限,所以一致,所以不能看出性能体现的差异。 |
建议调整控制硬件性能,不使网络速度上限成为瓶颈,然后对比性能差异。 |
性能对比测试不是吞吐量上限测试。 也需要确定产生原始数据的网站的性能和到你服务器的带宽不是瓶颈(比如用speedtest时你选择的server/用iperf做测试时自己的生成初始数据流的硬件),不然测试出来就是他们的上限而已。 在瓶颈仅仅是你的测试软件的客户端或服务端硬件时,才能对比出相应的不同工具或协议组合的客户端性能或服务端性能差异。 |
同一机器,且客户端和服务端网络都没跑满。服务端运行speedtest结果:https://www.speedtest.net/result/c/65f43ec1-c18b-4751-b85d-16b6c9bdfa99 |
这差别不是挺大的吗?500mbps耶,有20%了 |
这个测试有很多可能限制在2.5G到3G的原因。 如果客户端和服务端的硬件的CPU都没有跑满。 也可能影响来自比如你服务端到客户端之间的网络速度限制。(可能性较小 即使跑满,也有一些影响因素,比如你的客户端设备在处理多种事情。 要测试协议之间性能差距,那么必然是硬件CPU负荷满的情况下,其他变量不变,仅有协议组合差别下测试的情况才是有意义的。 尽量把所有环节拆开,比如你的测试现在客户端同时跑v2core,客户端程序和浏览器网页处理TLS测速数据,可能还有一些其他系统开销(未知系统是什么系统),客户端程序本身也会带来干扰,那么即便CPU拉满,也未知其中CPU占用的互相影响。(可能正是因为如此才卡在3Gbps) 因为是测试性能的实验环境对比,精确的环境很重要。 建议把v2服务端和客户端,浏览器,分开成三台完全独立设备,直接使用core测试而不是其他客户端,关闭不必要的设置,并且控制性能使测速时v2或xray满负荷其中一台CPU(建议是客户端,因为实用场景中客户端情况限制较多)来对比。 |
至于有没有200%确实也不尽然。 但因为有和没有readV存在的区别。即便高性能设备,性能差距也应该不会只有20%。 (另外不知道客户端本身,以及一些设置是否会有影响,建议直接core比较好) |
还有一个原因,如果测试时是服务端的设备CPU满负荷 |
以上 @dhshfv |
测试的主要目的是给开发做参考,帮助他们优化,比如可以看到我仓库中有针对ds/统计/以及xtls一路开发过程中,各个流控模式各种TLSrecord大小的各种针对测试。 当然测试同时也可以告诉用户在不同使用模式下,或不同程序版本下性能有差异(并不是一定差多少)。 因此测试实验需要尽量细分和精确。 这本身也确实代表实验环境下的差异,并不表示绝对差异,也更不是每个人使用后的性能提升。 XTLS的性能提升,或其他一些优化/参数设置带来的性能影响或提升,本来就是不是定值。 |
建议直接使用core去掉第三方客户端的影响 你客户端一侧的浏览器,core,第三方客户端,全在同一硬件,浏览器处理测速数据TLS就会吃掉很大一部分资源,变成瓶颈和关键因素, 最后,最好确认整个测试中瓶颈在哪里,看一下各部分的CPU负荷是否满,哪一部分满。 |
客户端和服务端都未能跑满cpu,又未能跑满网速... 从两个图中,xray和v2ray的CPU占用率来看,似乎xray明显占用低很多(网速相同的情况下) 所以感觉还是因为某些原因导致瓶颈,限制在了3.5Gbps...这个暂时猜测不出什么端倪. 话说你浏览器/speedtest cli 这端的机器cpu跑满了吗?(是不是这里的瓶颈) |
speedtest-cli占用50%CPU,机器直接speedtest结果https://www.speedtest.net/my-result/d/47414aaa-a300-4e09-b693-43ef83409159 |
下载这个瓶颈比较奇怪...我暂时不太能想到是什么造成的 |
截图的cpu占用率是服务端还是客户端的?确定两端都没跑满吗? |
截图是客户端,服务端和客户端是相同硬件的机器,服务端是Debian 10更不可能跑满 |
这确实有点奇怪,所有的硬件CPU都没跑满,网速也没跑满...所以产生瓶颈的是哪里呢. |
我觉得测试方式现在没什么问题,但造成下载瓶颈的原因暂时想不到. |
想不出瓶颈原因.或者不用Qv2ray,客户端直接运行core再试一下? |
非常感谢做了这么多的测试,现在我能想到的原因就是qv2ray,统计(但是direct理论上不受到统计的影响才对). 建议可以不用Qv2ray,客户端直接运行core,把服务端和客户端配置文件的统计关掉(删掉stats),再测试下. 感谢. |
同意你的观点,实际相同的网速 |
这就说明别处有瓶颈,导致网速在这个限制,还没想到比较靠谱的可能. |
因为都没满载,就说明有别的原因制造了这个速度瓶颈 |
对于性能差距已经测得很清楚了,2vCPU,下载都没满载就不看,上传xray116.9%没满载,v2ray191%等于满载。根据上传速度可得单位性能吞吐量分别为30.7, 16.3,两者相差明显,但还是与此处所述不同https://raw.githubusercontent.com/badO1a5A90/v2ray-doc/main/performance_test/Xray/img/xray20201202.png |
这个问题我觉得我文档中的说明就给予了解释:
并且,上传的话,客户端的readV不起作用,也可视作少了很多性能优化,readV大约性能可以提升2 ~ 3倍 |
建议增加无aes硬件加速性能排行。那个更有看头 |
主要是没有设备搭建比较理想的测试环境. |
相同机器,xray 1.0.0 xtls-rprx-direct和v2ray-core 4.33.0 vless-tcp-tls,速度相差并没有此处所述的那么大https://github.com/badO1a5A90/v2ray-doc/blob/main/performance_test/Xray/speed_test_20201124.md
The text was updated successfully, but these errors were encountered: