游戏里全屏游戏pageup没法用P2P吗

随笔 - 626&
文章 - 7&评论 - 37&trackbacks - 0
以下内容摘自《ActionScript大型网页游戏开发》
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
P2P架构是两个或多个客户端不经过服务器而直接通信的架构。可能首先会使用服务器以让客户端间能查找到对方,但在此之后就不再需要服务器了。具体也分两种不同的形式:一种是完整连接拓扑架构,指的是每个客户端与其他客户端之间都必须有连接,信息可以直接在用户间交换;另一种是环状拓扑架构,指的是信息只有流经一个或多个客户端后才能传递过来的架构。本文当谈到P2P架构时,指的是完整连接拓扑架构。
一般来说,P2P架构在游戏方面用的不多。很多情况下游戏似乎是在使用P2P架构,但实际上其中的一个玩家已被设定为主机来充当服务器的角色。然而,P2P架构非常适用于搭建文件共享网络。通过它,网络游戏经常能够高效地为玩家们发放游戏补丁(比如《魔兽世界》),这不仅减轻了Web服务器的负担,而且也加速了玩家下载补丁的速度。
与C/S架构相比,P2P架构技术有几个明显的优势,当然也存在几个缺点。先讲讲它的优点。
P2P架构的优点
&&&&&&&& 延时较小。延时就是指信息在从发出到接收这个过程中所用的传输时间。在C/S模式中,信息是先从一个客户端传到服务器端,而后再从服务器端传到另一个客户端。但P2P架构则是让信息直接在两个客户端间传递,这样就比C/S模式减少了一半的传递时间。
&&&&&&&& 不需要服务器端。既然P2P架构全是由客户端建成的,因此也就没必要使用服务器端。这对于无论是游戏开发者还是发布者来说都是一件好事,因为他们不用再为维持运行游戏中央服务器而支付主机托管和管理费了。
P2P架构的缺点
&&&&&&&& 游戏的可扩展性差。当游戏的客户端相当少的时候,那就用P2P吧,因为它产生的延时很小且不需要使用服务器端。但是当游戏有很多客户端时,比如说成百或上千个客户端,那么P2P架构就不适用了。因为它需要每个客户端都和其他客户端保持一个独立的连接。那么如果有1000个客户端的话,完整拓扑架构就要求每一个客户端都要建立并维持1000个开放的连接,其中每一个客户端都要接受来自其他客户端发出的所有信息。而在C/S架构中,一个客户端只从服务器端接受经其职能筛选和归集后的信息。
&&&&&&&& 另外,还要考虑一下此种网络的应用环境。假设你有1000个客户端,但是它们全都在学校的子网络中,1000个用户彼此相连导致产生了1000000个连接,这将会使网络因不堪重负而瘫痪。但是如果同样数目的连接放到全球互联网上,则根本不会出任何问题。
&&&&&&&& 争议解决机制不健全。加入有个双人P2P游戏,每一方都能操纵鼠标去吃奶酪。玩家A接近第一块奶酪,然后确定离它足够近时就可以吃了它,于是玩家A因为吃了奶酪而获得了一定的积分,然后他传递信息给玩家B,告诉B:这块奶酪已经被我吃了。玩家B接收并处理了这条信息后从自己的屏幕上删除了那块奶酪,并且更新了玩家A的得分。谁都没有异议,两个客户端对当前游戏的状态达成了一致。
&&&&&&&& 但比如说现在玩家A和玩家B都在对下一块奶酪跃跃欲试。不巧的是这一次他们相互之间逻辑决策的时间就差了几毫秒,双方都各自认定是自己吃了这块奶酪,然后都给自己加上了分,然后互发信息给对方证明是自己把奶酪吃了。结果两个玩家就会互不相让。
&&&&&&&& 所以,P2P架构的一个缺点就是:没有中心逻辑决策者。还有一些范例更能说明问题。
&& 两个战斗到最后的玩家间互发了一个必杀技,谁先倒下?
&& 在赛车游戏中,谁第一个冲过终点?
&& 玩家争着抢地上的钥匙,哪一位先抢到呢?
处理此类问题最好的方法就是采用C/S架构,让服务器来维护游戏运行中的状态,充当逻辑决策争议的逻辑决策者。
P2P架构可通过选派一个客户端充当主机(但其本身还是P2P架构中的一个客户端)来解决逻辑争端,而这样做会带来下面两个新麻烦。
(1)如果所有重要的逻辑冲突都要通过充当主机的客户端来解决的话,那就丧失了对等网络架构的延时较低这个优点,因为信息要从客户端传到主机由其处理完后再传回客户端。
(2)P2P架构游戏本身存在安全隐患,因为所有的重要逻辑行为都运行在客户端而没有在一个中央结点得到验证。那么如果你把所有重要的逻辑决策权都交给主机的话,无疑会使这个特殊的客户端在理论上具有了某种控制能力上的优势(作弊的机会大大增加)。
阅读(...) 评论()p2p在网络游戏中的应用 - CSDN博客
p2p在网络游戏中的应用
闲话:测试中有点对点的验证,隔离测试;来分析该问题和某些步骤无关系,一步步剥离验证,只是一种思维和概念的方法。
点对点的技术,P2P,对等网络技术,原理为依赖网络中参与者的硬体能力和带宽做传输。P2P的模型中,每一个节点都可以既是服务端,又是客户端。
一些实时的游戏,客户端的消息可以之间发给其他客户端,而不需要通过服务端进行转发,这样大大减少了延迟.同时也减少了带宽成本。
但有利有弊,依然存在由主要的客户端在担当服务端的脚色,验证其他客户端发来的信息。同时网络误差和用户硬件差异大,传输过程中存在很大的同步问题。
所以就需要把一些决策的机制依然放在服务端。由服务端来连接多个客户端。
如何可以拥塞控制?就有了镜像服务。
本文已收录于以下专栏:
相关文章推荐
(没找到Gargoyle Router QoS的中文教程,所以根据我自己对QoS不太成熟的理解,分享我的使用经验如下,错漏难免,高手勿笑)
在4MB下行,512KB上行的ADSL拨号上网环境,刷...
一、什么是P2P
对等网络(PeertoPeer,简称P2P)也称为对等连接,是一种新的通信模式,每个参与者具有同等的能力,可以发起一个通信会话。
这个定义有点抽象,下面就来简单地解释一下。粗略地...
一、什么是P2P
对等网络(PeertoPeer,简称P2P)也称为对等连接,是一种新的通信模式,每个参与者具有同等的能力,可以发起一个通信会话。
这个定义有点抽象,下面就来简单地解释一下...
我设计的p2p系统包括用户登录模块、注册资源模块、下载资源模块;
服务端维护用户和资源信息,包括两张表(如下),其中src_name保存的是资源在注册用户机器上的绝对路径;
Chord:一个用于网络应用的可扩展的P2P查询服务(下)
分布式系统
1389人阅读 评论(7)
5 并发操作和失效
...
Chord:一个用于网络应用的可扩展的P2P查询服务(上)
分布式系统
2383人阅读 评论(4)
Chord:一个...
他的最新文章
讲师:吴岸城
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)}

我要回帖

更多关于 geforce没法优化游戏 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信