我靠,又卡了!谁来为网络延时买单?
- 来源:计算机应用文摘 smarty:if $article.tag?>
- 关键字:网络延时,网络游戏,服务器 smarty:/if?>
- 发布时间:2013-10-26 09:44
当你在DotA的世界中激战正酣,队友们都整装待发准备上高地的时候,身为近卫军团大后期的你一身神装却站在原地一动不动……。“我勒个去!又掉线了……”作为一个征战沙场多年的游戏玩家,这种事情相信大家都经常会碰到吧?当然,如果你玩的是DotA这类竞技游戏还好,除了分数外,没有多大的损失。但如果这时你玩的是某款土豪云集的网络游戏,你和仇家正在进行一对一的殊死搏斗。输的一方不但会声誉受损,还会随机掉落身上一件价值不菲的装备……。而就在这时,对方就差一击就被毙命,而你却怎么也挥不出那致命的一刀……,“与服务器的连接已经断开”。好了,我也不问你看到这行字时的心情了。
在各个游戏的论坛里,每天都可以看到很多玩家因为网络原因在吐槽游戏厂商和中国的网络现状,但喊了这么多年,实际情况也没有好转。再NB的游戏或运营商都避免不了这个问题的发生。那么,网络延时的存在,到底是谁的错呢?游戏运营商、网络提供商还是游戏本身呢?而谁又该为我们损失的时间和精力负责呢?今天,就让我们来讨论下这个困扰了大家多年的问题。
因网游延迟造成的损失有多少?
在网游世界中,无论是大型3DMMORPG网游如《魔兽世界》、2D横板网如DNF以及竞技对战游戏如DotA,甚至是休闲游戏如《斗地主》,网速或多或少都成为了玩家实力的一部分。有时,我们甚至可以这样认为—屡次与成功、与装备擦身而过,与超神的失之交臂,甚至英雄救美不成功,这都与网速的好坏有一定的关系。
那么,因为网络延时问题,我们到底损失了多少金钱或者时间呢?这个问题不好回答,因为没有一个量化的实际数据。有的人可能损失的只是几分钟时间,有的人损失的则可能是价值不菲的装备与来之不易的等级。
截至2012年底,中国网络游戏(包含多平台用户)用户规模达到3.36亿。如果假设平均每个游戏用户每天的网络延时时间累积为1分钟,然后根据全国网吧的平均收费每分钟3分钱人民币左右计算,那么每天中国玩家因为延时失去的金钱就是1000万元人民币左右,一年下来就是30亿元人民币左右。
即便是举了个损失最低的假设,其数目也让人有点不寒而栗。那么,这笔损失该由谁来承担呢?游戏运营商、网络提供商或者玩家自己?
在回答这个问题之前,还是先让我们来了解几个与网络延时相关的问题。看过之后,大家自然就会明白责任在谁哪里了。
网络延迟是如何出现的?
在大多数人的想象中,我们的游戏数据在到达运营商服务器后,经过运算就回来了。比如你在游戏里下达一个攻击的指令,当这个指令传达到服务器并经过计算之后,就返回这次攻击的具体数据,比如伤了92点血、对方没有闪躲掉等。理论上来说,这种想法是正确的,但实际上数据传达的方式要比大家想象的复杂得多。
节点因素
打个比方,无论是电信或者联通的宽带,它们在国内大小城市都会设置服务器节点。比如河北省省会石家庄有联通公司的一级节点,那么河北省其他县市会部署许多从属于这个一级节点的二级节点,更小的乡镇有从属于二级节点的三级节点。我们传输的数据经过的节点越多,其网络延时就更高。简单点来说就是,数据每经过一个节点,其延时就要增加一点。
目前,国内许多游戏厂商大多都是租用网络运营商的服务器,同时为了节约成本,租用的服务器常常位于二级在三级节点,因为高级别服务器节点的租用价格甚至会是低级别节点的10倍。然后每组服务器获得的带宽却是一样的,每组100Mbps带宽。好了,到这里问题就出现了。
假设一个游戏的服务器放置在某个城市的三级网络节点,那么无论玩家的网络有多给力,其网络延时都不会太好。反之,如果服务器放置在某一级网络节点,那绝大部分玩家在访问的时候,体验都会好很多。
举个例子,某玩家所在的城市网络属于河南省联通公司的三级网络节点,他需要连接到厂商租用在安徽省联通三级节点的服务器,那么这里ping的计算就经常会是15ping(河南省三级节点)+15ping(河南省二级节点)+15ping(河南省一级节点)+15ping(安徽省一级节点)+15ping(安徽省二级节点)+15ping(安徽省三级节点)=90ping,这还是排除所有其他因素下的“数据单程旅行”理论值,如果你的游戏数据将要跨网络运营商的话(如从联通到电信),那么会有更高的ping值。
看到这里,也许你会说,原来网络延时是由服务器所在地产生的啊!因此,网络延时造成的损失就应该由租用服务器的商家,即游戏运营商承担咯?呃,单就这一点来说,这样讲没错。但实际上,形成网络延时的因素并不止这一点。
游戏服务器因素
很多人都觉得,人越少,服务器就越流畅,这是大家玩网游时最直观的感觉。但有时候,即使服务器的人很少,大家也会觉得卡,这是为什么呢?
这是因为每组服务器一般由十台左右的服务器组成,按照目前每组服务器100Mbps带宽来算,每台服务器一般可以分得十分之一左右的带宽。每台服务器会负责游戏中几个区域或者地图的数据运算工作。但如果这个时候有数百个乃至更多的玩家都挤在其中一张地图上,那么这个区域的数据就会出现卡与拥堵等现象。连带着,整组服务器都会陷入延迟甚至宕机状态。
还有就是,有时候一个游戏区对应的一组服务器在测试阶段得出的理论峰值是3000名玩家,那么运营商处于成本的考虑,在游戏正式运营后会减少服务器的量,因为每个区的玩家不可能一直处于峰值状态。这种投入对于运营成本来说是很科学的,但是对节日或是突如其来的上线高峰是是无法应对的。
另外,除了外在的减少服务器,对服务器压力把控不准确等因素。内在原因也会造成网络延时的极度增加。
很多游戏厂商都把服务器当作家里的PC电脑来用,买一次用好多年。而且老的服务器跑不动之后,还不能退役,换到要求低一些的游戏中继续使用。这也是为什么某些玩家人数较少的2D游戏的服务器也不稳定的原因。
近几年,虚幻3引擎打造的游戏被行业和玩家津津乐道,甚至一度成为顶级游戏的标配,不过虚幻3引擎打造的游戏平均一年报废一轮服务器的速度也让其他游戏引擎望尘莫及。所以大家在选择游戏的时候也要注意了,通常来说,一般的中小型游戏公司即便开发出了用虚幻3引擎制作的游戏,也很难承担得起这笔不菲的服务器费用。
从服务器这边的情况来看,造成网络延时的原因有两点—游戏运营商为了节约成本而减少服务器;游戏引擎对硬件要求太高,运营商硬件的更新跟不上节奏。再综合前面的服务器地点的选择原因,造成网络延时的罪魁祸首大家心中应该清楚了吧?其实就是游戏的运营商。可能还是会有人不赞成我的说法—难道中国的网络环境一点问题都没有吗?
从客观上来说,中国的宽带连接速度虽然略低于全球水平,更不可能跟韩国与日本等地对比。但对于网络游戏来说,还是够了。因为即便是像《魔兽世界》和《剑网3》这样的大型MMORPG网游,其游戏所占的带宽也就几十kbps。而我们现在所使用的宽带最低也是2Mbps的了吧(互联互通以及假宽带不在本次的讨论范围内)?所以抛开中国网络与发达国家的差距不说,中国的网络环境对于网游来说是合格的。
综上所述,无论中国的网络建设与性价比与其他国家有多大差距,至少它在没有出现故障的时候是不用为网络游戏的“卡”负主要责任的。当然了,如果你和室友下在American片,或者网线被老鼠啃了,再或者路由故障了……,那就当我没说过。
编后语
可能每个人在遇到网络延时过高或者崩溃时的反应都不一样,但大部分人应该都是郁闷或者不舒服的吧?其实在策划这篇文章的时候,作者只是想简单地分析一下造成网络延时的原因,并不是想一味地谴责游戏运营商,因为即使在欧服或者美服,某些游戏也会出现卡得一塌糊涂的情况。但在实际的了解过程中我们发现,很多时候国内的游戏环境不好,是因为运营商对于服务器的成本太过于“精打细算”了,很多能妥善解决的问题被搁置了……。所以,在各大游戏厂商大势吹捧自己的游戏有多华丽,有多好玩的同时,是否也要强调会让玩家的游戏环境更舒服呢?
■得了
