跳转至

Chapter 5: The Network Layer: Control Plane

5.1 概述

5.2 路由选择算法

目的是发送方到接收方的过程中确定一条通过路由器网络的好的路径

路由选择算法的一种分类方式

  1. 集中式路由选择算法:用完整的、全局性的网络知识计算最短开销路径,该算法以所有节点之间的连通性及所有链路的开销为输入。具有全局状态信息的算法常被称作链路状态(Link State,LS)算法
  2. 分散式路由选择算法:路由器以迭代、分布式的方式计算出最低开销路径。每个节点仅有与其直接相连链路的开销知识即可开始工作 距离向量(Distance-Vector)算法。这种分散式算法,通过相邻路由器之间的交互式报文交换,也许更适合那些路由器直接交互地控制平面

第二种广义分类方式:静态、动态

  1. 静态路由选择算法:路由随时间的变化非常缓慢,通常是人工进行调整
  2. 动态路由选择算法:随着网络流量负载或拓扑发生变化而改变路由选择路径。一个动态算法可周期性地运行或直接相应拓扑或链路开销的变化而运行。会受到诸如路由选择循环的问题的影响

第三种分类方式:负载敏感、负载迟钝

  1. 负载敏感:链路开销会动态地变化以反映底层链路的拥塞水平
  2. 负载迟钝:当今的因特网路由选择算法

5.2.1 链路状态路由选择算法(LS算法)

链路状态算法中,网络拓扑和所有的链路开销都是已知的

实践中这是通过让每个节点向网络中所有其他节点广播链路状态分组来完成的,每个链路状态分组包含它所连接的链路的标识和开销

这由链路状态广播算法完成,广播的结果是所有节点都具有该网络的统一完整的视图

Dijkstra算法

振荡

多个路由器同时为了避免拥塞而选择同一条链路,又在下一次传输同时选择另一条链路,如此反复

5.2.2 距离向量路由选择算法(DV算法)

迭代的、异步的、分布式的

分布式:每个节点都要从一个或多个直接相连邻居接受某些信息,执行计算,然后将计算结果分发给邻居

迭代:此过程一直要持续到邻居之间无更多信息要交换为止

异步的:不要求所有节点相互之间步伐一致的操作

5.3 因特网中自治系统内部的路由选择

  • 规模:路由器数目极大,存储路由选择信息需要巨大的内存
  • 管理自治:每个ISP希望按自己的意愿运行路由器,或者对外部隐藏其网络的内部组织面貌

这两个问题都可以通过将路由器组织进自治系统(Autonomous System, AS),每个AS由一组处在相同管理控制下的路由器组成。

通常在一个ISP中的路由器以及互联它们的链路构成一个AS

一个姿势系统由其全局唯一的AS号所标识

在相同AS中的路由器都运行相同的路由选择算法并且有彼此的信息。子啊一个自治系统内运行的路由选择算法叫做自治系统内部路由选择协议

开放最短路优先(OSPF)

使用OSPF,一台路由器构建了一副关于整个自治系统的完整拓扑图。

每台路由器在本地运行Dijkstra的最短路径算法

各条链路开销是由网络管理员配置的,管理员也许会选择我将所有链路开销设为1,因而实现了最少条数路由选择我,或者可能将链路权值按与链路容量成反比来设置,从而鼓励流量使用高带宽链路

每当一条链路的状态发生变化时,路由器就回广播链路状态信息,即使链路未发生变化,也要周期性的广播

OSPF的优点:

  • 安全:能够鉴别OSPF路由器之间的交换。使用鉴别,只有受信任的路由器能参与一个AS内的OSPF协议,因此可防止而已入侵者将不正确的信息注入路由器表内
  • 多条相同开销的路径:当到达目的地的多条路径具有相同的开销时,OSPF允许使用多条路径
  • 对单播的多播路由选择的综合支持
  • 支持在单个AS中的层次结构:一个OSPF自治系统能够层次化的配置多个区域

5.4 ISP之间的路由选择:BGP

自治系统间路由选择协议

在因特网中,所有的AS运行相同的AS间路由选择协议,称为边界网关协议(BGP)

5.4.1 BGP的作用

在BGP中,分组并不是路由到一个特定的目的地址,是路由到CIDR化的前缀

  1. 从邻居AS获得前缀的可达性信息:BGP允许每个子网向因特网的其余部分通告它的存在
  2. 确定到该前缀的最好的路由:一台路由器可能知道两条或更多条到特定前缀的不同路由

5.4.2 通告BGP路由信息

对于每个AS,每台路由器要么是一台网关路由器,要么是一台内部路由器

网关路由器:位于AS边缘,直接连接到其他AS的一台或多台路由器

内部路由器:仅连接在它自己AS中的主机和路由器

5.5 SDN控制平面

5.6 因特网控制报文协议

主机和路由器用来彼此沟通网络层的信息

最典型的用途:差错报告

承载在IP分组中,在体系结构上讲位于IP之上