第五章 网络层控制平面

网络层

1、选路算法

(1)链路状态选路算法(LS)

全局的还是分散的信息?
全局的:
所有的路由器都有完整的网络拓扑结构、链路开销信息
“链路状态” 算法
Dijkstra’s 算法

数据结构与算法学过

算法复杂性: n 节点
每次迭代: 需要检查所有不在N’中的节点, 找出w节点,具有最低路径消耗
n(n+1)/2 次比较:复杂性 O(n^2)
更有效的执行可能: O(nlogn)
可能产生振荡:
e.g., 链路代价 = 链路承当的流量

(2)距离向量算法(DV)

分散的:
路由器知道物理相连的邻居, 到邻居的链路开销。
邻居间反复进行计算处理,交换信息
“距离矢量” 算法
**Bellman-Ford 方程 **(动态计算)

定义
dx(y) := 从x到y的具有最低开销路径的开销值
Then
dx(y) = minv {c(x,v) + dv(y) }
V是x的相邻节点, minv是对于与x相连的所有邻居而言

LS和DV算法的比较:https://blog.csdn.net/cat_hate_fish/article/details/105465623

(3)层次选路

静态的还是动态的?
静态的:
路由变化很慢,通常由人工进行设置
动态的:
路由变化很快
周期性更新
直接响应链路开销的变化

I、自治系统(AS):一个区域内的路由器组成集合AS

V是x的相邻节点, minv是对于与x相连的所有邻居而言
同一个自治系统的路由器运行相同的路由协议
区域内路由协议
不同自治系统内的路由器可以运行不同的区域内路由协议

II、网关路由器

和其他自治系统内的路由器直接相连的路由器
运行域间路由协议,与其他网关路由器交互
同自治系统内的所有其他路由器一样也运行域内路由协议

IIII、AS互联

第五章 网络层控制平面_第1张图片
AS域间选路
第五章 网络层控制平面_第2张图片
热土豆选路: 把分组送到两个路由器中最近的一个第五章 网络层控制平面_第3张图片

2、因特网中的选路

自治系统内的路由选择
亦称之为内部网关协议(IGP)

(1)RIP 路由信息协议

距离衡量:** 跳数** (max = 15 hops)
距离向量: 每隔30秒,通过响应报文在邻居间进行交换(也被称为RIP通告, advertisement)
每个通告: 包含了多达25个AS内的目的子网的列表

https://blog.51cto.com/kalng/829435

RIP: 链路失败及恢复

若180秒后没有收到通告,则认为邻居死机或链路中断。
通过故障邻居的路由失败
新的公告发送给其他邻居
邻居然后再发送新的公告 (如果转发表发生变化)
链路故障信息快速传播到整个网络
毒性逆转用于防止乒乓循环 (无限距离 = 16 跳)

RIP 转发表处理

RIP转发表(路由表)是由应用级的进程称为 route-d (后台程序)管理的。
通告通过 UDP 报文进行发送, 周期性重复第五章 网络层控制平面_第4张图片

(2)OSPF 开放最短路径优先

OSPF基本特点:

“open”: “开放”: 公用的
链路状态算法
分发LS 分组
每个节点具有拓扑图
路由计算使用 Dijkstra算法
每个router都广播OSPF通告,OSPF通告里为每个邻居路由器设一个表项(记录每个邻居的链路特征和费用)。
通告会散布到 整个 自治系统 (通过洪泛法)
OSPF信息直接通过** IP**传输 (不是 TCP 或 UDP)

OSPF相比于RIP的优点

  1. 安全: 所有OSPF 消息需要认证 (防止恶意入侵)
  2. 允许多个相同开销的路径 (在 RIP中只有一条路径)
  3. 对于每个链路, 有多个消费尺度用于不同的服务类型TOS (例如在尽力转发时卫星链路代价设置为 “低”,而对实时应用设置为高)
  4. 单播和多播综合支持:
    多播 OSPF (MOSPF) 使用和 OSPF同样的链路数据库
  5. 在大的区域中使用层次 OSPF

层次OSPF

第五章 网络层控制平面_第5张图片
两级层次: 本地区域, 主干区域.(这些区域都是在一个自治系统内)
只在区域内发送链路状态通告
每个节点有详细的区域拓扑; 仅知道到达其他区域内网络的方向(即最短路径)
区域边界路由器(同时属于本地区域和主干区域):“汇总”了到本区域内部网络的路径, 并通告给其他区域边界路由器.
主干路由器:限于在主干区域内运行OSPF路由协议。(本身不是区域边界路由器)
边界路由器: 连接到其他自治系统

(3)Internet 域间选路:BGP 内部网关路由协议 (Cisco 所有)

BGP (Border Gateway Protocol): 事实上的标准
BGP 为每个 AS 提供了一种手段:
从相邻AS获取子网可达信息
向该AS内部的所有路由器传播这些可达性信息
基于该可达信息和AS策略,决定到达子网的“好”路由
允许一个子网向Internet的其他部分通告它的存在 “I am here”

BGP基础

路由器对(BGP对等方)通过半永久TCP连接来交换选路信息:BGP 会话
BGP会话物理链路无关(并不总是和某条物理链路对应)。
当AS2通告一个前缀给AS1,说明AS2能够转发目的地址前缀是这个通告前缀的所有分组。
AS2能够在它的通告中汇总了这些前缀。
第五章 网络层控制平面_第6张图片

传播可达信息

在3A和1C的eBGP会话中,AS3向AS1通告一个前缀可达信息。
1c通过iBGP会话向AS1中的所有路由器发布这个新的前缀可达信息。
1b 又将这个可达信息通过1b和2a之间的eBGP会话通告给AS2。
当路由器得知一个新的前缀时,就在它的转发表中为该前缀创建一个项。
第五章 网络层控制平面_第7张图片

路径属性和BGP路由

当通告前缀时, 通告包含了BGP属性.
前缀+属性= “路由”
两个重要的属性:
AS-PATH: 包含了前缀的通告已经通告过的那些AS,如 AS 67 AS 17
NEXT-HOP: 指出到达下一个AS的具体AS间边界路由器(可能存在多条从当前AS到达下一个AS的链路)
当网关路由器接收到路由通告时,使用输入策略来决定接收/舍弃该通告。

BGP路由选择

路由器可能知道到相同前缀的多条路由,路由器必须从中选择.
排除规则(应用排除规则直到有一条留下)
1.本地偏好值属性: 具有最高偏好值的路由被选择
2.最短AS-PATH的路由
3.最靠近 NEXT-HOP路由器的路由 : 热土豆路由
4.其他标准

BGP报文

BGP 报文交换使用 TCP.
BGP 报文:
OPEN:建立到对方的TCP连接,并对发送者进行认证
UPDATE:通告新路径 (或者撤销旧路径)
KEEPALIVE:在没有UPDATES时保持连结活跃; 也对OPEN请求作出应答
NOTIFICATION:报告前面报文的错误; 也用于关闭
第五章 网络层控制平面_第8张图片

3、表项怎样进入路由器的转发表的?

综合了层次路由选择(Section 4.5.3),BGP(4.6.3)及OSPF(4.6.2)。

(1)路由器接收到前缀

从其他路由器接收到前缀信息第五章 网络层控制平面_第9张图片

(2)为前缀决定路由器输出端口

使用BGP路由选择发现最佳的域间路由

  1. BGP 信息包含 “routes”
  2. “route”是一个前缀和属性: AS-PATH, NEXT-HOP,…
  3. Example: route:
    Prefix:138.16.64/22 ; AS-PATH: AS3 AS131 ; NEXT-HOP: 201.44.13.125
  4. 路由器可能接收多个包含相同前缀的路由信息。
    选定一条路由信息。第五章 网络层控制平面_第10张图片

使用OSPF发现最佳域内路由

第五章 网络层控制平面_第11张图片

路由器决定最佳路由的端口第五章 网络层控制平面_第12张图片

(3)将前缀-端口信息填到转发表

第五章 网络层控制平面_第13张图片

你可能感兴趣的:(计网,后端)