游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3973|回复: 11

问一个网络方面弱弱的问题

[复制链接]

119

主题

1367

帖子

1393

积分

金牌会员

Rank: 6Rank: 6

积分
1393
发表于 2007-10-24 00:05:00 | 显示全部楼层 |阅读模式
网络方面不是特别熟悉,我完成端口tcp连接的服务器做出来了,目前只是个echo的,有基本的拼包丢包处理。

我想问的不是服务器部分,而是客户端部分
客户端不做大量连接应该没有必要也用完成端口吧,用WSAAsyncSelect这种简单的非阻塞的方式应该就足够了吧,目前我用这种方式和服务器连接测试的效果都还不错。

我想问的问题其实很简单:就是客户端是否没必要也用完成端口。

这个很重要,不然我的客户端都不知道咋写了

119

主题

1367

帖子

1393

积分

金牌会员

Rank: 6Rank: 6

积分
1393
 楼主| 发表于 2007-10-24 13:01:00 | 显示全部楼层

Re:问一个网络方面弱弱的问题

没人回答,自己顶一下

6

主题

40

帖子

40

积分

注册会员

Rank: 2

积分
40
发表于 2007-10-24 13:57:00 | 显示全部楼层

Re:问一个网络方面弱弱的问题

以”速度“为原则

30

主题

227

帖子

232

积分

中级会员

Rank: 3Rank: 3

积分
232
发表于 2007-10-24 14:34:00 | 显示全部楼层

Re:问一个网络方面弱弱的问题

我觉得用重叠模型比较合适,重叠模型肯定比事件选择快。异步选择是以消息的方式响应,效率高不到哪里去。
完成端口适用于64个以上的套接字链接,你不可能客户端要连64个以上的服务器吧

119

主题

1367

帖子

1393

积分

金牌会员

Rank: 6Rank: 6

积分
1393
 楼主| 发表于 2007-10-24 16:05:00 | 显示全部楼层

Re:问一个网络方面弱弱的问题

也就是说服务器用完成端口模型方式,而客户端用重叠模型?

36

主题

1047

帖子

1147

积分

金牌会员

Rank: 6Rank: 6

积分
1147
发表于 2007-10-24 22:59:00 | 显示全部楼层

Re:问一个网络方面弱弱的问题

要考虑到 Client OS 能否支持重叠 IO,用 WSAAsyncSelect 就可以了。

119

主题

1367

帖子

1393

积分

金牌会员

Rank: 6Rank: 6

积分
1393
 楼主| 发表于 2007-10-25 00:43:00 | 显示全部楼层

Re:问一个网络方面弱弱的问题

我看了一篇文章是关于网关的,原文连接:
http://www.bokele.com/?CH=Log&ArticleID=68

其表达的意思是:

完成端口的队列不关心加入的套接字是外面进来的还是出去的,
如果是这样的话,我想客户端也统一用完成端口的模式更简单。

虽然客户端不需要连那么多机器,即便是单连接,我想其效率也应当会比WSAAsyncSelect 要高,毕竟Per_IO_DATA都是通过池例化管理的

我还是偏向于:技术统一高效率和代码复用兼备的形式
何况以后加入udp套节字也方便了,不管客户端服务器全部采用完成端口。

有什么不对的地方还望指正

30

主题

227

帖子

232

积分

中级会员

Rank: 3Rank: 3

积分
232
发表于 2007-10-25 09:01:00 | 显示全部楼层

Re:问一个网络方面弱弱的问题

完成端口和重叠模型的实现机制是一样的,都是提供一个重叠数据结构,让系统帮助收发数据,不需要应用程序去管理。区别是完成端口内部维护一个线程池,可以连接超过64个以上的套接字。
而且重叠模型支持WIN98,95,完成端口不支持。

119

主题

1367

帖子

1393

积分

金牌会员

Rank: 6Rank: 6

积分
1393
 楼主| 发表于 2007-10-25 10:46:00 | 显示全部楼层

Re:问一个网络方面弱弱的问题

那我明白了,就这样决定,无论客户端,服务器端,还是网关,全部统一
消除服务器客户端的概念,全部叫iocpService好了。

89

主题

822

帖子

847

积分

高级会员

Rank: 4

积分
847
发表于 2007-10-25 11:44:00 | 显示全部楼层

Re:问一个网络方面弱弱的问题

准确的说一般用的应该叫重叠事件模型,只能支持最大64个事件并发,超过64个事件并发,需要自己处理排队,这个问题对于重叠模型来说非常恼火,还不如纯粹的事件模型WSAAsyncSelect好控制。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-6-20 00:11

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表