探讨“浩方对战平台”
2007-05-14 03:55
最近在网上看到了关于《虚拟局域网》方面讨论。下面就以国内著名的《浩方对战平台》来作为案例分析。(以下言论纯属个人观点)
阅读时大家请注意文中颜色标记出来部分,以及文中出现的图片!
(以下介绍引用浩方官方解说)
浩方对战平台是一种全新概念的网络游戏平台,自2002年9月投入运作以来,目前已成为全球最大的互动、对战游戏平台之一。浩方通过网络技术将Internet变成一个巨大的网吧平台使用者可以轻松地通过Internet同时和多人对战反恐精英、魔兽争霸、星际争霸等数十款热门单机游戏,并拥有实时与其他用户进行多媒体交流、查看当前在线游戏状况、自动启动游戏等功能。用户可以在其中任意遨游,与其他玩家切磋技艺增进了解。
从上图可以看出“浩方”的基本架构原理!
目前网上对“浩方”、“VS”、“QQ对战平台”有很多种说话。有的说“白粥是燕窝”,有的说“鲍鱼是泥鳅”,自己看久了,都要晕。。。
下面是经过本人测试得出来的现象(仅供参考!!!)
1、首先从本机的 Ipconfig 处入手:
从(图一)Ipconfig 上来看,不管是否以浩方形式登录游戏,浩方并没有改变我的IP地址。
以下(图二)---(图八)是本人在“浩方”大厅里的截图
图八中用户并非本人ID,这一点,我一开始感觉很奇怪。但是,后来正好验证了我的一个想法。下文有说明。
从以上截图中,浩方的原理的大致轮廓,就已经呈现出来了。
接下来,我们讨论一下,究竟浩方是采用了哪种思路开发出来的。(PS:很多网友老是会问到,浩方是用什么开发语言编写的,其实就算是DELPHI / C++ BUILDER / VB / JAVA 都可以编写出来(但是这类型软件,用VC开发,较为合适!原因就不再解释!),既然很多网友关心这个问题,我就肯定一点的回答大家,目前的浩方平台是在 VC++6.0 上开发出来的)。
大家在注意看上图,加星方框内的Function内容,可以看出是使用了IPX OVER TCP/IP的方式来处理的。
下面,我来架设一下,浩方对战平台的整体构架(未实际验证,凭经验猜想!)
浩方用服务器中转(或服务器端含有VLAN   ×××),个人认为 采用后者 VLAN ×××方案,可能性较大。通过(图1)---(图8)得出个人的一下观点,在此举个例子来说明。
假如 A、B、C、D、 四个人去唱K,A和B被分到了 1号包房;C和D,被分到了 2号包房。A只能和B对唱,C也只能和D对唱。如果此刻再来一个 E ,E进入了 1号包房,也只能和A\B一起娱乐,不能同C\D一起娱乐。
浩方也是相对应的,当你登录进浩方的某个ROOM内,你只能和该ROOM内的PLAYER娱乐。
当你进入房间后。浩方服务器端接收到你的IP信息后,在后台将你的IP地址发送至VLAN ×××上进行地址分配,每次分配。内网以你的IP为标准,比如说:A用户的IP为222.11.13.102 , B用户的IP为55.37.128.113 ,未进入房间前,这是A\B用户的IP,但是当你进入房间后,其实A\B用户就得到了一个浩方服务器传递过来的虚拟IP,192.168.0.118 、 192.168.0.119   ……
跳回(图8)处,我的IP其实222.71.40.100 ,但是我在浩方游戏房间里,确发现这个IP已经被另一用户占用,而且,当我在房间右侧单击用户列表出的用户名时,发现了一个规则, 此刻 我单击A用户的IP是显示为 222.71.40.31,过了2分钟后,当我再单击A用户是,发现该用户IP已经变为 222.71.40.30,再过了3分钟后,我再单击此用户时,发现该用户IP,已变为 222.71.40.27 ,由此可见,浩方服务器端,按队列规则,向用户派发虚拟局域网IP。
总结一下,A用户进入浩方时,浩方通过(IPX OVER TCP/IP)会自动分配一个虚拟局域网IP给A用户(此处需注意,不同的房间,IP段不同)。
虽然浩方科技是高科技企业,但是浩方平台本身的技术含量并不高,它的基本原理是虚拟局域网(VLAN)和虚拟专用网技术(×××),它可以利用网络技术(我估计90%就是 IPX over TCP/IP,当然也还可以一些HOOK,API)使物理上不在同一个局域网内的客户机通过逻辑专线形成虚拟的局域网环境。
以上言论。纯属个人观点。
目的只是为了大家互相沟通,一步步探索技术内幕!
希望大家看过后,能发表自己的观点,互相学习,共同进步!!!
虽然浩方经过商业化后,有很多恶意的弹窗,和广告,但是毕竟也会推动中国电子竞技发展,其对中国电子竞技所产生的影响,也意义深远!!!
其实很早时候就想写这篇了,这几天由于在写书的提纲所以一直没写,现在书的提纲已经交过去了,不知道情况如何,如果可以的话下个星期就可以签合同了。废话少说先来游戏数据包分析,其实你随便找个抓包工具,然后运行魔兽就能看出个究竟来。在这里来说说,当按了游戏进入局域网时,游戏会采用局域网UDP广播的形式通知在一个局域网中的游戏者说明他进来了,然后每个一段时间均会广播一次,这样的作用我猜想是通知其他玩家证明它还存在着,而不会悄然无息的掉线。当游戏开始后采用的是P2P的方式,因为当主机掉线时其他玩家还是可以继续游戏,但是我在抓包工具里发现每个玩家间均有两条TCP的链接,我也尽行了证实,一条是发送游戏数据的,一条是聊天的,当一个主机退出的时候,其他玩家中有一个人就会成为主机,继续这样的连接方式。
    前面那篇文章已经分析了浩方的实现原理,在这里再深入一步分析下我们要设计的Battlenet平台的情况,这里分为服务器和客户端,服务器其实是用来转发和记录些玩家信息的,而客户端呢是一个传消息给游戏的中转站(当然这里其实是客户端与已经注入进游戏的DLL的通信).
    在这里简单说说客户端服务器如何通信的过程,当玩家登陆客户端时就会把自己真实的IP地址传递给放在公网上的服务器,而当玩家进入对应的游戏房间时,也就是玩家通知服务器我将要映射为什么样的虚拟IP,有了虚拟IP玩家才能进入相应的虚拟局域网,当服务器收到玩家消息时,服务器就把消息对所在相同房间的其他玩家都发一遍,确认玩家能加入局域网,其他玩家的客户端收到服务器发来的虚拟IP时,就把这个虚拟IP发送给已经注入进游戏的DLL,然后DLL把虚拟IP发送给游戏,这样游戏就被欺骗了,但游戏发送数据报给虚拟IP时,注入的DLL同样把消息截获,发送给那个加入房间启动游戏的玩家,这里其实就是把虚拟IP还原成真实IP的过程。然后游戏开始后就是P2P的过程。服务器在游戏开始前起到的作用其实就是中转IP的作用,游戏开始后中转将在客户端实现,其实就是P2P的过程,当然其中包括的IP映射与逆映射的过程。

转载于:https://blog.51cto.com/suxiangjuner/144754

探讨“浩方对战平台”相关推荐

  1. 浩方对战平台 无广告绿色版

    一直用这个版本玩浩方,没发现什么问题!用它的好处多多,一个是绿色,注册表都省了!一个不需要 老是升级升级的,文件夹里有个AyuClient.exe,这个是运行主程序,记住不要运行GameClient. ...

  2. 浩方、vs 等对战平台的危险

    近日在家通过台网玩测试版<星际争霸2>,发现每次都得连线注册,不仅联想了一些事情. 1.浩方.vs 等对战平台的危险 当然在教育网还常用AA,这些对战平台其实大都是依附于 局域网对战游戏. ...

  3. 帝国时代2php存到哪里,window_在Vista、Win7下联网玩QQ对战平台、浩方、帝国时代2,曾几何时,我们在宿舍区组网 - phpStudy...

    曾几何时,我们在宿舍区组网,玩三角洲,帝国时代2 一转眼,8年过去了 现在想想,还真是美好的回忆 这两天突然想重温当时玩帝国时代2的快感,搞了一个来玩, 结果我发现vista默认没有ipx协议(对战要 ...

  4. 艾伟_转载:用C#打造quot;QQ对战平台挤房器quot;

    一.什么是"QQ对战平台挤房器"? 喜欢在"QQ对战平台"或"浩方对战平台"玩游戏的人都知道.平常平台上的房间基本很多都是人满的,如果想找个 ...

  5. 对战平台有哪些和到底哪个好?

    对战平台专题为大家推荐一些非常热门的游戏对战平台下载大全,新手玩家搞不清游戏对战平台有哪些和到底哪个好? 推荐软件:浩方电竞平台 浩方电竞平台是世界上最大的网络游戏对战平台,让喜欢网游.电竞的朋友可以 ...

  6. 游戏对战平台搭建要选什么服务器

    游戏对战平台搭建要选什么服务器 服务器是游戏平台数据传输的重要载体,事关我们游戏创业发展的稳定性.安全性.那么,游戏平台搭建要选什么服务器?有什么参考指标?本文艾西将带领大家一探究竟! 首先是&quo ...

  7. 对战平台虚拟War3局域网的原理

    对战平台虚拟War3局域网的原理 收藏 以War3为例,启动魔兽后,首先是如何看见主机的问题: 魔 兽是通过TCP/UDP协议进行数据发送的,那如何实现看到对方?我们这样:每个机器监听一个固定的UDP ...

  8. 如何处理在WINDOWS VISTA上安装VS2008时遇到要求安装WINDOWS XP SP2的错误和QQ对战平台安装后不能登录的问题

    偶就是用这个方法解决了在VISTA上安装VS2008和QQ对战平台的兼容性问题,呵呵 http://blogs.msdn.com/astebner/archive/2007/08/02/4195204 ...

  9. b5对战平台服务器位置,b5对战平台客户端

    b5对战平台客户端是一款为CSGO玩家精心打造的对战平台,b5对战平台内容丰富,功能强大,让您畅享游戏乐趣,拥有匹配对战服务器与社区娱乐服务器(牛逼服),为CS:GO提供更优质的对战服务. b5对战平 ...

  10. 11对战平台修改服务器,11对战平台新手使用指南

    您可能感兴趣的话题: 11对战平台 核心提示:本文为大家介绍一下如何使用11对战平台,我们将在下文中给您介绍如何使用平台功能. 本文为大家介绍一下如何使用11对战平台,我们将在下文中给您介绍如何使用平 ...

最新文章

  1. 数据项目总结 -- 蛋壳公寓租金分析!
  2. C++系列总结——构造与析构
  3. Spring核心(ioc控制反转)
  4. Linux Grep 命令说明
  5. 【版本工具】Git-浅谈git命令
  6. 启明云端分享|SSD201_自动升级固件与烧录MAC地址
  7. linux svn配置教程,linux svn搭建及配置
  8. JavaScript语言基础(二)
  9. 牛年春节与年俗插画素材,年味十足
  10. 神药克星!读完本文,你的父母将彻底摆脱权健类神药的骗局
  11. python机器学习库教程——结巴中文分词
  12. Noip2011提高组 聪明的质监员
  13. 【裂缝识别】基于matlab组合BCOSFIRE过滤器墙体裂缝识别【含Matlab源码 321期】
  14. h5是可以一键打包小程序的_Vue项目快速输出到小程序H5-如何将h5打包成小程序-h5小程序怎么做...
  15. Retina 显示屏的网页图片兼容方案
  16. [!] The `Paopao [Debug]` target overrides the `PODS_ROOT` build setting defined in `Pods/Target Supp
  17. 【C++学习笔记】特殊用途语言特性
  18. 文本选择毒战:我的过度阐释
  19. 用不同的用户名和密码登录网络上的共享文件夹
  20. Double的compareTo

热门文章

  1. c语言薛定谔方程,如何解薛定谔方程?-- k · p method
  2. c语言薛定谔方程,量子力学的核心:薛定谔方程,究竟神奇在哪里?
  3. PicGo配置阿里云OSS
  4. H.264视频的RTP有效负载格式 (RFC-6184)
  5. ps -- 将图片背景设置成透明的
  6. CSS3 3d立方体/多棱柱-
  7. 博士申请 | 美国匹兹堡大学高伟教授招收Mobile AI方向全奖博士生
  8. 百度搜索引擎算法大全
  9. python tensorflow 以图搜图_以图搜图系统工程实践
  10. 【数据库查询--电影制片系列】--查询在st1公司于2018年制作的电影中出演的影星。