什么是数据包?

原来你在互联网上所做的一切都涉及数据包。例如,你接收的每个网页都以一系列数据包的形式出现,你发送的每封电子邮件也以一系列数据包的形式离开。以小数据包传输数据的网络被称为分组交换网络

在互联网上,网络会将一封电子邮件消息分解成特定大小的字节部分。这些就是数据包。每个数据包都携带着有助于其到达目的地的信息——发送方的IP 地址、预期接收方的 IP 地址、告知网络此电子邮件消息已被分解成多少个数据包以及此特定数据包的编号。数据包使用互联网所用的协议传输数据:传输控制协议/互联网协议 (TCP/IP)。每个数据包都包含你的消息正文的一部分。一个典型的数据包可能包含 1,000 或 1,500 字节。

广告

­

然后,每个数据包都会通过最佳可用路由发送到其目的地——这条路由可能被消息中的所有其他数据包采用,也可能不被消息中的任何其他数据包采用。这使得网络更高效。首先,网络可以每毫秒平衡各种设备上的负载。其次,如果在消息传输过程中网络中的某个设备出现问题,数据包可以绕过该问题进行路由,从而确保整个消息的传递。

根据网络类型,数据包可能被称为其他名称:

  • 信元

接下来,了解数据包的组成部分以及数据包如何应用的示例。

广告

网络数据包结构

我听说数据在计算机网络上以数据包的形式传输。什么是数据包?为什么网络要使用它们?
2009 十万个为什么

大多数网络数据包分为三部分:

包头 - 包头包含有关数据包所携带数据的指令。这些指令可能包括:

广告

  • 数据包长度(有些网络使用固定长度的数据包,而另一些则依赖包头来包含此信息)
  • 同步(一些比特,帮助数据包与网络匹配)
  • 数据包编号(此数据包在数据包序列中的位置)
  • 协议(在传输多种类型信息的网络上,协议定义了正在传输的数据包类型:电子邮件、网页、流媒体视频)
  • 目的地址(数据包的去向)
  • 源地址(数据包的来源)

有效载荷 - 也称为数据包的正文数据。这是数据包实际传送到目的地的数据。如果数据包是固定长度的,那么有效载荷可能会用空白信息进行填充以使其达到正确的大小。

包尾 - 包尾,有时也称为页脚,通常包含几个比特,用于告知接收设备已到达数据包的末尾。它还可能包含某种错误检查。数据包中最常用的错误检查是循环冗余校验 (CRC)。CRC 非常巧妙。它在某些计算机网络中的工作原理如下:它计算有效载荷中所有 1 的和并将它们相加。结果以十六进制值存储在包尾中。接收设备将有效载荷中的 1 相加,并将结果与存储在包尾中的值进行比较。如果值匹配,则数据包良好。但如果值不匹配,接收设备会向源设备发送请求以重新发送数据包。

­ 例如,让我们看看一封电子邮件消息如何分解成数据包。假设你向朋友发送一封电子邮件。这封电子邮件的大小约为 3,500 比特(3.5 千比特)。你发送它的网络使用固定长度的 1,024 比特(1 千比特)数据包。每个数据包的包头长 96 比特,包尾长 32 比特,为有效载荷留下 896 比特。要将 3,500 比特的消息分解成数据包,你需要四个数据包(3,500 除以 896)。其中三个数据包将包含 896 比特的有效载荷,第四个将包含 812 比特。以下是这四个数据包中一个可能包含的内容:

每个数据包的包头将包含正确的协议、源地址(你计算机的 IP 地址)、目的地址(你发送电子邮件的计算机的 IP 地址)和数据包编号(因为有 4 个数据包,所以是 1、2、3 或 4)。网络中的路由器会查看包头中的目的地址,并将其与查找表进行比较,以确定将数据包发送到何处。一旦数据包到达目的地,你朋友的计算机将剥离每个数据包的包头和包尾,并根据数据包的编号顺序重新组装电子邮件。

广告

分组交换网络常见问题

数据包在互联网上如何工作?
你在互联网上所做的一切都以数据包的形式完成。这意味着你接收的每个网页都以一系列数据包的形式出现,你发送给别人的每封电子邮件也以一系列数据包的形式离开。以小数据包发送或接收数据的网络被称为分组交换网络。
为什么数据要分成数据包?
数据被分成数据包是因为这使得网络更高效。它允许网络每毫秒平衡各种设备上的负载。此外,如果在消息发送过程中网络中的某个设备出现问题,数据包可以绕过该问题进行路由,从而确保整个消息的传递。
什么是数据包结构?
网络数据包的结构由三部分组成:包头、有效载荷和包尾。包头包含有关数据包所携带数据的指令。有效载荷是数据包的主体,是数据包实际传送到目的地的数据。最后,包尾包含几个比特,用于告知接收设备已到达数据包的末尾。
互联网是分组交换网络吗?
你在互联网上所做的一切都使用分组交换,互联网本身就是一个无连接网络。

广告

加载中...