慢慢说计网:TCP 和 UDP

97 阅读2分钟

小Q:什么是 TCP 协议?

慢慢:TCP 协议是传输层的协议,它主要的特点如下:

  • TCP 是面向连接的。(就像打打电话一样,通话前需要先拨号建立连接,通话结束后要挂机释放连接);
  • TCP 连接是点对点的连接;
  • TCP 提供可靠交付的服务,通过 TCP 连接传输的数据,无差错,不丢失,不重复,且按序到达;
  • TCP 提供全双工的通信服务。TCP 允许通信双方的应用进程在任何时候都能发送数据。TCP 两端都有发送和接收缓存来临时存放双方通信的数据。
  • TCP 面向字节流,流指的是流入进程或流出进程的字节序列。面向字节流的含义是:虽然应用程序和 TCP 的交互是一次一个数据块(大小不等),但 TCP 把应用程序交下来的数据仅仅看成一连串的无结构的字节流。


小Q:什么是 UDP 协议?

慢慢:慢慢:UDP 协议也是传输层的协议,它主要的特点如下:

  • UDP 是无连接的;
  • UDP 是尽最大努力交付的,不保证可靠的协议;(如果需要可靠性,则需要主机自定义可靠策略)
  • UDP 是面向报文的;
  • UDP 没有拥塞控制,因此网络出现拥塞时不会使源主机的发送速率降低(对实时应用很有用,如直播,视频会议等)
  • UDP 支持一对一,一对多,多对一,多对多的交互通信;
  • UDP 的首部开销小,只有 8 个字节,比 TCP 的 20 字节的首部要端。

小Q:什么协议用到了 TCP 或 UDP?

TCP:

  • FTP:文件传输协议,21 端口
  • Telnet:远程登录协议,用户可以一自己的身份远程连接到计算机上
  • SMTP:简单邮件传送协议。
  • HTTP:超文本传输协议

UDP:

  • DNS:域名解析协议
  • SNMP:简单网络管理协议
  • DHCP:动态主机配置协议