您的位置:首页 > 理论基础

计算机网络 网络层(下) 慕课学习笔记

2020-04-22 04:04 411 查看

5.14 链路状态路由选择

链路状态路由(LS)基本原理:

  1. 发现 它的邻居节点,了解它们的网络地址(发送hello报文)
  2. 设置 到它的每个邻居的成本度量
  3. 构造 一个分组LSP,包含它所了解到的上述所有信息
  4. 发送 这个分组给所有其他的路由器(这一步非常重要)
  5. 计算 基于完整的网络图,计算到每个目标的最短路径

开销/量度/代价:自动发现设置或人工配置
常见量度:链路带宽(反比)

延迟亦可作为量度
发送一个特别的ECH0分组,另一端立刻回送一个应答
通过测量往返时间RTT,可以获得一个合理的延迟估计值
可多次测量,取平均值

一个链路状态分组/公告(LSP/LSA)包含:

  1. 发送方的标识(自己)
  2. 序列号(Seq.)
  3. 年龄(Age)
  4. 邻居列表
  5. 到邻居的成本/量度

发送LSP/LSA:
每个LSP分组都包含一个序列号,递增
路由器记录下它所看见的所有(源路由器、序列号)对
当一个的新的分组到达时,路由器根据记录判断:
》如果该分组是新的,就被泛洪广播(序列号不在表中,转发到除了来的线路以外的所有线路)
》如果是重复分组,即旧的被丢弃(系列号相等,喜新厌旧)
》如果是过时分组,则被拒绝(序列号比对应源路由器发送的曾经到过的序列号还小)

序列号回转问题(比如两位二进制表示:00->01->10->11->00…)
这个问题会导致路由器无法甄别哪个是新的,哪个是旧的
解决办法:
使用32-bit长的序列号

解决路由器崩溃,序列号损坏问题
每一个分组的序列号之后加一个年龄age
》每过一秒,age-1
》age=0,丢掉对应的LSP
还有一种解决办法:
》LSP/LSA不直接分发,首先放到保留区
》新到达的LSP/LSA会和保留区中的比较
路由器空闲时,扫描保留区,以选择LSP/LSA进行确认或转发,以保证获得所有的分组。

分发完全,构造出全网图
每个路由器,采用最短路径算法,遍历图
计算结果:生成树/汇集树
根据树,生成路由表

链路状态路由(LS)的优缺点

5.15 单区域OSPF

OSPF:开放的最短路径优先
链路状态路由的典型实例

OSPF特点:
》可以在大型网络中使用
》无路由自环
》支持VLSM、CIDR等
》使用带宽作为度量值(10^8/BW)
》收敛速度块
》通过分区实现高效的网络管理

重要术语:
》RouterID:32位,自治系统内唯一
》协议号:89
》TTL=1:通常OSPF只传给邻居路由器

OSPF使用的代价是带宽,计算时用10^8/带宽

OSPF的五种分组类型:

OSPF运行的五步:
》建立路由器毗邻关系(最重要,两台建立了全毗邻关系的路由器,LSP数据库完全一致。)
》选举DR和BDR
》发现路由
》选择最佳路由
》维护路由信息

DR的选举过程类似于村长的选举:

5.16无类域间路由CIDR

IP主要面临两大问题
(1)分类造成了数百万个地址浪费
》A类地址网络: 16M个 地址(太大)
》C类地址网络: 256个地址(太小)
》B类地址网络: 65, 536个地址(够用)
(2)路由表膨胀
》早期网络数不多, 现在网络数超过百万

CIDR缓解了地址枯竭的趋势,尤其是缓解了B类地址枯竭的趋势,控制甚至缩减了路由表的开销
CIDR的基本思想描述在RFC1519中
&分配地址方法:按需分配
&实例:用户需要2000个IP地址
》CIDR之前:分一个B类地址(65000多个)
》CIDR之后:分一个块地址x. x. x. x/21(21位网络位,11位主机位)
2^11-2=2046>2000

有了CIDR后,路由表必须扩展(增加一个32位的子网掩码):
每一个路由表有一个三元组:
》目的IP地址
》子网掩码
》输出线路

IP地址聚合的关键:确定IP地址中固定不变的网络位数
聚合结果:超网
聚合的前提条件
》子网构成的地址空间是连续的
》下一跳相同
聚合的另一个好处:隔离了路由翻动
RTA下的某条具体路由的Down/Up状态不会影响到汇总后的路由状态

5.17网络地址翻译NAT

NAT是一个IP地址耗尽的快速修补方案,在RFC3022中有所描述
NAT:私有IP地址和公有IP地址之间的转换
PAT(超载):多个私有IP地址和一个公有IP地址之间的转换

内部网络使用私人地址;当内网需要和外网通信的时候,私人地址转换成合法的global的IP地址
NAT转换器(NAT Box)的位置和功能:
》由NAT转换器完成私人地址和公有地址的转换;并且维护一个地址转换表
》当有外网的分组到达时,NAT转换器查找地址转换表,转换分组目标地址之后,转发该分组到内网。
》NAT转换器可以是一个专用的服务器,也可以运行在内网的边界路由器上,也可以在家用路由器(AP)上。

NAT工作原理:

5.18互联网控制消息协议ICMP

》向源报告错误
》测试网络:ping、tracert

ICMP应用

ping时,源机将向目的站点发送一个ICMP回声请求报文
目的站点接收到,必须向源站点发回一个ICMP回声应答报文
源站点收到应答报文,则判断目的站点是可达的,否则为不可达

测试TCP/IP是否正常工作 ping 127.0.0.1
网络设备是否正常 ping 本机IP地址
检查对外连接的路由器 ping 默认网关IP
检查与某台设备的畅通情况 ping IP
检查DNS设置 ping www.scut.edu.cn
执行DNS反向查询 ping -a IP地址

tracert:可以通过ICMP超时报文来得到一张途径的路由器列表(最大30跳)

路径MTU:动态发现互联网上任意一条路径的最大传输单元的技术

一般来说,ICMP消息仅送给源机
规定:ICMP消息不生成自己的差错报告

【判断】若源机Ping目的机,发出一个回声请求,却没收到应答报文,则目的机必定不可达。

参考答案:错误

解析:不一定不可达,目的站点发送的应答报文可能丢失,因此实际上通常会多次Ping。

5.19地址解析协议ARP

封装的任务:
》添加寻址所需的信息
》比如:IP地址、MAC地址

如果发放只知道目的地址的IP地址而不知道MAC地址,就需要发送地址解析协议ARP(定义在RFC826中)
ARP是一个运行在局域网中的协议,它将目标机的IP地址映射到MAC地址上

请求机发送的ARP请求帧(MAC地址是48个1):

目标机的ARP应答帧中有明确的目的MAC地址(单播回请求机)

优化ARP:
动态建立、更新和维护ARP表:
》应答
》ARP请求中的源IP/MAC地址信息
》免费ARP
》周期性删除过时信息

ARP请求只能发送在一个LAN中,不同LAN发送需要通过默认网关中转。(远程主机的MAC地址解析,需要用到默认网关)
主机自己的ARP表(可以用ARP工具程序进行查看,删除和增加等操作):
》通过广播ARP请求中的源设备信息添加和更新表
》利用自己的ARP请求之应答信息来添加和更新表
删除超过一定时限的信息

但是ARP动态更新存在安全隐患(产生各种ARP病毒)

5.20拥塞规则

拥塞:当一个子网或子网的一部分出现太多分组的时候,网络的性能急剧下降
拥塞控制的两类措施:
》开环(提前设计准备,但随着时间推移,力不从心)
》闭环

闭环建立在反馈环路的概念上
》监视系统
》传递拥塞信号
》调整运行,控制拥塞

拥塞量度(数值越大,拥塞越严重):
》因为缺乏缓存空间而丢弃的分组百分比
》平均队列长度
》超时和重传的分组数
》平均分组延迟
》分组延迟的标准方差

解决措施 1.降低负载(拒绝服务、服务降质、绕开拥塞点)2.增加资源(增加带宽)
解决速度:

数据报子网中的流量限制方法:
》每台路由器可以监视它的输出线路和其它资源的使用情况
》每条线路和一个实变量u关联在一起,其值位于(0.0-1.0)之间
》无论何时,只要u超出了阈值,对应的线路就进入到警告状态(处于警告状态后可以抑制分组)
》每个新到达的分组都将被检查,看它的输出线路是否处于“警告状态”

抑制分组生效时间慢,逐跳抑制可以快速缓解拥塞点压力
随机早起检测(RED):提前检测,防患于未然

负载脱落(丢弃分组):

5.21流量整形

(减少拥塞的可能性)
漏桶算法
》每个主机连接到网络的接口中都有一个漏桶,即一个优先长度的内部队列
》当桶中有分组的时候,输出速率是恒定的,当桶空的时候,输出速率是0
》当一个分组到达满的桶的时候,分组将被丢弃(满则溢)
》每个时钟嘀嗒(tick),仅允许一个分组或固定数量的分组发送出去

缺点:满则溢,不能大量地突发数据

令牌桶算法
》当大量数据突发的时候,令牌桶算法允许输出加快到某种程度
》令牌桶拥有令牌(tokens) ,且以每△T秒产生一个令牌的速度往桶中注入令牌
》一个分组要发送的时候,它必须从桶中取出和获取到一个令牌
》令牌桶算法允许累积令牌,但最多可以累积n (令牌桶的容量)个令牌

与漏桶算法相比:
》令牌桶允许突发,但是最大突发受制于令牌桶容量的限制
》当桶满的时候,令牌桶算法丢掉的是令牌(不是分组)

  • 点赞
  • 收藏
  • 分享
  • 文章举报
你今天学习了嘛 发布了10 篇原创文章 · 获赞 3 · 访问量 417 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: