导图社区 网络层1
计算机网络网络层导图及其细节,主要包括路由、路由层、IPV4四大板块知识。
编辑于2021-11-08 13:56:20六顶思考帽
网络层1
路由
异构网络互连
概念:在网络层使用标准化协议(如IP),但相互连接的网络则可以是异构的
物理层或数据链路层的中继系统仅是将网络扩大,其本质扔是同一个网络
路由与转发
路由选择:根据路由协议构造路由表,并从其他路由器得到的网络变化情况,动态更新路由表
分组转发:根据转发表将用户IP数据报从合适端口转发出去
路由表由选择算法得到,转发表由路由表得到。转发表应当查找过程最优化,路由表应对网络
拓扑变化计算最优化。平时不区分路由表和转发表,统称路由表
拥塞控制
通信子网中因出现过量数据报引起网络性能下降的现象
拥塞控制解决的问题是如何获取拥塞信息并解决拥塞问题,注意区别流量控制
控制方法
开环控制:事先考虑拥塞原因,尽量避免拥塞的静态预防法
闭环控制:基于反馈环路的概念,检测拥塞的产生并处理,是动态的方法
路由算法
静态路由:由网络管理员手工添加和维护路由表,不适用于大型和复杂的网络环境
动态路由:路由器间彼此交换信息,按一定算法得来,不断更新,有助于改善网络性能
距离--向量路由算法
所有节点定期将路由选择表传送给邻接节点,路由选择表中包括目的节点与路径代价
收到路由选择表后,对比自己的路由选择表,若有一条新的路由,则在路由表中添加上;若有一个路径代价更小的路由,则更新
显然更新报文的大小与通信子网节点数成正比,RIP使用该算法
链路状态路由算法
每个节点都有完全的网络拓扑信息
每个节点主动测试邻接节点的状态,并定期的将链路状态传播给所有其他节点,而不仅仅是其邻接节点
节点收到链路状态报文后,节点更新自己的网络拓扑信息,用Dijkstra算法算出单源节点最短路径
优点:每个节点独立计算路径,易于查找故障。链路状态报文大小与网络中路由节点数无关,规模可伸展
层次路由
随着网络规模扩大,路由表变大,查找路由表变慢,传递路由表占用更大带宽,因此路由选择按层次方式进行
OSPF将系统划分出域,路由器只知道本区域路由细节,不知道其他域的路由细节
降低区域内部路由信息通信量,但增加了交换信息的种类,适用于规模很大的自治系统
IPV4
IPV4分组
数据报的格式
IP首部大小为20B,IP数据报总长度不超过65535B
当分组长度超过MTU时,必须分片
校验和只校验分组首部,不校验数据部分
路由器转发分组前,TTL-1。当TTL=0时该分组必须丢弃
协议字段6表示TCP,17表示UDP
数据报分片
MTU表示数据链路层能承载的最大数据量,是最大传输单元,用来限制IP数据报长度
分片后的数据报在目的地址网络层合并,依据是首部的标识,标志和片偏移
每个分片有相同的标识。标志有MF和DF两位,MF表示是否是最后一片,DF表示该数据报能否分片。通过片偏移确定该片在原始报文中的位置。片偏移以8B为单位
网络层转发分组
1、提取目的IP地址,得到目的网络地址N
2、若该地址直接与路由器相连,则直接将数据报交给主机
3、若路由表中有到达网络N的路由,则根据路由表转发该数据报
4、若路由表中有默认路由,则发送到默认路由器。若234都失败,则报告转发分组出错
IPV4
IP地址由网络号和主机号组成。网络号在全因特网是唯一的,主机号在该网络号下是唯一的。5类IP地址
特殊IP地址
主机号全0表示本网络本身
主机号全1表示本网络广播地址
127.0.0.1用于环路自检,该报文不会出现在任何网络上
32位全0表示本主机
32位全1表示整个网络广播地址。由于路由器对广播域隔离,实际相当于本网络广播地址
特点
网络信息中心分配IP时只分配网络号,由得到IP的单位分配主机号
路由器转发IP数据报的依据是网络号,不考虑主机号,可减小路由表大小
当一台主机连接两个网络时,必须同时有两个网络网络号对应的IP地址(外网地址,内网地址)。
每个路由器必然至少具备两个IP地址,每个端口至少分配一个IP地址
用集线器,交换机,网桥连接的若干局域网同属一个网络(一个广播域),因此其网络号都相同,主机号都不同
NAT
网络地址转换,将专用网络地址转换为公用网络地址,从而对外隐藏内部管理地址。NAT节省了IP地址的消耗隐藏内部网络细节,降低受攻击的风险
私有地址不能直接用于Internet,要通过NAT转换为全球IP地址后才能用于Internet。所有路由器对目的地址是私有地址的数据报一律不转发。
使用NAT时需要连接到因特网的路由器装有NAT软件,且至少有一个有效外网地址。NAT映射表存放着 内网地址:端口号->外网地址:端口号的映射,
普通路由器转发数据报时不改变源和目的IP地址,而NAT路由器转发数据包时要根据地址转换表更换IP地址。
子网
子网划分
在IP地址中增加一个“子网号”字段,使IP地址变成3级,这叫子网划分。子网划分是内网范畴,外网不知子网划分
从主机号中借用若干位构成子网号,IP地址变成<网络号:子网号:主机号>。
原子网号不能全为0或全为1,现随着CIDR的广泛使用,子网号也可以全0或全1了,但要求路由器有软件支持
无论IPv4还是CIDR,主机号全0或全1都不能分配。主机号全0是子网网络号,主机号全1是子网广播地址
子网掩码
用子网掩码表达对源网络中主机号的借位,进行子网划分。
子网掩码中1的部分对应网络号和子网号,0的部分对应主机号。IP地址与子网掩码相与得到的是子网的网络号
使用子网掩码特征
主机除了设置IP地址,必须设置子网掩码
一个子网下的所有主机和路由器对应端口,有相同子网掩码
路由表中记录:目的网络地址:子网掩码:下一跳地址
路由转发方法
从分组中提取目的IP地址,用各网络子网掩码与IP相与,若有匹配的相应网络地址,则直接传递到主机
若路由表中有目的IP特定路由,则转发到下一跳
IP地址和路由表中各子网掩码相与,若有匹配的目的网络地址,则转发到下一跳
若有默认路由,传递给默认路由,否则报告分组出错。
无类编址(CIDR)
在使用变长子网掩码的基础上提出的消除ABC类的划分,在软件支持下实现超网构造的一种IP地址划分方法
使用网络前缀代替子网概念,两级CIDR为<网络前缀,主机号>
CIDR记法:即IP地址/网络前缀占用比特数。如128.14.32.5/20表示掩码前20位全1,后12位全0,
用掩码和IP相与得到网络前缀(跟子网算法一致)。CIDR不使用子网是指没有指明子网字段,但组织内部扔可划分子网
超网:网络前缀相同的IP组成地址块,其可以包含多个ABC类地址,称为路由聚合或构成超网。
CIDR前缀越短,主机号越长,可分配地址越多,计算时注意去掉全0和全1的地址
最长前缀匹配:路由表项目为<网络前缀,下一跳地址>,查找时若有多个匹配项,则选前缀最长的。
CIDR查找路由表算法:线索二叉树。
ARP
IP地址与MAC
网络层只能看到抽象的IP数据报分组
虽然IP首部有完整的源IP和目的IP,但路由选择时只需要目的IP
数据链路层只能看到帧,*********????
ARP地址解析协议完成IP地址到MAC地址的映射。每台主机、路由器上都有一个ARP表,使用ARP协议动态维护该表
工作原理:A向B发送IP报,在A的ARP表中看有无B的IP地址,有则查出其硬件地址写入MAC帧并发送。若没有,则 A用全F的MAC地址广播ARP请求分组,可以使同一局域网所有主机收到该分组。B收到该请求后发送响应ARP分组, 包含B的IP与MAC的映射。A收到后写入ARP表,封装MAC帧并发送。
若A和B不在同一局域网,则ARP找到本局域网路由器地址,将分组发给路由器,让路由器将分组发给下一个网络。
DHCP
动态主机配置协议。它是应用层协议,基于UDP,用来动态分配IP地址
申请主机广播请求报文,DHCP服务器响应报文并分配IP。该IP是临时IP,有租用时间。
ICMP
网际控制报文协议,是网络层协议,使主机和路由器可以报告差错和异常情况
ICMP也是IP分组,其报文作为IP分组的数据字段
ICMP差错
终点不可达;源点抑制(减缓发送速率);时间超时(TTL到0)
参数问题(首部参数);改变路由(重定向)
不发送ICMP差错
ICMP报文出错
分片的数据报的后续分片
具有多播地址的数据报
127.0.0.1或0.0.0.0这样的特殊地址的报文
应用
ping:应用层协议,直接使用ICMP协议而不使用TCP和UDP协议,用到ICMP的回送请求和回答报文
tracert(traceroute):工作在网络层,使用ICMP的超时报文