20 KiB
20 KiB
title | date |
---|---|
《计网》网络层 | 2023-07-26T11:37:50+08:00 |
网络层概述
- 网络层主要任务是实现网络互联,进而实现数据包在各网络之间的传输
- 需要解决以下问题
- 网络层向运输层传输需要提供怎么样的服务
- 网络层寻址问题
- 路由选择问题
- 主要功能
- 异构网络互联
- 异构网络:数据链路层和物理层均不同网络
- 网络层的任务之一就是使异构网络实现互联
- 网络互联通常是指用路由器进行网络互联和路由选择
- 使用中继系统连接网络
- 物理层中继系统
- 转发器,集线器
- 数据链路层中继系统
- 网桥,交换机
- 网络层中继系统
- 路由器
- 网络层以上的中继系统
- 网络
- 物理层中继系统
- 路由选择与分组转发
- 路由选择【确定路径】
- 分组转发【一个分组到达后的动作】
- 拥塞控制
- 拥塞
- 在通信子网中,因出现过量的分组而引起网络性能下降的现象
- 此时所有节点都来不及接受分组,而要丢弃大量分组
- 判断拥塞
- 观察网络吞吐量与网络负载的关系
- 随着通信子网负载的增加,吞吐量反而降低,即可能发生拥塞
- 轻度拥塞->拥塞->死锁
- 拥塞控制的方法
- 开环控制【静态】:事先考虑可能发生拥塞的情况,一旦系统启动,就不能修改
- 闭环控制【动态】:采用检测网络监视哪里发生了拥塞,动态调整网络系统运行
- 拥塞
- 异构网络互联
SDN的基本概念
- 软件定义网络SDN采用集中式的控制层面和分布式的数据层面来控制网络
- 北向接口:SDN提供的编程接口
- 南向接口:SDN控制器和转发设备建立双向会话的接口(使用南向接口协议,如openflow)
- 东西向接口:SDN控制器集群内部控制器之间的通信接口
网络层设备
冲突域和广播域
- 域 = 冲突或广播在其中发生并传播的区域
- 冲突域 = 连接到同一物理介质上的所有节点的集合,这些节点之间存在介质争用的现象【OSI第一层概念】
- 广播域 = 接收同样广播消息的节点集合【OSI中第二层概念】
- 局域网LAN特指使用路由器分割的网络,即广播域
路由器的组成和功能
- 路由器是一种具有多个输入/输出端口的专用计算机
- 路由器主要实现物理层,数据链路层,网络层的功能
- 路由器是网络层设备
- 路由器的任务
- 连接异构网络并完成路由转发
- 路由器的功能
- 分组转发,处理通过路由器的数据流
- 路由计算,通过和其他路由器进行路由协议的交互,完成路由表的计算
- 路由器的组成
路由表与路由转发
- 路由表根据路由选择算法得出,主要用途为路由选择
- 路由表的组成 = 目的网络的IP地址 + 子网掩码 + 下一跳IP地址 + 接口
- 路由表总是用软件实现,转发表可以用软件也可以用邮件实现
- 路由表不等于转发表,分组的实际转发是靠直接查找转发表,而不是直接查找路由表
- 路由表中默认路由的目的地址和子网掩码都是0.0.0.0
IP地址的基本知识
IP地址的定义
- MAC的作用则是实现直连的两个设备之间通信,而IP负责在没有直连的两个网络之间进行通信传输
- 源IP地址和目标IP地址在传输过程中是不会变化的(没有使用NAT网络情况下),只有源MAC地址和目标MAC一直在变化
- IPV4地址最大值由32位正整数来表示,IP地址在计算机是以二进制的方式处理的
- IP地址最大值 =
2^{32} = 43
亿左右 - IP地址并不是根据主机台数来配置的,而是以网卡,像服务器、路由器等设备都是有2个以上的网卡,也就是会有2个以上的IP地址
分类编制的IPV4地址
分类
- ABC类地址主要由网络号和主机号组成
- 网络号标志主机/路由器所连接到的网络
- 主机号标志主机/路由器
- 环回测试网络
- 127.x.x.x是环回自检地址,不指派
- 最小的环回地址:127.0.0.1
- 最大的环回地址:127.255.255.254
- 最大可用网络数
- A类最大可用网络数 =
2^{网络号} - 2
- BC类最大可用网络数 =
2^{网络号}
- 网络号为0,不指派
- 网络号为127,不指派
- A类最大可用网络数 =
- 最大可用主机数
- 最大可用主机数 =
2^{主机号} - 2
- 主机号全为1的地址是广播地址【255.255.255.255只能作为目的地址使用】
- 主机号全为0的地址是网络本身【0.0.0.0只能作为源地址使用】
- 最大可用主机数 =
- DE地址
- D类和E类地址没有主机号
- 不可用于主机IP
- D类常用于多播
- E类是预留的分类,暂时未使用
- IP分类的优点
- 简单明了、选路(基于网络地址)简单
- IP分类的缺点
- 同一网络下没有地址层次,缺少地址层次的灵活性
- C类地址254个太少了,B类地址65534个又太多了,不能很好地与显示网络匹配
- 可用CIDR解决
- 例题
- 一般不使用的IP地址
划分子网的IP地址
- 划分子网原因
- 两级IP地址分类的地址空间流动率有时很低,用子网划分的方法来改善这个问题
- 划分子网点的好处
- 增加子网的数量->减少广播域的大小->减少了主机的数量->提高了IP地址的利用率
- 不增加网络的数量
- 子网划分
- 将主机地址分为两个部分【子网网络地址和子网主机地址】的过程
- 未做子网划分的ip地址:网络地址+主机地址
- 做子网划分后的ip地址:网络地址 + (子网网络地址+子网主机地址)
- 如何得到网络地址
- 将子网掩码和ip地址按位计算AND,就可以得到网络号
- 默认子网掩码
- A类:255.0.0.0
- B类:255.255.0.0
- C类:255.255.255.0
- 如何进行子网划分
无分类编址的IPV4地址【CIDR】
- 引入原因
- CIDR消除了传统的A类,B类和C类地址,以及划分子网的概念
- 作用
- 一种归并技术,可以把小的网络汇聚成大的超网
- 可以更加有效地分配IPV4的地址空间,并且可以在新的IPV6使用之前允许因特网的规模继续增长
- 细节
- 路由聚合
- 例题
IPV4的应用规划
- 定长的子网掩码
- 变长的子网掩码
IP数据报的发送和转发过程
- 主机发送IP数据报
- 判断目的主机是否与自己在同一网络
- 在同一网络则直接交付
- 不在同一网络,数据间接交付,传输给主机所在的网络的默认网关(路由器),由默认网关帮忙转发
- 判断目的主机是否与自己在同一网络
- 路由器转发IP数据报
静态路由配置及其可能产生的路由环路问题
- 静态路由配置
- 特定主机路由(默认路由)
- 静态路由配置错误导致路由环路
- 聚合不存在的网络而导致的路由环路
- 网络故障而导致的路由环路
IPV6
- IPV6地址的标识方法
- IPV6地址长度是128位,是以每16位作为一组
- 每组用冒号[:]隔开
- 如果出现连续的0时还可以就爱那个这些0省略,并用两个冒号隔开
- 一个IP地址中只允许出现一次两个连续的信号
- IPV6地址的结构
- 单播地址,用于一对一的通信
- 组播地址,用于一对多的通信
- 任播地址,用于通信最近的节点,最近的节点由协议决定
- IPV6的亮点
- IPV6可自动配置【即插即用】
- IPV6首部长度采用固定的值40字节,去掉了校验
- IPV6安全性提高了
- IPV6相比IPV4的改进
- 取消了首部校验和字段
- 因为在数据链路层和传输层都会校验,因此IPV6直接取消了IP的校验
- 取消了分片/重新组装相关字段
- 分片与重组时耗时的过程,IPV6不允许在中间路由器进行分片与重组
- 取消选项字段
- 选项字段不再是标准IP首部的一部分了
- 但它并没有消失
- 而是可能出现在IPV6首部中的下一个首部指出的位置上
- 删除该选项字段使得IPV6的首部成为固定长度的40字节
- 取消了首部校验和字段
IPV4首部
- 首部内容
- IPV4分片
- 例题
路由选择协议概述
- 静态路由选择/动态路由选择
- 路由协议的主要特点
- 自适应-动态路由选择,能较好地适应网络状态的变化
- 分布式-路由器之间交换路由信息
- 分层次-将整个因特网划分为许多较小的自治系统
- 分层次的路由选择协议
- 路由选择协议
三种路由协议比较
RIP | OSPF | BGP | |
---|---|---|---|
类型 | 内部 | 内部 | 外部 |
路由算法 | 距离-向量 | 链路状态 | 路径-向量 |
传递协议 | UDP,应用层协议 | IP,网络层协议 | TCP |
路径选择 | 跳数最少 | 代价最低 | 较好,非最佳 |
交换节点 | 和本节点相邻的路由器 | 网络中的所有路由器 | 和本节点相邻的路由器 |
交换内容 | 当前本路由器知道的全部信息,即自己的路由表,RIP不知道全网的拓扑结构 | 与本路由相邻的所有路由器的链路状态,任何一个路由器都知道自己所在区域的拓扑结构 | 首次,整个路由表 非首次,有变化的部分 |
路由信息协议RIP的工作原理
开放最短路径优先OSPF的基本工作原理
- OSPF基本概念
- 链路的代价
- 交互问候分组
- 计算最短路径的过程
- 五种分组类型
- OSPF的基本工作过程
- DR和BDR
- 区域
- 总结
边界网关协议BGP的工作原理
IP协议相关技术
ICMP【互联网控制报文协议】
ARP协议【IP地址到MAC地址的映射】
- ARP主要内容
- ARP广播只在子网中传播
- 硬件地址只具有本地意义,每当路由器将IP数据报转发到一个具体的网络时,都需要重新封装源硬件地址和目的硬件地址
- 路由器在收到分组后,剥离该分组的数据链路层协议头,然后在分组被转发之前,给分组加上一个新的链路层协议头
- ARP请求是广播发送【不知道目标设备在哪里】
- ARP响应式单播发送
- ARP过程
- 目的主机在本局域网
- 先在ARP高速缓存中查看有无目的IP地址与MAC地址的映射
- 有,则把硬件地址写入MAC帧,然后通过局域网把该MAC帧发往此硬件地址
- 无,则通过广播ARP请求分组,在获得目的主句的ARP响应分组后,将目的主机的IP地址与硬件地址写入ARP告诉缓存
- 目的主机不在本局域网
- 将IP分组发送给本局域网的路由器,先通过上述方式获得路由器的IP地址和硬件地址的映射关系
- 目的主机在本局域网
DHCP协议【动态主机配置协议】
虚拟专用网VPN和网络地址转换NAT
- 公有地址,私有地址
- 虚拟专用网VPN
- 网络地址转换NAT
- NAT转换流程