Dzming.Li

网络层

4.1 网络层的功能

网络层在TCP/IP标准中被称为Internet Layer

在OSI基本模型中,对网络层的定义是:网络层提供必要的功能和规程,使传输层实体之间能够进行无连接方式或面向连接方式的传输。层

根据TCP/IP标准,明确指出网络层应该只有一种协议IP协议,将源主机传送至目的主机。

「网络层使传输层实体不必考虑底层的路由选择和中继转发问题」

4.1.1 异构网络互联

我们在今天的网络体系中把链路层作为广播域。不过早期

异构指的是通讯技术和运行协议的不同,在数据链路层,我们有以太网,有无线网,它们之间就是异构的。

要想让异构网络互联,基本策略是协议转换和构建虚拟互联网络.

假设三个网络A和B和C互联,协议转换的思路是这样的。

  1. A 网络发出符合协议 A 的分组。
  2. 中间设备将协议 A 的分组转换为协议 B 的分组
  3. 下一个中间设备再将协议 B 转换为协议 C。
  4. 最终由 C 网络接收。

这时,各个网络仍然遵循各自的协议,中间设备负责解决它们之间的不兼容问题。

而虚拟互联网络的概念就是建立一个更高一层的抽象协议,在逻辑上把它们构成一个互联的网络。

1974年,RFC 675在阿帕网中首次发明了网关这个概念

一个数据包需要从网络 A 到达网络 B。会经历以下过程。

  • 网络 A 将数据包交给连接两个网络的网关。
  • 网关移除网络 A 的封装,检查互联网数据包。
  • 网关决定下一步经过哪个网络。
  • 网关重新封装数据包,使其适应网络 B,再进行转发

到了90年代之后,网关通常被称为路由器。

而这个更高层面的协议也就是IP协议。

当然,实际上它们并不是真的互联的,中间有路由器,但是高层的协议通过屏蔽掉了这些。

网络层分割了广播域,把多个链路层网络连接到一起。

4.1.2 路由与转发

显然网关需要承担以下职责:

转发: 通过一条链路收到分组后,向哪条链路发送出去

路由: 当分组从源主机流向目的主机的时候,需要通过某种方法决定分组经过的路径,称之为路由算法。路由器通过路由表来实现路由选择

从80年代开始,逐渐兴起路由器这一用法。

4.1.3 SDN 基本概念

Software Defined Network

SDN把网络层分为两个平面,控制层面和数据层面