📜  计算机网络中的分组交换和延迟

📅  最后修改于: 2021-09-27 14:54:42             🧑  作者: Mango

数据包交换是一种将数据以数据包的形式传输到网络的方法。为了通过网络快速有效地传输文件并最大限度地减少传输延迟,数据被分成可变长度的小块,称为Packet 。在目的地,所有这些小部件(数据包)都必须重新组装,属于同一个文件。一个数据包由有效载荷和各种控制信息组成。不需要预先设置或预留资源。

分组交换在交换分组时使用存储和转发技术;在转发数据包时,每跳首先存储该数据包然后转发。这种技术非常有用,因为由于某种原因,数据包可能会在任何一跳被丢弃。一对源和目的地之间可能有不止一条路径。每个数据包都包含源地址和目标地址,它们使用它们独立地在网络中传播。换句话说,属于同一文件的数据包可能会或可能不会通过相同的路径。如果某条路径出现拥塞,则允许数据包在现有网络上选择不同的路径。

分组交换网络旨在克服电路交换网络的弱点,因为电路交换网络对于小消息不是很有效。

分组交换优于电路交换的优点:

  • 在带宽方面更有效,因为没有保留电路的概念。
  • 最小的传输延迟。
  • 更可靠,因为目的地可以检测丢失的数据包。
  • 更容错,因为在任何链路出现故障的情况下,数据包可能会遵循不同的路径,这与电路交换不同。
  • 具有成本效益且实施起来相对便宜。

分组交换优于电路交换的缺点:

  • 数据包交换不按顺序提供数据包,而电路交换提供数据包的有序传递,因为所有数据包都遵循相同的路径。
  • 由于数据包是无序的,我们需要为每个数据包提供序列号。
  • 由于可以遵循多条路径,因此每个节点的复杂性更高。
  • 传输延迟更多是因为重路由。
  • 分组交换仅对小消息有益,但对于突发数据(大消息)电路交换更好。

分组交换模式:

1. 面向连接的分组交换(虚拟电路):
在开始传输之前,它使用信令协议建立一条逻辑路径或虚拟连接,在发送方和接收方之间,所有属于这个流的数据包都将遵循这个预定义的路由。虚拟电路 ID 由交换机/路由器提供,用于唯一标识此虚拟连接。数据被分成小单元,所有这些小单元都在序列号的帮助下附加。总的来说,这里发生了三个阶段——设置、数据传输和拆卸阶段。

所有地址信息仅在设置阶段传输。一旦发现到目的地的路由,将条目添加到每个中间节点的交换表中。在数据传输过程中,包头(本地头)可能包含长度、时间戳、序列号等信息。
面向连接的交换在交换 WAN 中非常有用。一些使用虚拟电路交换方法的流行协议是 X.25、帧中继、ATM 和 MPLS(多协议标签交换)。

2. 无连接分组交换(数据报):
与面向连接的分组交换不同,在无连接分组交换中,每个分组都包含所有必要的寻址信息,例如源地址、目的地址和端口号等。在数据报分组交换中,每个分组都是独立处理的。属于一个流的数据包可能采用不同的路由,因为路由决策是动态做出的,因此到达目的地的数据包可能是乱序的。它没有连接建立和拆卸阶段,就像虚拟电路一样。
在无连接分组交换中不能保证分组传送,因此必须由使用附加协议的端系统提供可靠传送。

A---R1---R2---B

A is the sender (start)
R1, R2 are two routers that store and forward data
B is receiver(destination)

要将数据包从 A 发送到 B,存在延迟,因为这是一个存储转发网络。

分组交换延迟:

  1. 传输延迟
  2. 传播延迟
  3. 排队延迟
  4. 处理延迟