当前课程知识点:计算机网络 > 第五章 网络层 > 5.16 无类域间路由 CIDR > Video
随着互联网络的发展和普及
核心协议之一的IP
正成为它过度流行的牺牲品
它主要面临两大问题
一 分类造成了数百万个地址的浪费
举个例子来说
有一个公司
它有两百个员工
它想申请一个地址
那么如果是一个A类地址的话
太大了
如果申请一个C类地址的话
只有254个合法的IP地址
它觉得
虽然它现在的员工只有两百个
但是它很快就会发展
超过这个254了
所以它不会申请C类的地址
那么它就会申请B类的地址
而一个B类的地址
它拥有的地址空间
大概是65000多个
实际上呢 它只用到其中的几百个
大部分的就被浪费掉了
那么可以说最先枯竭的地址
就是这个B类的地址
有统计显示
超过一半的B类网络
拥有的主机数不超过50台
第二个问题是路由表的膨胀问题
一开始互联网上面网络不多
路由表中只有几百条 几千条
路由信息
现在网络的数量已经超过了百万个
那么路由表动则就是几万条
上十万条
如果路由表急剧膨胀
我们可以有足够的空间去装它
但是它会带来一个非常严重的问题
就是我们每到达一个分组
我们想想看是怎么对待它的
首先是把这个分组打开
然后确定目的网络
去查找路由表
那么每到达一个分组
我们都要去查找这个表
表大了
就意味着我们的查找时间
是非常的大的
增加了我们通信的端到端延迟
这才是一个非常严重的问题
所以呢就提出了CIDR技术
CIDR叫
Classless Inter
Domain Routing的缩写
它的中文名字叫做无类域间路由
CIDR缓解了地址枯竭的趋势
尤其是缓解了B类地址枯竭的趋势
控制甚至缩减了路由表的开销
CIDR的基本思想
描述在RFC1519中
在1519中说
分配IP地址的时候
不再以类别来分
而是按照可变长的地址块来分配
就是我们说的按需分配
举个例子
某一个用户他需要2000个IP地址
在CIDR出现之前
需要一个B类地址才能满足需求
因为一个C类地址的可用IP
只有254个
不满足2000个的需求
可是一个B类地址
可用的IP地址数
多达65000多个
大部分都被浪费掉了
有了CIDC之后
只需要分配一个
x.x.x.x/21的块地址
21代表的是网络位
那么对应的主机位就有
32减21等于11位
11位主机位能够提供的可用地址数
是2的11次方减2
2046个
大于2000个
而且还有46个的余量
可供路由器接口或者扩展之用
举个例子
一块地址从194.24.0.0开始
可用地址数是8192个
即194.24.0.0/19
这是一个块地址
一个比较大的网络
现在呢 有三间大学
要去瓜分这个大网络
剑桥大学申请了2048个地址
空间是从194.24.0.0
到194.24.7.255
表示为这样
牛津大学申请4096个地址
从194.24.16.0
多194.24.31.255
表示为这样
爱丁堡大学申请1024个地址
从194.24.8.0到194.24.11.255
表示为这样
注意
这三个块地址
它的网络位各不相同
20、21和22
其中呢网络位数最少的
它的网络的规模最大
有了CIDR之后
路由表必须扩展
增加一个32位的子网掩码
每个路由表就有一个三元组
IP地址、子网掩码和输出线
这是至少
其实还有其它的表项
当一个分组来到路由器的时候
分组中的目标IP地址
被提取出来
这个目标IP和子网掩码
进行按位与的操作
获得目标网络地址
以便查找路由表
如果路由表里边
有多个表项
都跟这个目标网络地址匹配
那么
使用子网掩码最长的那个表项
这叫IP地址的最长匹配前缀
即在路由表中有多个表项
匹配的时候
选取子网掩码最长的那个表项
来使用
为什么要这样选择呢
还记得我们曾经学过的IP寻址吗
IP分组从大网络到中网络
再到小网络
一步一步逐渐靠近目标机
所在的那个网络
子网掩码最长 意味着网络最小
这正是路由器传送分组的方向
所以选择子网掩码最长的那个表项
最靠近目的网络
举个最长匹配前缀的例子
在这个网络里头
有一个路由器名字叫New York
它有两个接口
左边的S0接口
指向192.24.12.0/22
右边的S1接口指向
192.24.0.0/19这个网络
当一个分组到达New York
路由器的时候
路由器把这个分组打开
提取出目的IP地址
192.24.12.4
接下来路由器再把目的IP地址
分别和22位
和19位的两个子网掩码进行与操作
得到目的网络地址
发现 结果和这两个网络呢都匹配
也就是说在 路由表里边
有两个表项 都匹配
我们的这个目标网络
怎么办呢
根据最长匹配前缀原则
选网络192.24.12.0/22
也就是说从S0接口来转出这个分组
有了CIDR
我们如何计算出一个块地址中
可以使用的IP地址范围呢
举个例子
有一个地址块叫194.24.6.112/21
那么这个地址块它对应的网络地址
应该是194.24.0.0
因为把主机位全部给它置于0之后
就变成这个样子
对应的主机位实际上是有11位
所以IP地址数
总共应该是有2048个
从11个0变化到11个1
对应的十进制
是从0.0变化到7.255
去掉主机位全为0的网络地址
和全为1的广播地址
可用的IP地址数应该是2046个
CIDR还缩减了路由表的规模
遏制了路由表的膨胀
举个例子
在这个图中
路由器RTA有四条直连路由
RTB有四条直连路由
而RTC路由器呢 有八条直连路由
但是它们的上游路由器RTZ
不需要记录这完整的
十六条详细的路由
它只需要记录三条汇总的路由
就可以了
对于更上游的路由器
它连这三条汇总的路由
都不用记录
而是把这三条汇总的路由
进行进一步的汇总
只需要记录一条路由就可以了
那么这些路由是怎么来完成
它的聚合的呢
以RTA的四条路由聚合为例
这四条路由对应着四个子网
这四个子网形成连续的地址空间
聚合的过程
关键是确定这段连续的地址空间里
网络位的位数
而网络位指的是不变的位
所以只需要找到不变的位
数出不变位的位数就可以了
这四个子网分别是
200.199.48.0/24
200.199.49.0/24
200.199.50.0/24
和200.199.51.0/24
最后一个八位组从0变化到255
是主机位
前两个八位组200.199
从来没有发生过任何的变化
没有变
所以它是网络位
关键是第三个八位组
它从48变到51
我们看不出这个八位里面
有哪些位是变化的位
哪些位是不变的位
我们把它写成二进制形式
发现呢
其中的高六位没有发生变化
一直都是00 11 00
而低两位呢发生了变化
所以我们可以明确
就是这高六位没有发生变化
所以它是网络位
那么网络位的总数
我们现在就得到了
高两位 八位组
八加八
再加上第三个八位组的六位
总共是二十二位
所以
聚合后的网络就表示成了
基地址/网络位数的形式
这里的聚合结果就应该是
200.199.48.0/22
其中48.0是基地址
因为它是这个连续地址空间里面的
第一个
注意 聚合后的网络
被称为超网 SuperNet
聚合的前提条件有两个
一 子网构成的地址空间
必须是连续的
第二
它们具有的下一跳
一定是相同的
路由聚合还带了一个额外的好处
就是隔离了路由翻动
比如在上例中
路由器RTA下
任何一条直连路由
它的接口呈现出Down/Up的翻动状态
不会影响到它的上游路由器
RTZ的那条汇总路由
小结一下今天的内容
CIDR按需分配IP地址
遏制了IP地址枯竭的趋势
CIDR控制缩减了路由表的规模
可以进行路由的聚合来形成超网
聚合跟之前学过的子网规划
是相反的行为
CIDR还带来了额外的好处
就是隔离了路由翻动
-本课程简介
--课程组织
-1.1 为什么要学习计算机网络?
-1.2 互联网络发展史
--Video
--互联网络发展史
-1.3 常用的基本概念
--Video
--常用的基本概念
-1.4 参考模型(重点)
--Video
--参考模型
-1.5 参考模型相关的概念
--Video
--数据如何传输
-1.6 本课程的组织
--Video
--课程组织
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-附录3:伦敦奥运会开幕式之Tim Berners Lee
--附录说明
-第一章 概述--章节测试
-附录4:本章的无背景乐的视频
--1-4参考模型
--关于附录4的说明
-2.1 数据通信的理论基础
--Video
-2.2 有导向的传输介质
--Video
--有导向的传输介质
-2.3复用技术
--Video
--复用技术
-2.4调制技术
--Video
--调制技术
-2.5公共交换电话网络
--Video
--公共交换电话网络
-2.6物理层设备
--Video
--物理层设备
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-附录3:光纤熔接
--Video
-附录4:海底光缆
--附录说明
--外部链接
-第二章 物理层--章节测试
-附录5:本章的无背景乐的视频
--2-3复用技术
--2-4调制技术
--关于附录5的说明
-3.1 数据链路层概述
--Video
--数据链路层概述
-3.2 差错处理概述
--Video
--差错处理概述
-3.3 纠1位错的海明码
--Video
--纠1位错的海明码
-3.4 检错码
--Video
--检错码
-3.5基本数据链路协议1~3
--Video
-3.6 滑动窗口协议
--Video
--滑动窗口协议
-3.7 回退n帧
--Video
--回退n帧
-3.8 选择性重传
--Video
--选择性重传
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-第三章:数据链路层--章节测试
-附录3:本章的无背景乐的视频
--3-4检错码
--3-6 滑窗协议
--3-7 回退n帧
--关于附录3的说明
-4.1 MAC子层概述
--Video
--MAC子层概述
-4.2 ALOHA协议
--Video
--ALOHA协议
-4.3 CSMA协议
--Video
--CSMA协议
-4.4 以太网概述
--Video
--以太网概述
-4.5 以太网帧格式
--Video
--以太帧格式
-4.6 二层交换的基本格式
--Video
-4.7 生成树协议
--Video
--生成树协议
-4.8 虚拟局域网
--Video
--虚拟局域网
-4.9 二层设备
--Video
--二层设备
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-第四章 介质访问控制子层--章节测试
-附录3:本章的无背景乐的视频
--4-9 二层设备
--关于附录3的说明
-5.1 网络层引言
--Video
--网络层引言
-5.2 IP地址
--Video
--IP地址
--子网规划实例
-5.3 子网规划
--Video
--子网规划
-5.4 IP寻址
--Video
--IP寻址
-5.5 IP分组
--Video
--IP分组
-5.6 什么是IPv6?
--Video
--什么是IPv6?
-5.7 IPv6地址
--Video
--IPv6地址
-5.8 IPv6分组
--Video
--IPv6分组
-5.9 IPv6过渡技术
--Video
--IPv6过渡技术
-5.10 路由从何而来?
--Video
--路由如何而来
-5.11 距离矢量路由选择协议
--Video
-5.12 路由信息协议RIP
--Video
--RIP
-5.13 RIP为什么衰落?
--Video
-5.14 链路状态路由选择LS
--Video
-5.15 单区域OSPF
--Video
-5.16 无类域间路由 CIDR
--Video
--CIDR
-5.17 网络地址翻译 NAT
--Video
--NAT
-5.18 互联网控制消息协议 ICMP
--Video
--ICMP
-5.19 地址解析协议 ARP
--Video
--ARP
-5.20 拥塞控制
--Video
--拥塞控制
-5.21 流量整形
--Video
--流量整形
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-第五章 网络层--章节测试1
-第五章 网络层--章节测试2
-第五章主观测试题
-附录3:本章的无背景乐的视频
--5-2_IP地址
--5-3_子网规划
--5-4_IP寻址
--5-5_IP分组
--5-9过渡技术
--5-21流量整形
-6.1 传输层概述
--Video
--传输层概述
-6.2 用户数据报协议 UDP
--Video
-6.3 通信模型
--Video
--通信模型
-6.4 TCP数据段
--Video
--TCP数据段
-6.5 TCP三次握手建立连接
--Video
-6.6 TCP连接释放
--Video
--TCP连接释放
-6.7 TCP传输策略
--Video
--TCP传输策略
-6.8 TCP拥塞控制
--Video
--TCP拥塞控制
-6.9 TCP定时器等
--Video
--TCP定时器等
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-第六章 传输层--章节测试
-附录3:本章的无背景乐的视频
--6-1传输层概念
--6-2UDP
--6-3通信模型
-linux
-windows
-7.1 应用层概述
--Video
--应用层概述
-7.2 域名系统 DNS 概述
--Video
-7.3 DNS之域名解析
--Video
--域名解析
-7.4 电子邮件 e-mail
--Video
-7.5 万维网 WWW
--Video
--万维网 WWW
-7.6 其它应用
--Video
--其它应用
-附录1:思考题
--html
-附录2:术语中英对照表
--html
-第七章 应用层--章节测试
-附录3: 本章无背景音乐的视频
--7-4_电子邮件
--7-6_其它应用