免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: mik

大家讨论一下 IM 的实现结构和方案 [复制链接]

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
发表于 2009-07-06 23:30 |显示全部楼层
看起来这几年进步不少啊。

论坛徽章:
0
发表于 2009-07-06 23:35 |显示全部楼层
学习

论坛徽章:
0
发表于 2009-07-06 23:44 |显示全部楼层
原帖由 flw 于 2009-7-6 23:30 发表
看起来这几年进步不少啊。



谢谢老大夸奖, 我作过一个完整的类似qq, skype的软件,  所以对这些熟悉些。

只不过我做的软件没火起来。 学了点技术, 钱没劳到。

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
发表于 2009-07-07 00:00 |显示全部楼层
原帖由 xhl 于 2009-7-6 23:44 发表

谢谢老大夸奖, 我作过一个完整的类似qq, skype的软件,  所以对这些熟悉些。

只不过我做的软件没火起来。 学了点技术, 钱没劳到。

我也曾看过 ejabberd,感觉这种东西还是要用起来才算数,没用户就没成就感。

论坛徽章:
0
发表于 2009-07-07 00:44 |显示全部楼层
原帖由 xhl 于 2009-7-6 22:26 发表
恩, 有这个可能, 坦白讲, 我也没仔细分析过qq的协议。

我说他的文本全是server relay, 是推断出来的。原因有3:

1. 如果要维护一条p2p的通路, 要不停的在这个通道上发包, 否则会被firewall关掉。 语音视频正适合, 因为本身就是每秒20-50个包左右。

2. 文本聊天是要有记录的, 甚至会做些特殊的屏蔽。 不通过server完全无法控制。

3. relay文本的代价比较小。

我猜测你看到发往对方的 ip 包, 可能是他的连接性检测包, 就当你跟这个buddy聊天的时候, 内部会尝试做一些p2p的工作。

为你跟这个朋友通话, 准备通路。


当时只是聊天,没有发送文件或者语音视频,但是确实抓到一些UDP包, 猜测原因可能是,聊得比较high的时候就给你打通P2P或者发送一些自定义表情的时候走P2P.
需要屏蔽的时候可以把屏蔽列表发送到客户端让客户端(发送方或者接收方或者双方)自己屏蔽.

论坛徽章:
0
发表于 2009-07-07 05:03 |显示全部楼层
原帖由 xhl 于 2009-7-6 20:15 发表



qq的文本聊天全部是server中转的, 但不是一个server, 是几w台server可能。

qq的语音跟视频基本是不用server 中转的, 因为如果你不能p2p, 则qq认为你无法享受这个服务。 所以有些人的网络环境下, 就 ...

这几w台server估计得是分布的,且分布得足够开,否则会阻塞吧?

论坛徽章:
1
NBA常规赛纪念章
日期:2015-05-04 22:32:03
发表于 2009-07-07 08:36 |显示全部楼层
楼主把这个项目外包给xhl

论坛徽章:
0
发表于 2009-07-07 09:38 |显示全部楼层
qq的语音跟视频基本是不用server 中转的, 因为如果你不能p2p, 则qq认为你无法享受这个服务。 所以有些人的网络环境下, 就是不能语音视频。


xhl, 这个好像不太对.
qq的音视频,  它首先会尝试udp的直连.
如果不可以, 它还会尝试 服务器中转 的方式来建立双方的连接.

论坛徽章:
0
发表于 2009-07-07 09:40 |显示全部楼层
好好学了一下,也对QQ的实现方式很好奇啊~~

论坛徽章:
0
发表于 2009-07-07 09:44 |显示全部楼层
原帖由 xhl 于 2009-7-6 23:12 发表



一定要做client - server形式吗, 个人感觉, bs的结构, 也可以做你这种存文本的应用。

如果是cs结构的, 那就设计协议, 你这种应用在im边, 应用的是比较简单的, 更多的是你背后的业务数据如何跟i ...


学习了,我正在找这方面的资料。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP