为什么QQ用的是UDP协议而不是TCP协议
答案:2 悬赏:70 手机版
解决时间 2021-03-21 21:45
- 提问者网友:战皆罪
- 2021-03-21 01:09
为什么QQ用的是UDP协议而不是TCP协议
最佳答案
- 五星知识达人网友:人類模型
- 2021-03-21 01:46
QQ使用的是OICQ协议,首选的传输层是UDP,如果UDP不可登陆,那么会再尝试使用TCP进行传输。
UDP使用的端口是8000,TCP使用的端口是443,应用协议基本一样,只是在通过TCP进行传输时,前两个字节为协议内容的长度(包括2个字节)。
UDP使用的端口是8000,TCP使用的端口是443,应用协议基本一样,只是在通过TCP进行传输时,前两个字节为协议内容的长度(包括2个字节)。
全部回答
- 1楼网友:洒脱疯子
- 2021-03-21 03:05
这个问题很有意思!我也想了很久。
如果大家了解udp和tcp的区别。很多人会告诉你。tcp协议因为是可靠的!它会验证信息是否发送到目的地。而且tcp连接和断开时都会经过看似漫长3次握手。而udp因为是不可靠的 它没有验证机制更没有什么握手打招呼!我们聊天肯定希望速度越快越好不要有延时,所以有很多人或许会告诉你udp比tcp快得多!所以qq用upd。
这个从理论上讲是对的!但大家忽视了一个客观因素。也就是tcp的验证和3次握手到底能用多少时间,这里可以告诉你最多不会超过0.5秒也就是500毫秒 这个速度玩游戏的人都知道很慢了。如果说0.5秒你觉得我估计少了那么1秒怎么也够了吧 对于我们人来说1秒不是眨眼的功夫吗。所以说以上所说不是qq使用udp的原因,起码不是主要原因。(其实qq也有验证机制,只不过这个验证机制是由应用层其他协议完成的)
那么就要更深一层去探讨udp和tcp 在传输上区别了。
首先我个人认为最主要是upd包比tcp包要少12个字节。12个字节差距虽然很微小 但量变到一定程度那就有质的变化。现在我们2m宽带理论256kb 每秒,就算200kb吧 等于1600个字节 大家可以算这个差距。
还有一个更深层原因也就是udp“素质”很差。tcp就很绅士。 为什么说udp素质不高 是因为udp就像马路那种见缝插帧的司机 谁也不让 拼了命往前冲 不管你路上有多挤 更不会去想维持一下次序。tcp就不会!一旦tcp觉得路上拥挤就会自觉降低发送速度 他会努力维护次序。这样一进一退差距就大了。
所以我觉得这才是qq使用udp的主要原因!也似乎也符合腾讯一贯作风 呵呵 msn使用tcp 就要慢一些 不信你可以试试
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯