数据通信与计算机网络-09路由选择和拥塞控制

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第9讲 路由选 择与拥塞控制
D D B H1
D
H5
H6
第5章 网络层
5.3路由选择 5.4 拥塞控制 5.5 X.25协议
第9讲 路由选 择与拥塞控制
固定路由选择
固定路由选择
第9讲 路由选 择与拥塞控制
在每个节点上保持一张路由表,表上标明对每一个目的 地址应走哪条链路进行转发.路由表是在整个系统进行配 置时生成的.配置时根据事先计算好的“网络中任意两个节 点之间最短路径”,将这些最短通路制成路由表,存放在各 个节点中.每一个分组都可在所到达的节点中查找下一步 应转发到哪一个节点(下一站节点或后继节点). 经典的求最短路径算法是Dijkstra算法.它的条件是已 它的条件是已 知网络的拓扑和各链路长度, 知网络的拓扑和各链路长度 主要是通过计算任意两节点 间的最小链路长度,求得从源节点到目的节点间最短通路.
C3 C2 B4 A3
B3 B2 C1 B1
A4
A2 A1
图 重装死锁的例
拥塞控制
第9讲 路由选 择与拥塞控制
流量控制与拥塞控制的关系是: 流量控制与拥塞控制的关系是 在实施拥塞控制 (1)拥塞控制是一个全局性的过程,涉及到所有的主机,所 时,拥塞控制算法 拥塞控制算法 有的路由器,以及与降低传输性能有关的所有因素.拥 向发送端发送控 塞控制的前提是网络能够承受现有的网络负荷. . 制报文,并告诉发 制报文 并告诉发 送端网络已出现 (2)流量控制是一个局部性的过程,往往指在给定的发送 拥塞,必须放慢发 拥塞 必须放慢发 端和接收端之间的点到点通信量.流量控制所要做的 送速率.这和流量 送速率 这和流量 就是使发送端发送数据的速率不能使接收端来不及接 控制“很像” 控制“很像”. 收.流量控制总是存在着从接收端到发送端的某种直 接反馈,使发送端知道接收端是处于怎样的状况.
依据最短通路树生成节点1的路由表 图 依据最短通路树生成节点 的路由表
上述路由表仅是以节点1为源节点,由Dijkstra算法计算 得到节点1为根的通路树,然后生成节点1内存中的路由表 这样的路由表每个节点都有一个,只需分别以这些节点 这样的路由表每个节点都有一个 只需分别以这些节点 为源点,重新执行算法即可 重新执行算法即可. 为源点 重新执行算法即可
下形式:
∑对资源的需求>可用资源 对资源的需求>
网络拥塞的原因: 网络拥塞的原因 (1)网络中某个节点缓存的容量太小 造成到达该节 网络中某个节点缓存的容量太小,造成到达该节 网络中某个节点缓存的容量太小 点的分组因无空间暂存而不得不丢弃. 点的分组因无空间暂存而不得不丢弃
拥塞控制
提交的分组 子网的最大 传输容量
A
分组1 分组2 分组3 ④发送分组
B
分组1 分组2 分组3
⑤节点A 节点 的缓存已 满
②节点B 节点 的缓存已 满
分组n
分组m
图 直接死锁的例
节点A 节点A 保留发给 节点B 节点B 的分组的 副本,等待节点B 副本,等待节点B 的应答. 同样, 的应答. 同样, 节 点B 也保留已发 送给节点A 送给节点A 的分 组的副本, 组的副本, 等待 节点A的应答.谁 节点A的应答 谁 也无法成功地发 出一个分组. 出一个分组.
输入负载
图 拥塞控制所起的作用
拥塞控制
第9讲 路由选 择与拥塞控制
死锁主要有两种:一种是直接死锁,另一种重装死锁. 一种是直接死锁, 一种是直接死锁 另一种重装死锁. (1)直接死锁:即由互相占用了对方需要的资源而造成的死 锁.
①发送分组 ⑥丢掉B 丢掉 发来的 分组 ③丢掉A 丢掉 发来的 分组
固定路由选择
Dijkstra算法
第9讲 路由选 择与拥塞控制
对于一个无向图G=(V,E),其中V表示网络中所有节点的集 合,E表示网络中所有链路的集合,D(v)为源节点到节点v的距 3 2 离,l(i, j)为节点i至节点j之间的距离. 3 2 5 5 (1)初始化 3 1 6 任选一个节点作为源节点,不妨 不妨令 不妨 2 1 1 V={1},对所有不在V中的节点v,写出: 2 源节点 1 l (1, v) 若节点 与节点直接相连 v 1 4 5 D(v) = ∞ 若节点 与节点不直接相连 v 1
随机路由选择
第9讲 路由选 择与拥塞控制
当分组到达某个节点时就随机地选择一条链路 作为转发的路由.当网络中的节点或链路发生故 障时,采用随机走动法是最有效的,它使得路由 算法具有较好的稳健性. 信宿
0.3 0.3 C A 0.3 0.3 0.3 M 0.3 0.2 0.2 0.5 0.5 信源 L 图 随机走动算法示意图 P 0.2 K 0.2 0.2 E 0.3 N 0.3 0.3 0.3 B 0.3 0.3 D
固定路由选择
2 2 1 1 4 步骤 初始化 1 2 3 4 5 1 5 V {1} {1,4} {1,4,5} {1,2,4,5} {1,2,3,4,5} {1,2,3,4,5,6} D(2) 2 2 2 ② 2 2 D(3) 5 4 3 3 ③ 3 D(4) 1 ① 1 1 1 1 D(5) ∞ 2 ② 2 2 2 2 5 3 3 3 5 6 2 1
第9讲 路由选 择与拥塞控制
基于左图的网络拓扑结构,采 基于左图的网络拓扑结构 采 算法,计算以节点 用Dijkstra算法 Hale Waihona Puke Baidu算以节点 算法 计算以节点1 为源节点的最短通路的过程. 为源节点的最短通路的过程
表中带圆圈的数字表示 的是: 的是 在每一次执行步 骤(2)时, 所寻找到的具 时 有最小值的D(w)值. 有最小值的 值
D(6) ∞ ∞ 4 4 4 ④
固定路由选择
(3) 2 2 (0) 1 1 4 (1) 1 5 (2) 1 2 (4) 3 (5) 6 目的节点 1 2 3 4 5 6 下一站 2 4 4 4 4 目的节点 1 2
第9讲 路由选 择与拥塞控制
下一站 2 4
*
基于Dijkstra算法生成的最短通路树 图 基于 算法生成的最短通路树
完美的
第9讲 路由选 择与拥塞控制
理想的 拥塞的
发送的分组
当通信量太大时,会发生拥塞 性能显著降低. 会发生拥塞,性能显著降低 图 当通信量太大时 会发生拥塞 性能显著降低
拥塞控制
第9讲 路由选 择与拥塞控制
拥塞会导致恶性循环: 如果路由器没 (2)处理机的处理速度太慢 处理机的处理速度太慢 有空余缓冲区, 它必须丢掉新到来的 如果路由器的CPU处理速度太慢,以至于不能执行要 分组.当扔掉一个分组时,发送该分组 求它们做的日常工作(缓冲区排队,更新路由表等),使得缓 的路由器(一个邻居)可能会因为超时 而重传此分组,或许会重发多次. 由于 存中的队列变得很长,即使线路的容量还很富裕. 发送方路由器在未收到确认之前不能 (3)低带宽的链路 低带宽的链路 扔掉该分组, 故接收端的拥塞迫使发 由于带宽太低,造成链路上需要传输的分组太多,子网 送者不能释放在通常情况下已释放了 的缓冲区, 这样拥塞加重. 的性能降低.若升级带宽而不提高处理机性能都不会有多 大的作用.只升级系统的一部分,而不是整体,往往只会把瓶 颈转移到系统其它地方. 只有当系统中的所有组件都相互平衡时, 只有当系统中的所有组件都相互平衡时,网络拥塞才 会解决. 会解决.
拥塞控制
第9讲 路由选 择与拥塞控制
(2)重装死锁:由于路由器的缓存的拥塞而引起的死锁. 设三个报文A, B和C经过路由器P, Q和R发往主机H. 每一个报文由4个分组构成. 又设每个路由器的缓存只能 容纳4个分组.
③分组A3还暂 分组 还 在路由器P的 存在路由器 的 缓存中,它无法 缓存中 它无法 转发到路由器Q 转发到路由器 中.因为路由器 因为路由器 Q的缓存已满 的缓存已满. 的缓存已满 路由器P 路由器 路由器Q 路由器 ②路由器Q的缓 路由器 的缓 存中的任何一个 分组都不能向前 分组都不能向前 转发,路由器 路由器R的 转发 路由器 的 缓存是为报文A 缓存是为报文 预留的. 预留的 路由器R 路由器 ①路由器R为报 路由器 为报 预留了 个 文A 预留了4个 分组的缓存.由 分组的缓存 由 于分组3还未到 于分组 还未到 报文A 达, 报文 还不 能交付给主机H. 能交付给主机 主机H 主机
图 求最短路径算法的网络拓扑
实际编程时一般取D(v)=1000代替∞.
固定路由选择
第9讲 路由选 择与拥塞控制
(2)寻找一个不在V中的节点w,其D(w)值为最小.把w 加入到V中.然后对所有不在V中的节点,用 [D(v),D(w)+l(w, v)]中较小的值去更新原有的D(v)值, 即: D(v) ← Min[D(v),D(w)+l(w, v)] (3)重复步骤(2),直到所有的网络节点都在V中为止. 由Dijkstra算法可知,若将已知的各链路长度改 为链路时延 跳数 带宽或费用 链路时延,跳数 带宽或费用,就相当于求任意两节 链路时延 跳数,带宽或费用 点之间具有最小时延,最少跳数,最大带宽或最小费 用的通路.所以, 求最短路径算法具有普遍的应用价 值.
拥塞控制
第9讲 路由选 择与拥塞控制
拥塞控制
2. 拥塞控制与流量控制的关系
吞吐量 子网的最大 传输容量 吞吐量饱和 网络吞吐量 =网络负载 网络负载 理想的流 量控制
第9讲 路由选 择与拥塞控制
实际的流量 控制 无流量 控制
死 锁
0 轻度拥塞 拥塞
当网络负载 继续增大到 某一数值时, 网络的吞吐 量就下降为 零,网络已无 法工作.这就 是所谓的 死锁” “死锁”
网络拓扑结构; 通信量矩阵Fij; 线路带宽矩阵Cij; 路由算法(可能是临时的)0
第9讲 路由选 择与拥塞控制
第9讲 路由选 择与拥塞控制
第9讲 路由选 择与拥塞控制
拥塞控制
拥塞控制的意义 1. 意义
第9讲 路由选 择与拥塞控制
若将站点的容量扩展 容量扩展到很大, 所有到达 容量扩展 的分组均可在此节点缓存, 而由于链路 计算机网络中的链路容量,交换节点中的缓存和 的容量和处理机的速度并未提高,因此 处理机等,都是网络的资源.在某段时间内,若对网 分组在队列中的排队时延将会很长 结 排队时延将会很长, 排队时延将会很长 络中的某一资源的需求超过了该资源所能提供的 果上层软件只好将它们进行重传(超时 可用部分,网络的性能就变坏,这种情况称为网络 重发).所以简单地扩大缓存的存储空间 同样会造成网络资源的严重浪费. 拥塞(Networks Congestion).一般地可以表示成如
投影 PowerPoint幻灯课件
复习(提问): 虚电路和数据报服务?
复习
虚电路(Virtual Circuit Virtual Circuit) 数据报( Datagram )
H2 H4 H2 H5 B E H6 A C H3 (a) 数据报服务 A C H3 (b) 虚电路服务 H1 E H4
基于流量的路由选择
基本思想
第9讲 路由选 择与拥塞控制
既考虑拓扑结构,又兼顾网络负荷; 前提:每对结点间平均数据流是相对稳定和 可预测的; 根据网络带宽和平均流量,可得出平均包延 迟,因此路由选择问题归结为找产生网络最 小延迟的路由选择算法。 提前离线(off-line)计算
基于流量的路由选择
需要预知的信息
拥塞控制
拥塞控制的一般原理
第9讲 路由选 择与拥塞控制
拥塞控制算法大致可分成开环控制和闭环控制 两大类. (1)开环控制算法原理 开环控制算法原理 通过良好的网络系统设计 网络系统设计来避免拥塞问题的发 网络系统设计 生,在网络运行过程中,何时接受新分组,何时丢弃 分组以及丢弃哪些分组都是事先规划好的,并不 考虑当前的网络流量状况. (2)闭环控制算法原理 闭环控制算法原理 通过反馈机制来调整当前网络流量 反馈机制来调整当前网络流量,使网络流 反馈机制来调整当前网络流量 量与网络可用资源相协调,从而使网络拥塞问题 得到解决.
第9讲 路由选 择与拥塞控制
第9讲 路由选择和拥塞控制
课时授课计划 课 程 内 容
第9讲 路由选 择与拥塞控制
内容:
路由选择策略 拥塞控制
目的与要求:
理解路由选择算法; 了解拥塞控制策略方法
重点与难点:
重点:路由选择算法; 难点:路由选择算法。
第9讲 路由选 择与拥塞控制
课堂讨论:
路由选择?
漏桶算法? 现代教学方法与手段:
相关文档
最新文档