有关IM即时通讯原理

Posted DevLi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有关IM即时通讯原理相关的知识,希望对你有一定的参考价值。

在网上搜索了一些资料,谈谈自己对IM即时通讯的理解

IM全称为Instant Messaging,即时通讯,如qq那种的。

现在有两个用户UserA, UserB, 俩人是一个IM通讯软件的好友,UserA登录,服务器读取他的用户名密码,将他的好友列表传送回来,好友列表中有UserB的信息,比如在不在线,如果在线ip地址是什么,端口是多少,这样UserA就可以找到UserB了。

现在UserA想和UserB聊天,如果UserB在线,那么UserA可以通过UserB的ip,端口号等,来与UserB进行信息的交互,貌似这种交互应该使用UDP协议,qq就是这样的。如果不在线,可能由于防火墙或者NAT或者网速差等等原因建立连接很慢,IM服务器就起到作用了,UserA和UserB发送的消息都可以通过服务器进行中转,如果在线,直接发送给对方,如果不在线,那么IM服务器会暂时存储UserA发给UserB的信息,等UserB上线的时候,再发送给他。

以上,基于兴趣,以后有想法实现的时候好好琢磨琢磨。

以上是关于有关IM即时通讯原理的主要内容,如果未能解决你的问题,请参考以下文章

IM即时通讯实现的原理

IM即时通讯实现原理

IM即时通讯实现原理

IM即时通讯实现原理

Socket搭建即时通讯服务器

腾讯im即时通讯和即构im即时通讯那个比较好?