计算机网络 网络层知识点总结
第四章 网络层
欢迎大家访问我的GitHub博客
https://lunan0320.github.io/
文章目录
4.1 网络层提供的两种服务
面向连接
-
虚电路服务
- 分组按照存储转发方式传送
无连接
-
尽最大努力交付的数据报服务
- 分组可能出错、丢失、重复、失序
4.2 网际协议IP
ARP\ICMP\IGMP(网际组管理协议)
虚拟互连网络
中继系统relay
网络扩大
物理层:转发器、中继器
数据链路层:网桥、桥接器
网络互连
网络层:路由器
网络层以上:网关
网关:gateway通常是具有路由功能的设备实现。作用是用来连接两个不同的网络(网络协议转换)
- 逻辑互连,互连起来各个异构网络,TC P协议形成互联网
分类的IP地址
-
IP编址方法
- 分类的IP地址
- 子网的划分
- 构成超网
-
IP地址的特点
-
1、分等级的地址结构
-
2、标志了主机和链路的接口
- 多归属主机:router
-
3、转发器和网桥连接的局域网是一个网络
-
4、拥有net-id的网络平等
-
IP地址与硬件地址
-
IP地址位于IP数据报首部
-
网络层流动
- Router根据目的站的网络号路由选择
- IP地址不变
-
-
硬件地址位于MAC帧首部
-
数据链路层流动
- 源MAC和目的MAC在转发时变化
-
ARP地址解析协议
-
从网络层使用的IP地址解析成数据链路层使用的硬件地址
-
链路上传送数据帧时,必须使用硬件地址
-
ARP cache
-
<IP address; MAC address; TTL time to live>
-
ARP进程广播ARP请求分组
-
收到ARP响应分组,将映射写入cache
我是209.0.05 硬件地址是00-00-c0-15-ad-18
我想直到主机209.0.0.6的硬件地址 -
ARP请求以广播帧发送,所有主机接收
-
ARP响应以单播帧发送,只有目的主机接收
-
-
作用
- 存放IP到MAC的映射,减少ARP广播数量
-
必须是同一局域网
- ARP协议无法穿透路由器
-
-
为什么不直接用硬件地址
- 各种异构网络使用不同的硬件地址,不仅是MAC地址
- IP编址解决该问题,在虚拟的IP网络上通信
IP数据报
-
首部
-
固定长度20字节
-
IP协议版本
-
首部长度
-
区分服务(提供不同等级的服务质量)
-
总长度(<=MTU)
-
标识
- 标识一个数据报
-
标志
-
DF(Don’t Fragment)
- DF=1不允许分片
- DF=0允许分片
-
MF(More Fragment)
- MF=1 后面还有分片
- MF=0 后面没有分片
-
-
片偏移
- 在原IP数据报中的相对位置,8字节单位
-
生存时间TTL
- 数据报在网络中可通过的路由器数的最大值
-
协议
-
常用协议值
- 00表示IP协议
- 01表示ICMP协议
- 06表示TCP协议
- 17表示UDP协议
-
-
首部检验和
-
只检验数据报首部
- 减少校验工作量
-
-
源IP地址
-
目的IP地址
-
-
可选字段
-
-
数据部分
4.3 划分子网和构造超网
划分子网(三级结构)
数据链路层:虚拟局域网 V LAN
网络层:划分子网
-
<网络号,子网号,主机号>
先根据网络号找本单位的路由器
再根据子网号找目的子网
最后将IP数据报交付给目的主机- 划分子网是对主机号进行再划分,对外仍是一个网络
-
优点
- 1、减少IP地址浪费
- 2、使网络组织更加灵活
- 3、便于维护和管理
-
子网掩码
- 作用:找出IP地址的子网部分
- 路由表项都有每个网络的subnet mask
-
子网划分方法
- 固定长度子网
- 变长子网
使用子网时分组的转发
- 源主机先用自己mask与目的IP地址想与,看是否是一个网络
- 用路由表每一项的子网掩码与目的IP想与,查看是否有相同的网络地址
- 否则找默认路由
- 否则报告转发分组出错
无分类编址CIDR(构造超网)两级结构
-
网络前缀
-
无分类域间选择CIDR
- <网络前缀,主机号>
-
从三级编址,又到了两级编址
-
斜线记法(也是掩码)
- 220.78.168.2/24
-
-
CIDR地址块
- 网络前缀都相同的IP地址
-
路由聚合
- 也称为构成超网supernetting
- 一个CIDR地址的聚合也就是路由聚合
-
构成超网
- CIDR(不超过23位)包含多个C类地址,合起来构成了超网
-
最长前缀匹配
4.4 网际控制报文协议ICMP
IP层协议
ICMP报文的种类
-
差错报告报文
-
分类
- 1、终点不可达
- 2、时间超过
- 3、参数问题
- 4、改变路由(重定向)
-
ICMP数据字段内容
- IP首部
- IP数据报数据字段的前8字节
-
不发送的特例
- 具有多播地址的数据报不发送
- 对第一个分片后的所有数据片不再次发送
- 具有特殊地址的127.0.0.0不发送
-
-
询问应答报文
-
类型
- 回送请求和回答报文
- 时间戳请求和回答报文
-
ICMP的应用举例
-
PING
- Packet Internet Groper
- 测试连通性
- 使用回送请求和回答报文
- 应用层直接使用网络层的ICMP
-
Traceroute/tracert
- 跟踪一个分组从源点到达终点的路径
- 使用时间超过差错报告报文
4.5 路由选择协议
1、基本概念
-
理想路由算法
-
1、正确完整
-
2、简单
-
3、自适应性
-
静态路由选择协议
- 非自适应路由选择
-
动态路由选择协议
- 自适应路由选择
-
-
4、公平
-
-
分层次的路由选择协议
- 1、互联网规模大,路由表会很大
- 2、不愿意外部了解自己的单位网络
2、内部网关协议IGP
-
1、RIP协议
Routing information protocol路由信息协议
-
分布式、基于距离向量
-
距离含义
-
一条路径最多15个路由器,16即为不可达
-
RIP不能在两个网络之间同时使用多条路由
- 选择的永远是最少跳数的路由,不一定是时延最短的
-
-
三个WWW问题
- 仅和相邻路由器交换信息
- 交换路由表
- 固定时间间隔交换
-
运行在UDP上的应用层协议,为网络层提供服务
-
RIP表项
- <目的网络,距离,下一跳>
-
距离向量算法
-
简单的鉴别功能
- 如果没有身份认证,攻击者构造RIP报文,声明和所有网络直连,网络流量优先发到攻击者处。
-
优缺点
-
优点
- 实现简单
- 开销较小
-
缺点
- 只适用于小规模网络,最大距离为15
- 坏消息传播的慢,使得收敛时间过长
-
-
-
2、OSPF协议
open shortest path first 开放最短路径优先
-
基本特点
- 开放
- 采用分布式链路状态协议
-
三个WWW问题
-
洪泛发,和本自治系统内的所有路由器交换信息
-
发送与本路由器相邻的所有路由器的链路状态
- metric度量:费用、距离、时延、带宽等
-
-
链路状态数据库
- 全网的拓扑结构图
- 更新过程收敛的快
-
区域
-
一个AS自治系统划分为若干更小区域
- 为了使OSPF适用于更大规模的网络
- 32位的区域标识符
-
优点
- 利用洪泛时,仅局限于每一个区域而不是整个自治系统
- 一个区域内部的路由器只知道本区域的网络拓扑结构,不知道其他区域的情况
-
层次结构划分区域
- 上层的区域叫主干区域
-
直接使用IP数据报传送
此时RIP协议是装在UDP报文中,是因为当时候的网络规模小,并没有考虑分层问题。
OSPF时候有了比较清晰的结构,先有网络层,后有传输层的概念才建立起来-
不用UDP而是直接IP
-
数据报很短,减少信息通信量
- 此时就不必分片传送
-
-
其他特点
-
支持TOS
-
负载平衡
- 到一个目的网络可以有多个相同代价的路由,则将通信量分配给这几个路径
-
鉴别功能
-
支持可变长度的子网划分和CIDR
-
链路状态序号越大,链路越新
-
与网络规模无关
- 只涉及与相邻路由器的连通状态
- 向邻居洪泛
- 发生变化时洪泛
-
五种分组类型
- HELLO问候
- DatabaseDescription数据库描述
- LS Request链路状态请求
- LS Update链路更新
- LS Acknowledge链路确认
-
-
多点接入,指定的路由器
- 指定的路由器代表局域网上的其他路由器向连接到网络上的路由器发送状态信息
-
-
3、外部网关协议EGP
-
BGP
-
不同自治系统之间交换路由信息的协议
-
交换“可达性信息”
-
三个WWW问题
-
和邻居AS的BGP发言人交换信息
- 一个自治系统至少选择一个路由器作为AS的BGP发言人
-
交换可达性信息,即所要经过的一系列AS
-
网络拓扑发生变化时,更新有变化的部分
-
-
BGP交换路由信息
-
TCP连接
- BGP会话
-
邻站、对等站
- TCP交互的两个发言人
-
应用层协议
-
-
支持CIDR
- 更新有变化的部分
-
四种报文
- 打开
- 更新
- 保活
- 通知
-
报文格式
-
19B首部身份认证
- 16B标记
- 2B长度
- 1B类型
-
-
4、路由器的构成
-
路由选择部分
-
控制部分(路由选择处理机)
- 根据路由选择协议构造路由表
- 跟相邻路由器交换路由信息
-
-
分组转发部分
-
1、交换部分
- 根据转发表对分组进行处理
-
2、一组输入端口
-
3、一组输出端口
-
分组丢弃
- 路由器的输入输出队列产生溢出,没有存储空间就丢弃
-
-
4.6 IPv6
1、基本首部
-
PDU称为分组
-
主要变化
-
1、更大地址空间
- 128位
-
2、地址层次结构
-
3、灵活首部格式
-
4、改进选项
-
5、允许持续扩充
-
6、即插即用
-
7、改为8字节对齐
-
-
IPv6数据报
-
基本首部
-
40B
- 取消服务类型
- 取消首部长度
- TTL改成跳数限制
- 取消检验和字段
-
-
有效载荷
- 多个扩展首部
- 数据部分
-
-
内容
-
版本6
-
通信量类
- 区分数据报的优先级
-
流标号
- 属于哪个数据报
-
有效载荷长度
-
下一个首部
-
跳数限制
-
源、目的地址128位
-
2、IPv6地址
-
特点
-
分片
- 不允许中间路由器分片重组,只能是源主机目的主机执行
-
检验和
- 传输层和链路层检验了
-
可选字段
-
选项的功能都放在扩展首部中
- 逐跳选项
- 路由选择
- 分片
- 鉴别
- 封装
- 目的站选项
-
-
-
类型
-
单播
-
多播
-
任播
- 目的地址是一组计算机,但是数据报交付时只交付给最近的一个
-
-
零压缩
- 任意地址只能使用一次零压缩
3、IPv4到IPv6过渡
-
1、双协议栈
- 一部分主机装有两个协议栈
- 同时具有两种IP地址
-
2、隧道技术
- IPv6数据被封装成IPv4数据报
4、ICMPv6
- 也不保证数据报的可靠交付
- 用来反馈一些差错信息
- 面向报文的协议
4.7 VPN和NAT
1、虚拟专用网VPN
virtual private network
-
本地地址与全球地址的二义性问题
- 引进专用地址
- 可重用地址
-
VPN构建
-
所有通过互联网传输的数据都需要加密
-
隧道技术实现虚拟专用网
-
内联网
- 机构内部使用
-
外联网
-
-
远程接入VPN
- 满足外部流动员工访问公司网络
2、网络地址转换NAT
Net address translation
-
NAT路由器
- 至少有一个有效的全球地址
- 将本地地址转换成全球IP地址
-
两次地址转换
-
离开专用网
- 专用地址到IP地址
-
进入专用网
- IP地址到专用地址
-
-
NAPT
- 使用了端口号的NAT
告诉源主机是哪个进程发送的IP数据报出错
思维导图提取方法:
百度网盘地址
链接:https://pan.baidu.com/s/1vNDMj8SDhLCppnJRLyHSLw
提取码:h29m