使用UDP从Memcached获取数据时丢包

时间:2017-07-18 18:31:38

标签: networking tcp udp memcached

我听说,像facebook这样的公司正在使用UDP从memcached中获取数据。我有一个疑问,他们如何确保没有数据包丢失和接收数据包的顺序是每个要求。我们知道tcp提供这样的设施,但udp没有。

1 个答案:

答案 0 :(得分:0)

OSI模型有7层:

  1. 应用层
  2. 表示层
  3. 会话层
  4. 传输层
  5. 网络层
  6. 数据链接层
  7. 物理层
  8. 将事物拆分为层是解决问题的非常好的方法,但这并不意味着您必须在网络层中执行所有网络操作。

    正如您所提到的,当UDP没有时,TCP会向终端系统提供反馈,但UDP有自己的优势。 UDP的数据报首先比TCP的数据报简单。而且像Facebook这样的大型系统都使用UDP,因为在这些系统中使用TCP并不是非常聪明,因为所有数据发送者都必须跟踪许多接收器的发送速率和重传率。因此,如果他们使用TCP,他们的网络层将处于非常大的压力下。

    因此,他们在应用层进行流量控制,以减少网络流量。