免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: daschina
打印 上一主题 下一主题

[C] 想实现一种没有服务器的聊天软件,求思路 [复制链接]

论坛徽章:
0
31 [报告]
发表于 2010-07-25 11:15 |只看该作者
局域网可以参看飞鸽

论坛徽章:
0
32 [报告]
发表于 2010-07-25 11:47 |只看该作者
服务器起到的作用有几点.1:为每个用户提供唯一的ID,防止中间人攻击.2:转发离线信息.3:为用户的P2P架桥,要不2个用户都被路由器隔着怎么P2P?

论坛徽章:
0
33 [报告]
发表于 2010-07-25 22:50 |只看该作者
本帖最后由 cugb_cat 于 2010-07-25 22:53 编辑
飞鸽消息的收发使用UDP协议,文件(文件夹)的收发使用TCP协议。
0vk0 发表于 2010-07-25 09:28


飞鸽客户端好几年前我也做过~~
你说的这个跟TCP广播有啥关系?

论坛徽章:
0
34 [报告]
发表于 2010-07-26 09:17 |只看该作者
飞鸽消息的收发使用UDP协议,文件(文件夹)的收发使用TCP协议。
0vk0 发表于 2010-07-25 09:28


麻烦下次说清楚点,还以为是自己弄错了。。

论坛徽章:
0
35 [报告]
发表于 2010-07-26 09:24 |只看该作者
http算服务?
你说的是Web服务器?这个是,地地道道的服务器。

ftp算服务?
也是。FTP是C/S模式。 ...
beepbug 发表于 2010-07-24 20:34

对我们来说,提供服务的机器就叫服务器吧。名字叫什么也无所谓了。
您说的P2P模式也没有错,但是纵观目前所有的P2P类型的协议,除了路由的生成树协议(如果这也算P2P的话)不需要中间服务器外,别的都需要有个握手中心来获得对方的信息才能P2P.而做成类似路由协议这种东西对于一款IM来说又不可能,所以除了中间服务器目前别无他法。
当然如果有人能发明新的协议来改变这一点,那真的会让人期待。

论坛徽章:
0
36 [报告]
发表于 2010-07-27 07:40 |只看该作者
对我们来说,提供服务的机器就叫服务器吧。名字叫什么也无所谓了。
您说的P2P模式也没有错,但是纵观目前所有的P2P类型的协议,除了路由的生成树协议(如果这也算P2P的话)不需要中间服务器外,别的都需要有个握手中心来获得对方的信息才能P2P.而做成类似路由协议这种东西对于一款IM来说又不可能,所以除了中间服务器目前别无他法。
当然如果有人能发明新的协议来改变这一点,那真的会让人期待。davelv 发表于 2010-07-26 09:24


P2P是Peer-to-Peer的缩写。其中的每个Peer,既是客户机又是服务器。因此,P2P里的节点全是对等的,都是兄弟。而C/S是以S(服务器)为中心的架构。
也因此,把P2P里的注册中心称之为服务器是不妥当的,把P2P本身概念搞模糊了。P2P里全是服务器。
C/S里的服务器是万万不能省略的,没有服务器,这C/S就不存在了。
而P2P里的注册中心是可以去掉的。你可以采用广播方式寻找其它节点,但是容易造成网络堵塞,甚至网络崩溃。

论坛徽章:
0
37 [报告]
发表于 2010-07-27 08:58 |只看该作者
P2P是Peer-to-Peer的缩写。其中的每个Peer,既是客户机又是服务器。因此,P2P里的节点全是对等的,都是 ...
beepbug 发表于 2010-07-27 07:40


是这样,我们两人的区别就是,我淡化了P2P中 端点的服务概念,强化了中间握手的服务概念,而你正好相反。
其实意思本质上没有什么区别。我认为凡是给人提供某些服务的机器都可以叫服务器,一般指的是多数人通过某种网络的方式获得服务。例如大型/超级计算机通过终端/网路接入的计算服务,文件服务器提供的文件共享服务,P2P握手中心提供的中间认证服务。

您说的意思就相当于一个socket,服务器那端就是listen的一端,而客户端就是connect一端,这也没错,不过并不是楼主想要的信息。

您也承认在大的网络环境下没有中间人起作用的IM是很难去实现的,这也是我所认同的。

我觉得讨论到这一点应该差不多了,您对我的说法还有什么疑问吗?

论坛徽章:
0
38 [报告]
发表于 2010-07-27 11:50 |只看该作者
如果没有服务器,如何确定对方是谁?
打算不验证用户?

论坛徽章:
0
39 [报告]
发表于 2010-07-27 14:14 |只看该作者
本帖最后由 songvar 于 2010-07-27 14:16 编辑

电驴的kad网络不就是没有服务器吗

DHT的原理好像就是搜索部分节点最后获得全部节点

但是这样做出来的聊天软件感觉成聊天室了

论坛徽章:
0
40 [报告]
发表于 2010-07-27 14:22 |只看该作者
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP