即时通讯(ICQ,OICQ,MSMessenger等)要保持Socket联接吗?一个IP是否只有65535个端口?

WhitePaper 2001-01-06 01:31:00
即时通讯(ICQ,OICQ,MSMessenger等)要保持Socket联接吗?一个IP是否只有65535个端口?

ICQ有千万级用户,同时应少说也有几十万到百万用户,
它是怎么做的?
谢谢
...全文
273 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
kingwill 2001-03-02
  • 打赏
  • 举报
回复
ICQ:大部分用的是TCP,面向连接的。
OICQ:除了文件传输是TCP,其他全部是UDP。
端口:理解上是65535,实际上能用不超过20K,系统保留的有几个口是不由用户支配的。
对于OICQ,有4个服务器群。一台PC,TCP连接超过1000就算你命大。
负载均衡:很容易,写个智能网关就可以了。主要是根据源IP分析,分发到最近的、空闲的服务器
,和智能路由一个原理。如果有精力,加个通信中间件。。
另外:新浪是TCP的,后台的处理应该用了多层技术。
zb_china 2001-03-02
  • 打赏
  • 举报
回复
我的想法:
利用自动重定向功能(应用协议实现的).如果一台服务器连接过多,发一个重定向应答,客户软件自动改变目标服务器.对于自定义的协议这很容易.
yexingzhe 2001-03-01
  • 打赏
  • 举报
回复
关注
liuanjun_v 2001-03-01
  • 打赏
  • 举报
回复
关注
netpacer2001 2001-02-23
  • 打赏
  • 举报
回复
感兴趣,请指教!
email:netpacer@21cn.com
WhitePaper 2001-01-06
  • 打赏
  • 举报
回复
谢谢。 那么如果用多台主机,在软件中是写定一个IP, 还是写个域名?
也就是说, 是怎能实现负载均衡的?
ether 2001-01-06
  • 打赏
  • 举报
回复
ICQ主要用UDP,OICQ只用UDP,UDP是无连接的。
Winsock MaxSockets是32767,UDP端口接近64K(<65535)。

如果用UDP,同一时刻<64K就行了,因此可以OICQ等一台机器可以“同时连接“
用户可大大超过这个数字。
当然,它也可以用多台主机。 :)

4,356

社区成员

发帖
与我相关
我的任务
社区描述
通信技术相关讨论
社区管理员
  • 网络通信
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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