网络层

  • 网络层能够被分解为两个相互作用的部分,即数据平面和控制平面。
    • 数据平面功能:即网络层中每台路由器的功能,该数据平面功能决定到达路由器输入链路之一的数据报如何转发到该路由器的输出链路之一。
    • 控制平面功能:即网络范围的逻辑,该控制平面功能控制数据报沿着从源主机到目的主机的端到端路径中路由器之间的路由方式。
  • 传统上,控制平面路由选择协议和数据平面转发功能已经被实现成一个整体,位于一台路由器中。
  • 软件定义网络(Software-Defined Networking,SDN)通过将这些控制平面功能作为一种单独服务,明确的分离数据平面和控制平面。

网络层概述

  • 每台路由器的数据平面的主要作用是从其输入链路向其输出链路转发数据报;控制平面的主要作用是协调这些本地的路由器转发动作,使得数据报沿着源和目的地主机之间的路由器路径最终进行端到端传送。

转发和路由选择

  • 网络层的作用:将分组从一台发送主机移动到一台接收主机。
    • 转发。当一个分组到达某路由器的一条输入链路时,该路由器必须将分组移动到适当的输出链路。
    • 路由选择。当分组从发送方向流向接收方时,网络层必须决定这些分组所采用的路由或路径。计算这些路径的算法被称为路由选择算法。
  • 转发是指将分组从一个输入链路接口转移到适当的输出链路接口的路由器本地动作。
  • 路由选择是指决定分组从源到目的地所采取的端到端路径的网络范围处理过程。
  • 每台网络路由器中有一个关键元素是它的准发表。路由器检查到达分组首部的一个或多个字段值。进而使用这些首部值在其转发表中索引,通过这种方法来转发分组。

1.控制平面:传统的方法

  • 路由选择算法运行在每台路由器中,并且在每台路由器中都包含转发和路由选择两种功能。

2.控制平面:SDN方法

  • 远程控制器计算和分发转发表以供每台路由器所使用。

网络服务模型

  • 确保交付。该服务确保分组将最终到达目的地
  • 具有时延上界的确保交付。该服务不仅确保分组的交付,而且在特定的主机到主机时延上界内交付
  • 有序分组交付。该服务确保分组以它们发送的顺序到达目的地
  • 确保最小带宽。
  • 安全性
  • 因特网的网络层提供了单一的服务,称为尽力而为服务。
  • 某些分组交换机称为链路层交换机,基于链路层帧中的字段值做出转发决定,这些交换机因此被称为链路层(第二层)设备。其他分组交换机称为路由器,基于网络层数据包中的首部字段值做出转发决定。

路由器工作原理

  • 输入端口。执行几项重要功能。在路由器中执行终结入物理链路的物理层功能。入链路远端的数据链路层交互来执行数据链路层功能。在输入端口还要执行查找功能。通过查询转发表决定路由器的输出端口,到达的分组通过路由器的交换结构转发到输出端口。控制分组从输入端口转发到路由选择处理器。
  • 交换结构。交换结构将路由器的输入端口连接到它的输出端口。
  • 输出端口。输出端口存储从交换结构接收的分组,并通过执行必要的链路层和物理层功能在输出链路上传输这些分组。
  • 路由选择处理器。路由选择处理器执行控制平面功能。

交换

  • 经内存交换
  • 经总线交换
  • 经互联网络交换

网际协议:IPv4、寻址、IPv6及其他

IPv4数据报格式

  • 版本(号):这4比特对定了数据报的IP协议版本。
  • 首部长度。因为一个IPv4数据报可包含一些可变数量的选项,故需要用这4比特来确定IP数据报中载荷实际开始的地方。
  • 服务类型。服务类型(TOS)比特包含在IPv4首部中,以便使不同类型的IP数据报能相互区别开来
  • 数据报长度。这是IP数据报的总长度,以字节计。
  • 标识、标志、片偏移。与IP分片有关
  • 寿命。寿命(Time-To-Live,TTL)字段用来确保数据报不会永远在网络中循环。
  • 协议。该字段通常仅当一个IP数据报到达其最终目的地时才会有用。该字段值指示了IP数据报的数据部分应交给哪个特定的运输层协议。
  • 首部校验和。首部校验和用于帮助路由器检测收到的IP数据报中的比特错误。
  • 源和目的IP地址。当某源生成一个数据报时,它在源IP字段中插入它的IP地址,在目的IP地址字段中插入其最终目的地的地址。
  • 选项。选项字段允许IP首部被扩展。
  • 数据(有效载荷)。

IPv4数据报分片

  • IPv4的设计者将标识、标志和片偏移字段放在IP数据报首部中。

IPv4编址

  • 一台主机通常只有一条链路连接到网络;当主机中的IP想发送一个数据报时,他就在该链路上发送。主机与物理链路之间的边界叫做接口。从技术上将,一个IP地址与一个接口相关联,而不是与包括该接口的主机或路由器相关联。
  • 用IP的术语来说,互联这3个主机接口与1个路由器街口的网络形成一个子网。IP编址为这个子网分配一个地址223.1.1.0/24,指示32比特中的最左侧24比特定义了子网地址。

获取主机地址:动态主机配置协议

  • 某组织一旦获得了一块地址,它就可为本组织内的主机与路由器接口逐个分配IP地址。更多的使用动态主机配置协议。DHCP允许主机自动获取一个IP地址。
    • DHCP服务器发现。
    • DHCP服务器提供
    • DHCP请求
    • DHCP ACK。

网络地址转换

  • NAT使路由器对于外部世界来说不像一台路由器。相反NAT路由器对外界的行为就如同一个具有单一IP地址的单一设备。路由器从ISP的DHCP服务器得到它的地址,并且路由器运行一个DHCP服务器,为位于NAT-DHCP路由器控制的家庭网络地址空间中的计算机提供地址。
  • 如果从广域网到达NAT路由器的所有数据报都有相同目的IP地址,那么该路由器怎样直到它应将某个分组转发给哪个内部主机呢?技巧是使用NAT路由器上的一张NAT转换表,并且在表项中包含了端口号及其IP地址。

IPv6

  • 扩大的地址容量
  • 简化高效的40字节首部
  • 流标签
  • 版本
  • 流量类型
  • 流标签
  • 有效载荷长度
  • 下一个首部
  • 跳限制
  • 源地址和目的地址
  • 数据
  • 分片/重新组装
  • 首部校验和
  • 选项