美文网首页linux 网络编程网络编程
http/https、TCP/IP、UDP的选择

http/https、TCP/IP、UDP的选择

作者: 落落落落大大方方 | 来源:发表于2017-08-16 09:55 被阅读21次

    TCP是简单直接的长连接,可靠的信息传输,数据包的大小没有限制。要实现一个稳定的TCP网络连接,需要处理断线检测、慢速客户端响应阻塞数据包,对开放连接的各种dos攻击,阻塞和非阻塞IO模型等等。最糟糕的特性是它对阻塞的控制,TCP假定丢包是网络带宽不够造成的,这种情况时TCP就会减少发包速度。

    可靠的UDP也是有延迟的,但是由于它是在UDP的基础之上建立的通信协议,所以可以通过多种方式来减少延迟,不像TCP,所有的东西都要依赖于TCP协议本身而无法被更改。

    我们到底是使用TCP还是UDP取决于我们能否隐藏延迟,对延迟有敏感要求且TCP没有相应解决方案的时候就选择UDP吧。

    选择标准:

    由客户端间歇性的发起无状态的查询且偶尔发生延迟可以容忍,那么使用HTTP/HTTPS。

    客户端和服务器都可以独立发包,偶尔延迟可以容忍,使用TCP长连接。

    客户端和服务器都可以独立发包,无法忍受延迟,使用UDP。

    相关文章

      网友评论

        本文标题:http/https、TCP/IP、UDP的选择

        本文链接:https://www.haomeiwen.com/subject/kmkvrxtx.html