网络游戏采用p2p模式和使用c/s模式各有何利弊?

ytloveyu 2007-03-27 10:02:02
网络游戏采用p2p模式和使用c/s模式各有何利弊?请教高人!
...全文
3281 33 打赏 收藏 转发到动态 举报
写回复
用AI写文章
33 条回复
切换为时间正序
请发表友善的回复…
发表回复
tukahara 2010-07-09
  • 打赏
  • 举报
回复
P2P的确存在作弊漏洞,当然,这个要看具体的系统架构了。
我也说道,C/S 和 P2P是相辅相成的。
食人族哲学家 2010-07-09
  • 打赏
  • 举报
回复
p2p,是point TO point吧?不是多用户下载吧
似乎对战平台的有点

貌似MMO用这个主要问题是作弊,尤其聪明的中国玩家
tukahara 2010-07-09
  • 打赏
  • 举报
回复
楼上也有人说道,P2P只能作为辅助。 我认为这个观点是不对的。

P2P的优势也相当明显,P2P并不需要和网络上每一个需要通信的节点建立连接。这也是未来甚至现在云计算技术中必不可少的部分。

P2P基于UDP实现,而如果中间协议设计得当的话,UPD可以节省许多网络资源。
tukahara 2010-07-09
  • 打赏
  • 举报
回复
从开发的角度来说:

C/S大多基于TCP实现,TCP是基于连接的通信,只要网络链路可用,TCP是保证目标能够收到数据包的(至少TCP协议是这么说的),另外,由于TCP也是一种Stream,所以不需要考虑包序问题。同时,TCP也提供了保活机制,M$对于TCP也提供了更多的功能支持。程序员可以把更多的心思放在业务层上,提高开发效率。

P2P大多基于UDP实现,UDP是基于数据包的通行,它不保证数据包安全到达目的地,也不保证包序,更不存在保活。程序员需要自己实现一套可靠的数据包校验、包序、链路检查等机制。但UDP使用相当灵活。

而对于网络游戏或者其他网络应用来向,C/S和P2P是相辅相成的。C/S可以提高用户连接的安全性和稳定性。而P2P则可以免除许多服务器C/S中需要服务器转发的消息给服务器造成的压力。

例如,MMORPG中,用户的私聊、组队频道、声频数据等,就可以使用P2P来分担。
再例如,一款基于大厅/房间的网络游戏中,可以使用这样的模型来分担服务器的压力:

服务端,只负责用户数据、P2P请求和游戏结果合法性校验。
而每个房间中的游戏逻辑,则可以交割客户端去完成。

只要合理地安排服务端的游戏结果合法性校验,就可以避免把逻辑放在客户端而导致的漏洞。

总的来说,更具应用的不同,定制不同的解决方案和不同的网络模型,才能把网络性能发挥得更好。
北络 2010-07-03
  • 打赏
  • 举报
回复
C/S确实是网游的主要模式,但也不能说PtoP没有应用啊,现在大部分网游游友之间就是通过PtoP实现的
joey_ 2010-07-03
  • 打赏
  • 举报
回复
没有研究到这么高级的问题,来学习
wuhandaxue728 2009-03-07
  • 打赏
  • 举报
回复
C/S是架构,p2p是技术,是实现方式,两者拿来比较意义不大吧。网游难免或多少还是会用到p2p技术的。
zhaizai08 2009-02-05
  • 打赏
  • 举报
回复
学习了
yangzyq 2009-02-04
  • 打赏
  • 举报
回复
p2p只能作为网游的一种辅助性的网络通讯机制,它不可能做为主要的通讯机制的
FresfAir 2009-02-04
  • 打赏
  • 举报
回复
学习,学习~~
静观两种以后的发展
Pro_X 2009-01-29
  • 打赏
  • 举报
回复
什么网游架构基础都没有的昏问题,被判定为无价值帖。
brianzf 2009-01-28
  • 打赏
  • 举报
回复
相信p2p是最终的出路
liutp 2008-11-11
  • 打赏
  • 举报
回复
感觉p2p最大的问题还是在安全上,这个年头外挂太多了,一个Peer根本没有理由相信另一个Peer

其他的貌似还是有解决手段的
yyj724 2008-10-31
  • 打赏
  • 举报
回复
根本问题还是数据的保密,一致和传送的问题,P2P不免要把数据放到客户端,然后由客户端和客户端之间传送,这样会让数据通过其他方式被修改(如外挂),楼10说的一致性也是实现P2P的一个障碍,但相信在人类的智慧下还是能克服滴。。。。。。。。。相信P2P以后应该被网游采用,如果现在的网络状况还是不能得到很好的改善的话。。
ensoniq 2007-04-19
  • 打赏
  • 举报
回复
有点不明白的,要用P2P就必定要把客户端的真实地址到处送,这样做真的没有安全性的问题吗?尤其是当你还知道这些地址都是和你在同一局游戏里的人?
fxwwang 2007-04-17
  • 打赏
  • 举报
回复
P2P使用有很大限制地,现在很多所谓的P2P网游其实还是CS结构.
向浩方这类就是hook socket,然后用TCP通道的CS模式来模拟局域网.
因为P2P在用户间可能无法穿透,所以说到底还是要用CS模式.
ppc686 2007-04-13
  • 打赏
  • 举报
回复
p2p只要使用现成的Directplay组件,它本身就提供p2p的网络支持,只是限制太大,哟多大具体看文档。
herogold 2007-04-12
  • 打赏
  • 举报
回复
c/s结构基本是现在mmorpg网络游戏的唯一选择. 相比于p2p的结合,我更倾向于应用分布式计算,把一些安全性要求较低,耗时的计算分散给客户端进行. 这样一来会带来质的飞跃,前提是保障安全性,机制一定要做好.
产品老唐 2007-04-10
  • 打赏
  • 举报
回复
我听说 跑跑卡丁车 是用p2p来传递坐标、法线和动作侦编号给其他玩家的
一般想到的应该是用UDP
铜戈 2007-04-10
  • 打赏
  • 举报
回复
跑跑 街头篮球 和很多韩国房间式的休闲网游都是用p2p的
要说网游用p2p不合适 应该是指mmorpg这类的游戏 类似跑跑和街头篮球这样的游戏p2p还是非常合适的 游戏开始后基本不占用服务器资源 主要逻辑都在客户端跑 也就说这种模式是建立在信任客户端的这么一个前提下的 p2p的技术并不复杂 难度也不高 关键在于能否合理利用这种技术。目前p2p模式的游戏普遍存在一个问题就是对外挂的防范比较困难, 这是为什么大部分这类的游戏都需要HackShield N-Protect之类的外壳程序来防止客户端逆向。
加载更多回复(13)

8,305

社区成员

发帖
与我相关
我的任务
社区描述
游戏开发相关内容讨论专区
社区管理员
  • 游戏开发
  • 呆呆敲代码的小Y
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧