什么是网络?
介绍互联网的基本结构以及你的网络应用程序如何融入其中。
简单来说,网络是一个遍布全球的互联网络,连接了众多设备,并使它们能够相互通信。互联网上的网站托管在称为服务器的设备上,当你访问一个网页时,本质上是在与该网站所托管的服务器交换数据。你用来访问网页的设备在互联网的语境中被称为客户端。简而言之,网络通过一系列复杂的机制实现了客户端与服务器之间的数据交换。
网络分层
由于网络是一个极其复杂且分布广泛的系统,网络中的机器通常被划分为若干抽象层次,每一层都承担特定的任务,以支持整体的通信过程。这些层次如下:
- 应用层
- 传输层
- 网络层
- 数据链路层
- 物理层
每一层都建立在前一层的基础之上,并通过特定的协议实现数据交换过程中的功能。
[终端系统中的分层]
在接下来的内容中,我们将从底层开始,逐步介绍每一层的基本作用。
物理层
机器的物理层指的是构成网络连接的物理线路和电路。
数据链路层
数据链路层负责将数据从任意一台机器传输到与其直接相连的另一台设备或机器。
网络层
网络层负责连接互联网上的任意两台机器。它提供全局连接能力,使得终端系统能够在远超数据链路层范围的规模上进行通信。
传输层
传输层负责连接互联网上的应用程序。它将来自单一源的数据进行解复用,并将其传递给目标应用程序。在互联网语境下,传输层的核心作用是实现进程间的通信;它允许同一台机器或不同机器上的两个独立进程相互发送消息。为此,它使用套接字(sockets),套接字本质上是进程的通信入口。换句话说,套接字是进程接收和发送消息的途径。
应用层
应用层负责实现互联网上的进程间通信。它是整个分层结构的最顶层,应用程序本身构建在此层之上。应用层为应用程序提供通信接口和面向用户的各类服务,以支持其与单个进程之间的通信。
快速小测验!
以上内容涵盖了网络的基本概念及其对连接设备所施加的抽象模型。
Quiz
万维网和互联网是同一个东西