我要投稿
  • 您当前的位置:57365.com -> 技术教程 -> 网站建设教程 -> Alexa相关 -> 教程内容
  • [ 收藏本页教程 ]
  • 内幕调查:出卖Alexa(中)Alexa相关教程

    教程作者:佚名    教程来源:不详   教程栏目:Alexa相关    收藏本页
    受记者委托,圈内著名的Web技术专家小林,用了近一个晚上的时间,对Alexa工具条及其向Alexa返回的数据进行了细致的分析,得出了很多宝贵的第一手资料。多年前对Alexa就做过研究的小林认为,最近的这次分析揭示了一些Alexa更隐秘的技术细节。

        小林告诉记者,现在最新版本的Alexa工具条的运作机理与以往没有太大的改变,每当用户以装有Alexa工具条的IE浏览器打开新页面时,Alexa的一台服务器(data.alexa.com)都会收到加密的数据包,这个数据包中的核心信息就是十几个参数,这些参数包括当前网页地址、页面打开时间、用户端显示分辨率、Alexa工具条版本号、该用户是否为“亚马逊”的用户等,其中有一个重要的隐含参数,经小林分析,认为是Alexa为每个已安装的工具条自动生成的ID号码,这个号码应该是全球惟一的。Alexa可以通过这个ID对每个反馈数据包的发出者进行惟一标识,这是解决PV重复计算问题和防止同一用户多次刷新作弊的一个重要手段。

        小林告诉记者,从目前研究的结果来看,任何一个汇编高手都可以很容易地掌握Alexa工具条返回的数据包中的秘密,如果这个人同时也是一个网络编程高手,那么要针对Alexa作弊就比较容易了。从记者后来对一位上海的Alexa作弊高手的采访来看,小林的分析完全正确。该作弊者正是一位资深的Web开发工程师,其采用的手段与小林的分析也基本吻合——编写一个Alexa工具条返回码生成器,批量产生Alexa能够辨识的代码串,然后用虚拟多用户的方式发回data.alexa.com,这样就可以欺骗Alexa的服务器,让它误以为这些数据是不同用户发来的(征得该作弊者本人同意,本专题在最后公开了记者与该作弊者的网上聊天实录)。

        小林认为,这种以编程方式模拟多用户访问的作弊方式的实现,最重要的环节就在于对那个Alexa用来惟一标识用户身份的ID号的生成算法的破解,这需要对足够多的Alexa工具条进行嗅探,抓取其数据包进行定量的算法分析。但小林同时也指出,这些工作对于一个编程高手来说,确实不算什么,只是最终作弊的实现仍需要模拟一个足够快的ID号生成程序,这可能会比较困难,不过据小林估计,国内能做这些事情的人不在少数,只是互联网这个圈子里的高手们很少去做罢了。

        从以上的技术分析来看,Alexa的服务器每天所做的工作就是不断接收全球用户传回的数据包,提取其中的那十几个参数并写入专门的数据库,然后在某个特定时间对当天收集到的这些数据进行分析计算,并以新的计算结果去更新当日的网站排名。据记者观察,这个数据库的分析结果至少会保存三年之久,因为在Alexa网站上对每个网站的Rank排名变化趋势图最多能提供三年来的数据变化。

        在破解了工具条的DNA之后,记者还与一些朋友探讨了Alexa工具条在全球的分布情况。按照Alexa的说法,工具条是它惟一的信息获取来源,那么工具条在全球用户中的分布也就成了另一个可以影响Alexa排名的重要因素。如果工具条真的是Alexa数据的惟一来源,可以想象,当中国网民都没有安装Alexa工具条的时候,新浪搜狐这样的门户网站恐怕在Alexa排名中都见不到影子,可是今年下半年以来,新浪和搜狐就已经紧随Google排在全球第四和第五的位置了,这似乎说明了Alexa工具条已经在中国具备了较高的普及率,否则,新浪、搜狐以及紧随其后的占领了Alexa全球500强中近1/3份额的中国网站就都有作弊的嫌疑。

        幸好记者的一位朋友曹政提供了令人欣慰的数据。作为网站流量分析专家,曹政在www.tong123.com上为多达2000家国内各类网站提供长期的流量监测与统计分析服务。曹政的流量分析与Alexa的不同,Alexa不在被监测的网站上做任何事,而tong123.com对网站进行页面内嵌方式的第三方流量统计。受记者委托,曹政临时在其数据采样分析器里加入了对Alexa工具条的监测。经过一周的数据统计,曹政得出的结论是:访问www.tong123.com系统监测的2000家网站的所有用户中,Alexa工具条的安装率在1.5%左右。

        就在发稿前,曹政还给记者发来了对这一结果的补充说明,他认为,由于tong123的系统采用累计平均值的计算方法,Alexa工具条的实际安装比例应该比现在得到的数据更高,因为这个监测项刚加进去不久。

        由于tong123.com的监测范围是2000家各类网站,基本上排除了由于监测对象较少可能造成的用户选择倾向性,其可信度比较高。即使以1.5%这个被低估的安装率来衡量Alexa在国内用户中的影响,也已经十分惊人了,若国内互联网用户以总数9000万计算,则其中安装了Alexa工具条的用户可能已超过130万。按照Alexa声称的1000万左右的工具条全球下载总量来看,中国网民对Alexa的热衷似乎显得更为突出,这或许也可以作为国内网站今年在Alexa排行榜中整体排名提高的一个解释。

        既然工具条的分布会从很大程度上影响Alexa的监测结果,那么Alexa的排行榜就可能出现很大的地域相关性,如果确实如此,Alexa的权威性就真值得怀疑了。事情远没有这么简单,在Alexa网站上,记者看到全球网站前10万名排行榜的报价是499美元,显然,在大洋彼岸,还是有人认可Alexa的排名数据,甚至会花钱去买那个排行数据

    莫须有的技术隐私

        在Alexa各种公开的资料或是网友对它的讨论中,都没有人明确提出过Alexa除工具条以外是否还有其他能够获取公网流量的监测手段,而长期为多个著名网站提供技术支持的小林,通过对这些网站的日志分析,认为Alexa还有很多技术隐私。由于无法得到Alexa的官方回应,我们只好说这些可能被采用的技术手段是“莫须有”的。

    为了进一步探寻Alexa的隐私,我们还要先看看Web浏览的过程。当用户打开IE浏览器,在地址栏中输入一串网址并回车后,一些包含了http请求的数据包就被发送出去,与其他流量一样,这些数据包也要经过用户所在内网的网关,被路由到公网,经过一个个电信机房,最终传送到某个提供DNS解析的服务器上,在获得目的网址的IP地址后再被放到一个可以最终路由到目的IP的路径上传送过去。从http请求的发送过程来看,如果Alexa对全球所有的DNS解析服务器进行嗅探,将有可能得到一份非常接近事实的全球http请求数据,由此就可以非常清晰地勾勒出哪些网站被哪些用户所关注。

        不过,要嗅探全球的http请求,对Alexa来说几乎是天方夜谭。退一万步,即使Alexa能抓取到这些数据,它也不可能有以这些数据为基础进行计算的能力。但是,Alexa排名所显示出的一些“抖动”迹象似乎在告诉人们,除工具条之外,Alexa确实有使用其他技术手段的嫌疑。

        2004年夏天,小林发现中国香港的网站排名出现异常的提升,像“太阳报”这样的小网站,居然能超过很多内地大网站的排名。由于电信网关和简繁体系统的原因,内地与香港网民一般是不做“跨地区互访的”,而香港网民安装Alexa工具条的绝对数也不会比内地用户高。从前文的分析和计算来看,内地网民中Alexa工具条的安装量恐怕比全香港网民的数量都不低,这样的情况下,香港网站在Alexa排名的普遍大幅度提升就显得毫无道理。

        经过两个月的高排名期后,香港网站的排名开始逐渐回落,但至今仍有部分网站的排名高出其实际应处的名次。小林认为,这个现象与韩国网站在2003年出现的情况有很大相似性,而韩国的很多网站目前仍有偏高的排名。这种现象如果用Alexa工具条的普及率来解释是不合情理的,但如果用Alexa增加了其他采样机的说法来解释,就很容易说得通。

        据小林推断,Alexa可能在全球不同地方设置了一些采样机,通过与一些电信机构进行或明或暗的合作,甚至在临近电信网关的节点进行网络嗅探,得到一些“弥补性”的采样数据。而寻求这些采样数据的目的恰恰是为了照顾Alexa所认为的“工具条低安装率”地区的抽样效果。打个比方,如果Alexa认为韩国互联网已经非常普及,而韩国用户却一直没有安装Alexa工具条的习惯,它就可能会设法在韩国安插一些采样机,以弥补在韩国用工具条采样的不足。同样的情况,也可能导致香港在刚刚设置采样机时网站排名的猛增。而经过一段时间的考察,Alexa就会逐步调整在每个地区的采样数量,以得到它所认为的最合理的结果。

        甚至小林还认为,今年内地网站排名的大规模提升也有采样机在作怪,而国庆后内地网站排名的普遍下降也许就是因为Alexa在经过一年的考察后,重新调整了在中国内地采样比重的结果。

        当然,Alexa要维护其排名的权威性和公正性,不仅要完善流量数据的采样过程,更要在防止作弊方面做出巨大努力,那些防作弊的技术也都是Alexa的不宣之秘。那么Alexa到底是用什么办法来防止作弊呢?事实上,对于前文中记者提到的以编程模拟Alexa工具条返回数据包的作弊方式,Alexa几乎没什么好办法去防范,甚至要探测到这样的作弊手段都比较难。

        其实,对于现在网上常见的作弊手段,Alexa都已经有了足够的免疫力。一般来说,由于现在多数搜索引擎都无法处理JS脚本,所以针对搜索引擎的作弊往往都是用JS脚本编写恶意代码来实现,而Alexa和Google采用的爬行程序则是目前仅有的可识别JS脚本的此类程序。

        小林在对几个大型网站的流量监测中发现,Alexa启用了一个叫做IA_Archiver的机器人程序,这个机器人程序类似Google等搜索引擎使用的蜘蛛程序,专门在互联网上爬行,刺探每个Web页面的流量信息。尤其是当某个网站的流量超过Alexa设定的阈值时,IA_Archiver就会马上爬到该网站的服务器上,分析此网站的流量是否正常,有没有作弊行为。

    我要投稿   -   广告合作   -   关于本站   -   友情连接   -   网站地图   -   联系我们   -   版权声明   -   设为首页   -   加入收藏   -   网站留言
    Copyright © 2009 - 20012 www.www.hxswjs.com All Rights Reserved.57365.com 版权所有