为什么我们需要在网络传输数据时对其进行切碎/分块?

为什么我们需要在网络传输数据时对其进行切碎/分块?

在网络中,如果应用程序可以生成数据流,那么为什么数据不能以数据流的形式通过网络传输?相反,为什么在通过网络发送之前要将其切碎/分块?

答案1

我认为“分段”并不是您所描述的正确词语,而“分组”可能更合适。

将数据分成数据包的原因有很多,包括 -

  • 如果出现错误,只需要重新发送一小部分数据。
  • 如果多个设备共享一个连接(几乎总是如此 - 特别是当小型网络聚合成更大的网络时),将数据分成数据包可以使多个连接或多或少同时工作。
  • 相关地,它允许多个应用程序共享一个连接。
  • 相关地 - 例如在 VOIP 或交互式流量的情况下,使用数据包可以让两个人同时相互通信(考虑全双工而不是半双工)
  • 如果中间连接发生故障或超载并与另一个连接共享,则需要分解数据以利用这些链接。
  • 在硬件层面,以块形式发送数据更加容易且高效。

分段是不同的 - 它将计算机组合在一起,并允许您集中访问/控制不同计算机组之间的访问,并允许路由灵活性。

答案2

也许最好将分组交换与它所取代的方法进行比较:电路交换。电话使用电路交换。当您想要拨打电话时,您必须拿起电话拨打某人的号码,等待他们接听,然后,直到您挂断电话,您都会与该人建立专用连接,您可以通过该连接发送任意多或少的数据。您无法与任何其他人通信,直到您挂断该电路,然后建立新的电路,如果您不发送太多数据,那么您就浪费了电路的大量容量。

分组交换使您可以与任何地方的任何人交换数据,而无需担心设置和拆除电路。不会浪费容量来打开未充分利用的线路,而且您可以同时进行多个对话。

相关内容