??xml version="1.0" encoding="utf-8" standalone="yes"?>
]]>
~程规范到现在还没统一Q每个h都有自己的一套规范,最初习惯写注释Q但每次提交后被修改的没有了Q后来大安不习惯写注释了?
其实q些文档也看q,但是基本没用上?
大家也许也看q吧Q还是放上来Q供有需要的朋友看看Q希望有所帮助?
阅读全文
]]>
目的Q羃短企业同cd目开发周期,集成多种P2P协议Q如BT,EMULE{?
主要功能Q?
Peer 间传输数据采用UDPQ能有效的穿透防火墙Q在q一步的版本中将实现TCP及UPNPIK?
能够实现媒体的Ҏ及直播,q能׃n其他文gQ文件类型不限?
媒体文件支持广泛,如rmvb,wmv,flv,mp4{?
阅读全文
]]>
]]>
http://blog.csdn.net/sodme
QQ游戏于前几日l于H破了百万h同时在线的关口,向着更ؓq大的目标迈q,q让其它众多传统的棋牌休闲游戏^台黯然失Ԍ相比之下Q联众似乎已l根本不是QQ的对手,因ؓQQ除了q?00万的游戏在线人数外,它还拥有3亿多的注册量Q当然很多是重复注册的)以及QQ聊天软g900万的同时在线率,我们已经可以预见未来由QQ构徏h的强大棋牌休闲游戏帝国?br> 那么Q在技术上QQQ游戏到底是如何实现百万h同时在线q保持游戏高效率的呢Q?br> 事实上,针对于Q何单一的网l服务器E序Q其可承受的同时q接数目是有理论峰值的Q通过CQ+中对TSocket的定义类型:wordQ我们可以判定这个连接理论峰值是65535Q也是_你的单个服务器程序,最多可以承?万多的用户同时连接。但是,在实际应用中Q能辑ֈ一万h的同时连接ƈ能保证正常的数据交换已经是很不容易了Q通常q个值都?000?000之间Q据说QQ的单台服务器同时q接数目也就是在q个D间?br> 如果要实?000?000用户的单服务器同时在U,是不隄。在windows下,比较成熟的技术是采用IOCPQ-完成端口。与完成端口相关的资料在|上和CSDN论坛里有很多Q感兴趣的朋友可以自己搜索一下。只要运用得当,一个完成端口服务器是完全可以达?K?K的同时在UK的。但Q?Kq样的数值离百万q样的数值实在相差太大了Q所以,百万人的同时在线是单台服务器肯定无法实现的?br> 要实现百万h同时在线Q首先要实现一个比较完善的完成端口服务器模型,q个模型要求臛_可以承蝲2K?K的同时在U率Q当Ӟ如果你MONEY多,你也可以只开发出最多允?00人在U的服务器)。在构徏好了基本的完成端口服务器之后Q就是有x务器l的架构设计了。之所以说q是一个服务器l,是因为它l不仅仅只是一台服务器Q也l不仅仅是只有一U类型的服务器?br> 单地_实现百万人同时在U的服务器模型应该是Q登陆服务器Q大厅服务器Q房间服务器。当Ӟ也可以是其它的模型,但其基本的思想是一L。下面,我将逐一介绍q三cL务器的各自作用?br> 登陆服务器:一般情况下Q我们会向玩家开放若q个公开的登陆服务器Q就如QQ登陆时让你选择的从哪个QQ游戏服务器登陆一PQQ登陆时让玩家选择的六个服务器入口实际上就是登陆服务器。登陆服务器主要完成负蝲q的作用。详l点说就是,在登陆服务器的背后,有N个大厅服务器Q登陆服务器只是用于为当前的客户端连接选择其下一步应该连接到哪个大厅服务器,当登陆服务器为当前的客户端连接选择了一个合适的大厅服务器后Q客L开始根据登陆服务器提供的信息连接到相应的大厅上去,同时客户端断开与登陆服务器的连接,为其他玩家客Lq接登陆服务器腾出套接字资源。在设计登陆服务器时Q至应该有以下功能QN个大厅服务器的每一个大厅服务器都要与所有的登陆服务器保持连接,q实时地把本大厅服务器当前的同时在线人数通知l各个登陆服务器Q这其中包括Q用戯入时的同时在Uh数增加信息以及用户退出时的同时在Uh数减信息。这里的各个大厅服务器同时在UhC息就是登陆服务器为客L选择某个大厅让其登陆的依据。D例来_玩家A通过登陆服务?q接到登陆服务器Q登陆服务器开始ؓ当前玩家在众多的大厅服务器中Ҏ哪一个大厅服务器人数比较来选择一个大厅,同时把这个大厅的q接IP和端口发l客LQ客L收到q个IP和端口信息后Q根据这个信息连接到此大厅,同时Q客L断开与登陆服务器之间的连接,q便是用L陆过E中Q在登陆服务器这一块的处理程?br> 大厅服务器:大厅服务器,是普通玩家看不到的服务器Q它的连接IP和端口信息是登陆服务器通知l客L的。也是_在QQ游戏的本地文件中Q具体的大厅服务器连接IP和端口信息是没有保存的。大厅服务器的主要作用是向玩家发送游戏房间列表信息,q些信息包括Q每个游戏房间的cdQ名Uͼ在线人数Q连接地址以及其它如游戏帮助文件URL的信息。从界面上看的话Q大厅服务器是我们输入用户名和密码q校验通过后进入的游戏戉K列表界面。大厅服务器Q主要有以下功能Q一是向当前玩家q播各个游戏戉K在线人数信息Q二是提供游戏的版本以及下蝲地址信息Q三是提供各个游戏房间服务器的连接IP和端口信息;四是提供游戏帮助的URL信息Q五是提供其它游戏辅助功能。但在这众多的功能中Q有一Ҏ最为核心的Q即Qؓ玩家提供q入具体的游戏房间的通道Q让玩家利q入其欲q入的游戏房间。玩家根据各个游戏房间在Uh敎ͼ判定自己q入哪一个房_然后双击服务器列表中的某个游戏房间后玩家开始进入游戏房间服务器?br> 游戏戉K服务器:游戏戉K服务器,具体地说是?#8220;斗地?”Q?#8220;斗地?”q样的游戏房间。游戏房间服务器才是具体的负责执行游戏相关逻辑的服务器。这L游戏逻辑分ؓ两大c:一cL通用的游戏房间逻辑Q如Q进入房_d戉KQ进入桌子,d桌子以及在房间内说话{;W二cL游戏桌子逻辑Q这个就是各U不同类型游戏的主要区别之处了,比如斗地M的叫C或不叫地ȝ逻辑{,当然Q游戏桌子逻辑里也包括有通用的各个游戏里都存在的游戏逻辑Q比如在桌子内说话等。MQ游戏房间服务器才是真正负责执行游戏具体逻辑的服务器?br> q里提到的三cL务器Q我均采用的是完成端口模型,每个服务器最多连接数目是5000人,但是Q我在游戏房间服务器上作了逻辑层的限定Q最多只允许300人同时在Uѝ其他两个服务器仍然允许最?000人的同时在线。如果按照这Ll构来设计,那么要实现百万h的同时在U就应该是这P首先是大厅,1000000/5000Q?00。也是_臛_?00台大厅服务器Q但通常情况下,考虑到实际用时服务器的处理能力和负载情况,应该臛_准备250台左右的大厅服务器程序。另外,具体的各U类型的游戏戉K服务器需要多,pҎ当前玩各U类型游戏的玩家数目分别计算了,比如斗地L多是十万人同时在U,每台服务器最多允?00人同时在U,那么需要的斗地L务器数目应该不于Q?00000/300=333Q准备得充分一点,p准备350台斗C服务器?br> 除正常的玩家q接外,q要考虑刎ͼ
对于登陆服务器,会有250台大厅服务器q接到每个登陆服务器上,q是始终都要保持的连接;
而对于大厅服务器而言Q如果仅仅有斗地主这一cȝ服务器,p?50多个q接与各个大厅服务器始终保持着。所以从q一点看Q我的结构在某些斚wq存在着需要改q的地方Q但核心思想是:快地提供用L陆的速度Q尽可能方便地让玩家q入游戏中?
]]>
服务。显C分区所有的游戏服务器。用L录时Q每ơ随机(或者是负蝲均衡法吧)选择不同的登录服务器Q不q基本上是出于同
一CcȝD늚?br>3.游戏服务器通过10002端口提供服务Q显C游戏所有频道以及保存玩安|好的游戏角艌Ӏ?br>4.游戏频道是游戏玩家真正连接的IPQ长q接Q,通过10003端口提供服务?
]]>
要想提升BT下蝲速度Q同时还要下载到完整资源的关键在于我们所q接的peers中的数据部分能否构成一个完整资源,q样p求我们能够连接上更多的peersQ但是BTq种方式本n决定了它的生命周期短,peersq不E_。如何在peers消失之前下蝲到完整资源的关键是快速地从更多peers来下载数据!但问题是Q现在多Ch都在使用公司的网x家用路由器来上网Q全在NAT讑֤后面。得其无法dq接到外部的peersQ从而成为BT下蝲的一个瓶颈?/p>
新版q雷支持UPnP端口自动映射技术,q意味着Q我们可以接受外|peers的主动连接,q样可以连上更多的peers。加上了更多的peersQ其构成一个完整资源的概率大大提升,从而可以保?#8220;文g可以下全”。同Ӟ我们不仅可以从这些peers处获得数据,q可以将自己下蝲的部分上传给他们Q如?Q。而根据BT_Q上传越多,我们下蝲速度׃快。这Pp入了良性@环!
二、支持DHT tracker|工也能?/strong>
新版q雷全面支持DHT|络Q即无tracker服务器网l)Q这样就意味着q雷在下载BT资源时可以走“更广”的DHT|络Q如?Q,也可以在DHT|络中找到更多的peers。在传统的BT原理中,tracker服务器是其中心。如果tracker服务器关闭,BT无法进行下厅R但是DHT是一U无服务器网l,qtracker服务器倒闭了,也可以保证我们仍能连接到更多的peersQƈ不媄响下载?/p>
提C?/strong>
★DHT|络无需tracker服务器来协调BT下蝲的原理是QDHT是一U分布式存储ҎQ每个客L除了负责存储数据外,q负责一个小范围的\由,所以可以实现整个网l的d。因此,不再需要tracker服务器?/p>
★进入DHT|络后,我们的客L会有一个IDQ但q个ID是程序生成的、虚拟的、完全随机的IDQ与你的实际个h信息没有M联系。因此,是极其安全的?/p>
三、两|相q?peer断掉也能?/strong>
在传l的BT下蝲中,用户只能够从其他的BT客户端(UCؓpeersQ下载文Ӟ如图3Q,q在下蝲的同时提供上传服务以加速下载。如果peers比较甚x有的话,我们无法完成下载。由于BT的生命周期比较短Q因此peers较少甚至断掉的情冉|有发生?/p>
新版BTq雷除了可以在用BT|络的同Ӟ即通过peers下蝲Q,q能q上q雷强大的P2SP|络。这样一来,q雷用户下蝲BTdӞ不仅可以从其他BT客户端、迅雷客LQ还可以从HTTP和FTP站点来下载同一个文Ӟ如图4Q。从HTTP和FTP站点来下载资源,其稳定性要高出peers许多。同Ӟq能大大增加下蝲的来源点Q返回更多的资源敎ͼ保证BT的下载速度?/p>
甚至qBT客户端中没有U子或peers减少甚至?Q这U情冉|很常见的Q,也可以保证我们稳定地下蝲到自己想的资源?/p>
提C?/strong>
׃P2SP技术是q雷自n独有的,所以这也是其他MBT工具无法做到的?/p>
q雷解决了BT下蝲中无U、无peerspeers无法下蝲的问题,再加上其与P2SP|络的互联,使得其下载速度得到更大提升Qƈ能够大大提升下蝲E_性?/p>
电信、网通和铁通等|络q营商各自的产品及服务均h自n的特Ԍ在跨q营商访问网l资源的时候,通常要经q很多\q中{才能到达目的圎ͼ其是在电信和网通、电信和铁通、网通和铁通等交互接口处。这样也容易生堵塞,形成很大的gq,造成|络反应q钝。对于网l游戏玩家来_此类现象犹ؓ明显;在这U情况下Q各式各L|游加速器也就应运而生?/span>
一、金q游加速器
软g?span>:
金山|游加速器是由金山公司提供的针对个人用户快速、安全连接网游服务器的一U服务。它利用金山公司?span>IDC资源Q采用数据{发的技术ؓ个h用户提供快速、优质网游加速服务?金山|游加速器目前能够支持常见|络环境下的l大多数的游戏的加速,其是对于电信用戯问网通、网通访问电信用户和铁通用戯问其他网游服务器都有非常明显的加速效果。金q游加速器目前处于免费期,Ƣ迎试用?span>
·加速网渔R度Q减网lg?通过骨干|上的加速服务器q行中{可以有效的减网游客L到网游服务器的时Ӟ保您在|游的顺畅,是您在网?span>PK的好帮手?span>
·支持各种|络游戏Q轻松?采用最新的|络技术,能够在用L机器的底层上截获|游客户端的数据包,q发送到加速服务器上进行加速,无须对客L做Q何改动?span>
·随时随地使用Q简单易?您可以在M一台连接了互联|的机器上用,无须接网l问题而不能玩|游而苦恹{目前金q游加速器处于试阶段Q您可以使用用户:kingsoft 密码:kingsoftq行d?span>[点击下蝲]
软g通过最新技术在pȝ底层截取|游E序发送和接收的数据包Qƈ按照Socks5协议转发到指定的中{服务器上Q通过加速服务器Ҏ据包q行“加?#8221;Q同时把加速服务器发送的数据反向传输l网游客LE序。它可以透明的支持网游客L到服务器之间?#8220;加?#8221;工作Q无d|游客户端做M更改?/p>
软g下蝲完成后需要进行简单的安装Q然后即可启动到d界面。需要注意的事,目前金山|游加速器处于试阶段Q可以?#8220;用户:kingsoft 密码:kingsoft”的̎?q行d?另外Q目?#8220;金山|游加速器”为电信用h供了4l服务器Qؓ|通用h供了1l服务器Q用户应该根据自q|络服务商进行选择?/p>
在登录窗口中填入必要的信息后Q单?#8220;定”按钮卛_q入软gȝ面。接下来的操作相当简单,只需要将要加速的|游ȝ序拖动到E序ȝ口中Q即可弹出相应的dE序讄界面。当然也可能通过单击ȝ面上?#8220;d”按钮Q手动添?span>;不过Z方便Q徏议用拖戈的方式q行?/p>
在上面的“dE序”H口中,我们?#8220;U心大战”d了进厅R单?#8220;定”q回ȝ面后Q即可看到加速的E序图标Q双LE序图标卛_启动“U心大战”E序Q同时也pC加速的效果。而在速度斚wQ通过W者的实测Q可从如下的数据l中了解C用前后的Ҏ:
电信至网通g?span>:1000?span>3000ms延时:150?span>300ms
电信至铁通g?span>:600?span>1000ms延时:150?span>300ms
|通至电信延时:600?span>1200ms延时:150?span>300ms
|通至铁通g?span>:600?span>1200ms延时:150?span>300ms
金山公司?span>2003q开始涉网l游戏以来,已经成功地运行了剑侠情缘pd、封榜pd及石器时代系列等数款|络游戏。此ơ又推出|游加速器Q可见其对q大玩家需求的理解。同Ӟ明显的速度提升Q便L操作Q以及对|游、系l程序的加速作用,使其在玩家心目中h不错的口?/p>
二、千渡南北互?/span>
1.软g基本情况
软g?span>:
介绍Q世界上最q的距离不是从中国到国,而是从电信到|通。功能:千渡可以让电信和|通互?span>,保持畅通的速度。如果您是电信用P使用千渡后,讉K|通的站或游戏服务器速度一h畅;如果您是|通用P使用千渡后,讉K电信的站或游戏服务器速度也一h畅。用:您只需要下载客L,无需安装,只要双击“千渡客户?span>.exe” Q然后选择服务?span>,点连接即可用千渡Y件给您带来的快感。登陆:用户名:1000du.net 密码Q?span>123456?/span>
q是一ƾ不错的|络互通工兗而且此Y件ؓl色软gQ无d装即可?span>;不需要时删除卛_Q不会给pȝ带来M垃圾文g?span>[点击下蝲]
2.工作原理
千渡实现南北互通的原理其实很简单,相当?span>VPN的概c它自己购买了服务器和电信与|通的专用U\Q用户用千渡后Q访问网l时首先发送数据至千渡的服务器Q然后由服务器再向网站发送数据请求,也可以理解ؓ使用了代理服务器?/span>
3.使用体验
软g下蝲后,其解压到硬盘目录,再双d中的“千渡客户?#8221;可执行文Ӟ卛_启动到Y件登录界面。输入默认的“用户?span>:1000du.net 密码:123456”账户Q再选择一个服务器名以及点选好自己|络服务商的cd卛_d?/span>
登陆成功后,在系l栏会显C千渡图标,鼠标悬停在上面Q会昄“千渡软g-南北互?span>(已连?span>)”Q表C千渡已l正常工作,现在卛_畅快的访问全国的|络而不必担心速度问题了。需要注意的是,|络游戏(例如CS)和程序?span>UDP(用户数据?span>)协议q行通讯Q千渡不能对ZUDP协议的数据进行发送和接收Q因此不能提高这些游戏和E序的连|速度Q可以尝试下L“自动路由模式”后再登陆?/span>
4.使用ȝ
千渡目前只联接了电信和网通的|络Q对其他宽带接入暂时没有效果。千渡作ZƑֈ推出不久的YӞ如果使用中遇到问题时Q可以首先查看是否有新版本的客户端下载。另外也可以d渡论?span>(bbs.1000du.net)查看相关帖子或发帖询问,论坛中已l归U了不少常见问题的解x法,理员和一些热心网友也会帮你想办法Z意解决问题的?/span>
三、统一加速器
1.软g基本情况
软g?span>:分ؓ“个h应用?#8221;?#8220;|站应用?#8221;Q本文针?#8220;个h应用?#8221;?/span> l一加速器个h应用版本是由蓝月U技Z人用h出的主要针对各类|络游戏玩家、Y件发烧友、网l办公、媄韛_网虫等用户加速连接目的服务器的一U服务?span>
自统一加速器—?/span>个h|络加速器横空Z后,您的|络世界Q将d只听您的Q不同于其他产品的是l一加速器q通过代理服务器中转网l传输实现加速,更不是运用在|络游戏中操作非法的软gq行E序来达到加速。而是l一加速器您的请求优化信息通过l一服务器的直接优化Q您的游戏由很卡变为非常流畅,使Y件下载速度由几千字?span>/U变为几十千字节/U?span>…Q尤其是对于|通上|用戯问电信、电信上|用戯问网通和铁通等其它上网用户讉K|?span>/电信服务器有着非常明显的加速效果。真正做到所有网l随心所Ԍq速、快L引领您步入英特网Q?/span>
功能特点Q?span>
·加速网l速度Q减网lg?通过l一加速器q行|络优化可以有效的减网lgӞ保您上|的畅?span>
·支持所有网l,所有网l连?采用最新的|络优化技术,支持电信、网通、铁通、联通、移动、教育网{网l用?span>,支持对网l游戏、下载、浏览等所有网l连接的加速?span>
·随时随地使用Q操作简单易?您可以在M一台连接了互联|的电脑上用,只要q接了统一加速器您不需要做M讄?/span>
[点击下蝲]
2.工作原理
l一加速器你的请求优化信息通过l一服务器的直接优化QY件终端运行后Q通过短短几秒的n份验证便可连接至l一各地的网x务器。从而游戏由很卡变为非常流畅,使Y件下载速度由几千字?span>/U变为几十千字节/U?/span>
3.使用体验
软g安装完成后,首先q入d界面。然后单d中的“注册”按钮Q进入Y件官方站点申请一个̎P然后再利用此账户卛_d?/span>
q接成功后,在屏q右下角的工h里,会出现程序图标。表C程序已l开始工作了Qؓ了体会此Ƒַ具带来的效果Q以下是q入某在U网速测试网站后Q得到的使用前与使用后的速度试Ҏ?/span>
4.使用ȝ
客观的说来,本来|络速度较快的用P体会不到太多的速度提升;但是速度比较慢的会得到较大的提升。同时在用户打开|页或是登陆Ӟ无须下蝲软g和安装Q何新的插Ӟ只要拥用相关的域名,用户卛_享用l一加速器带来的效?span>;而且双重的提升了用户|络的安全性?/span>
四、网l蜘蛛加速器
1.软g基本情况
软g?span>:它是一ƾؓH破目前国内各个互联|运营商之间互访?#8220;?#8221;而专门设计的新型软g。无论用户用的是电信宽带还是网通宽带,安装本Y件后q当于同时拥有了电信和|通两条线?span>;q且可以做到自动判断识别所讉K的网l,q会以最快的U\q接到目标?span>[点击下蝲]
2.工作原理
当用户安装完成ƈ启动客户端Y件后QY件服务器会自动识别有兛_L的网l类型、线路连接模式等信息Qƈ在服务器端完成访问的最优化l合;当用户在软g客户端选择了相应的|络cd后,软g服务器即会以事先分析好的|络U\完成整个讉K路径上的优化?/span>
3.使用体验
软g下蝲后,l过单的安装卛_使用。启动Y件后首先会询问用Ll类型,炚w相应的选项后完成初始配|。然后再启动软g到登录界?span>;输入默认的̎?#8220;用户?span>:wjzz密码:wjzz”后,单击“登陆”按钮卛_q入软gȝ面?/span>
q类加速Y件在使用上都很简单。在“|际蜘蛛加速器”中,只需要单击选择合适的|络U\卛_完成加速设|。然后即可体会到其加速效果。从下面的速度试Ҏ中,卛_L发现使用前与使用后的速度差别(试的前提条仉一?span>)?/span>
4.使用ȝ
比v前面几款加速器来说Q感觉此ƾY件在用户支持上还有待提高。但其对|络速度的提升却是显著的Q如果你的网l带宽在512KQ用它可以得到非常明显的效果?/span>
五?span>NETPAS ACC加速器
1.软g基本情况
软g?span>: Netpas |络加速Y件帮助您H破电信、网通及教育|的速度瓉Q实现在三个|络间Q意访问,您将再也不会有因|络速度而带来的烦恼Q游戏再也不会卡Q更不会存在M无法玩的|络游戏Q在|络上看电媄、下载文件和览|页再也不会焦急的{待?/span>
Netpas 给您带来前所未有的网l体验,让我们一h体会q种“?span>”的感觉!
用户通过 NETPAS ACC 软g接入 NETPAS |络q_Q就可以直接享受到高速的互联|访问?span>
[点击下蝲]
2.工作原理
q个比较像千渡南北互通,采用VPN的原理,当用L录后QY件ؓ每个用户分配一个虚拟的局域网地址。也有点cM于代理服务器吧?/span>
3.使用体验
软g下蝲后,l过单的安装卛_使用。启动Y件到d界面;输入注册的̎?#8220;用户?span>:密码:”后,单击“q接”按钮卛_q入软gȝ面?/span>
q类加速Y件在使用上都很简?span>,d卛_使用?/span>
4.使用ȝ
界面操作非常单,基本上不用做M操作Q只需q接卛_。在效果上,感觉没v多大作用?/span>
六、黑马加速器
1.软g基本情况
软g?span>: 黑马加速器是一ƾؓH破目前国内各个互联|运行商之间互访?#8220;?#8221;而专门设计的新型软g。无Z现在使用的电信宽带还是网通宽带,安装本Y件后q当于你同时拥有了电信和网通两条线路。ƈ且可以做到自动判断识别您所讉K的网l,pȝ会以最快的U\q接到目?span>! 真正做到南北都不?span>! 无论您是看电影、玩游戏、听音乐、或者聊天,都能辑ֈ非常畅Q黑马加速器以其完的性能Q独具匠心的设计Q您能真正体验到网l冲的快感Qƈ伴您度过愉快的网l旅E?/span>
[点击下蝲]
2.工作原理
d到服务器后,有官Ҏ供的各个节点q行路由选择?/span>
3.使用体验
软g下蝲后,l过单的安装卛_使用。启动Y件到d界面;输入注册的̎?#8220;用户?span>:密码:”后,然后在右边窗口选择要登录节点,点击“q接”卛_?/span>
4.使用ȝ
感觉不太好用?/span>
七、其它加速器
1. 上网提速王Q?/span>下蝲地址Q?/span>
2. l极上网提速(下蝲地址Q?/span>
3. 傲斯加速器Q?/span>下蝲地址Q?/span>
4. 马赫5上网加速器Q?/span>下蝲地址Q?/span>
5. A变速器(A Speeder)Q?/span>下蝲地址Q?/span>
6. flashmay快乐行(下蝲地址Q?/span>
7. 嬴征|关下蝲Q?/span>下蝲地址Q?/span>