UDP 和 TCP 相比,为什么前者会更快一些?

如题,究竟 UDP 的效率有多高,为何会更快?

阅读 10.6k
1 个回答

单纯说UDP快是没道理的,UDP是个数据报协议,TCP是面向连接的协议,这两个东西可比性不像你想象的那么强。
一定要说UDP比TCP快的地方无非就是UDP没有流控,没有握手,没有成功确认,一个数据包发过去就不管,从这个角度上说TCP是开销大一点。
但UDP的“快”带来的问题是它不可靠,的确有些场景快就足够了,比如流媒体,偶尔丢失错乱几个包不是大问题,但更多的情况下,数据的正确性是一个必选项,此时UDP就不一定适用了。

但有个场景你是绝对需要UDP的,那就是广播,TCP这种点对点有连接的协议,天生就没法广播,你只能建立一大堆连接然后朝每个对端把数据分别发送一遍。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进