Internet层协议的功能

网络工程 通讯协议
2021-07-25 02:49:48

我在 Todd Lammle 的 CCNA 书中阅读了有关 Internet 层和协议的内容,但我无法理解以下文字:

Internet 层的功能之一是为上层协议提供单一的网络接口。如果没有这一层,应用程序程序员将需要为每个不同的网络访问协议在他们的每个应用程序中编写“钩子”

这里的“单一网络接口”是什么?有人请举一个现实的例子来解释。

1个回答

本质上,每一层都有特定的功能,不需要担心其他层的功能。

在最顶部,应用程序打开一个 TCP 套接字并向目标发送数据流。它不关心路由、数据包、校验和和线路代码。

在下一个较低的层上,像 TCP 这样的传输协议位于网络层的顶部,不需要担心如何在全球范围内传输数据。它可以专注于对数据流进行打包、重传、分段排序、拥塞等。

Internet 或网络层的功能是将数据包通过大型网络路由到其目的地。它不知道应用程序或数据流,它只知道如何从 A 到 B。在现实生活中,这就是路由器在 Internet 上转发 IP 数据包的方式。

在下一个较低的层次上,像以太网这样的链路层协议可以专注于对逻辑网络数据包进行物理成帧,并将它们移动到一个相当小的“扁平”网络中。

以太网还涵盖物理层,其中帧被序列化、编码、通过铜缆或光纤链路移动、解码、重新组装并传回目的地的链路层。

请注意,我只为每一层使用了一个示例。有很多选择。网络层可能使用 IPv6 和物理层 ADSL。应用程序不需要知道这一点,它与“堆栈”的接口是相同的。同样,网络层也不知道物理层,因为它的下行接口也始终相同。