引入:当今社会,通讯的方式越来越多,QQ和MSN应该是我们在网络上(主要是PC,鉴于现在微信比较火)最常用即时通讯(IM)软件,它们除了可以当作通讯软件外,还可以用于用户之间传输数据和文件,但是我相信很多人都有注意到,大多数情况下,MSN的传输速度都比QQ要慢很多。这个是什么原因?网上有很多帖子和文章对此作了说明,说QQ是一个基于TCP/UDP协议的通讯软件,而MSN是基于TCP协议的通讯软件。下面就个人的一些理解分析一下:
一、登录方式
登录QQ服务器有两个方式,一种是以UDP方式登录,另一种就是TCP方式。QQ登录时,首先采用UDP方式登录,首先向本地端口4000发送DNS请求,解析腾讯服务器的IP;然后用UDP 8000目的端口登录。如果无法登陆,会继续尝试几次(一般为3次),继续无法登录,就会尝试采用TCP 80端口方式登录了。
不管是UDP还是TCP,最终登陆成功之后,QQ都会有一个TCP连接来保持在线状态。这个TCP连接的远程端口一般是80,采用UDP方式登陆的时候,端口是8000。因此,假如你所在的网络开放了80端口,但没有屏蔽腾讯的服务器IP,恭喜你,你是可以登陆成功QQ的。