4.1 网络层的功能
1 异构网络互连
两个以上的计算机网络,通过一定的方法,用一种或多种通信处理设备相互连接起来,以构成更大的网络系统。
TCP/IP体系在网络层采用标准化协议,构成一个虚拟的IP网络。
使用虚拟互联网的好处:当互联网上的主机进行通信时,就好像在一个网络上通信一样,看不见互连网络异构细节。
2 路由与转发
路由选择:按照分布式交互式算法,根据相邻路由器所得到的整个网络拓扑的变化情况,动态改变所选择的路由。
分组转发:指路由器根据转发表将用户的IP数据报从合适的端口转发出去。
3 拥塞控制
在通信子网(物理层、数据链路层)因出现过量的分组而引起网络性能下降的现象称为拥塞。
判断网络是否进入拥塞的方法:
1)随着网络负载的增加,网络吞吐量明显小于正常吞吐量--------轻度拥塞。
2)网络吞吐量随着网络负载的增大而减小---------已经进入拥塞
3)网络负载继续增大,吞吐量下降至0------------产生死锁
拥塞控制要解决的问题:如何获取网络中发生拥塞的信息,利用这些信息进行控制,以避免由于拥塞出现分组的丢失,以及严重拥塞而产生网络死锁。
拥塞控制的方法:
1)开环控制:在涉及网络是将有关发生拥塞的因素考虑周到,静态预防。
2)闭环控制:实现不考虑,采用监测网络系统去监视,及时检测哪里发生了拥塞,然后将拥塞信息传到合适的地方,对网路进行调整,基于反馈机制。
4.2 路由算法
2.1 静态路由与动态路由
静态路由算法(非自适应路由算法)网络管理员手工配置的路由信息。
动态路由算法(自适应路由算法)通过相互连接的路由器之间彼此交换信息,然后按照一定的算法优化而来。
2.2 距离-向量路由算法
迭代计算一条路由中的站段数或者延迟时间,从而得到到达一个目标的最短通路。要求每个结点在每次更新时都将它的全部路由表发送给所有相邻的结点。
2.3 链路状态路由算法
1)主动测试所有邻接结点的状态;2)定期将所有结点传播给所有其他结点。
在一个链路状态路由选择中,一个结点检查所有直接链路的状态,并将所得状态信息发送给网上的所有其他结点。
链路状态路由算法特征:
1)向本自治系统中所有路由器发送消息。----洪泛法
2)发送的信息是与路由器相邻的所有路由器的链路状态。
3)只有链路状态发生变化时路由器才向所有路由器发送此消息。
距离向量路由算法与链路状态路由算法之间的比较:
在距离向量路由算法中,每个结点仅与相邻结点直接交谈,为邻居提供最短路径,代价最小路径 仅告诉相邻邻居最优路径
在链路状态路由算法中,每个结点通过广播的方式与所有其他结点交谈,仅告诉他们与他直接相连的链路的费用。
广播告诉所有与其相连的链路状态信息
2.4 层次路由(分区自治)
因特网将整个互联网划分为许多较小的自治系统,一个自治系统内部所使用的路由选择协议叫做内部网关协议(IGP),如RIP,OSPF等;自治系统之间所使用的路由选择协议称为外部网关协议(EGP),在不同自治系统路由器之间交换路由信息,并为分组之间选择最优路径。
优点:能使每个区域交换路由信息的通信量大大减小,因而使OSPF协议能够用到规模更大的自治系统中。
4.3 IPV4
网络层转发分组的流程:
1)从数据报的首部提取目的主机的IP地址D,得出目的网络地址N
2)若网络地址与此路由器直接相连,则把数据包直接交付给目的主机。(直接交付)
3)若路由表中有目的地址为为D的特定主机路由,则把数据报传送给路由表中所指明的下一条路由器。
4)若路由表中有到达网络N的路由,则把数据报传送给路由表中所指明的下一跳路由。(多路由转发)
5)否则,传给默认路由。
6)否则,传输出错。
直接交付---主机路由----普通路由----默认路由----传输出错
IP地址的重要特点:
1)每个IP地址由网络号和主机号组成,是一种分等级的地址结构。
2)IP地址是标志一台主机和一台链路的接口。
3)用转发器或桥接器连接的若干LAN仍然是一个网络。
4)在IP地址中,所有分配到网络号的网络都是平等的。
5)路由器每个端口都有一个不同的IP地址。
网络地址转换(NAT) ----- 传输层
网络地址转换通过将专用网络地址转换为公用地址,从而对外隐藏内部管理的IP地址。使得整个专用网只需要一个全球IP地址就可以与因特网连通。NAT转换表中存在{本地IP地址:端口}到{全球IP地址:端口}的映射。让多个私有IP地址映射到同一个全球IP地址。
3.3 子网划分与子网掩码、CIDR
1 子网划分:属于一个单位内部的事情。从主机号借用若干比特作为子网号,IP地址={<网络号>,<子网号>,<主机号>}
2 子网掩码:计算机只需将IP地址和其对应的子网掩码逐位相“与”,就可以得出相应子网的网络地址。
3 CIDR无分类域间路由选择:消除传统ABC类网络划分,可以在软件支持下实现超网构造的IP地址划分方法。
CIDR特点:1)使用“网路前缀”代替子网络。“斜线记法”,即IP地址/网络前缀所占比特数。2)将网络前缀都相同的连续IP地址组成“CIDR”地址块,一个CIDR地址块可以表示很多地址,这种地址的聚合称为路由聚合,即构成超网 。
使用无分类域间路由自由选择时,路由表中每个项目由“网络前缀”和“下一跳地址”组成,在查找路由表中可能会出现不止一个结果,此时,采用最长前缀匹配,网络前缀越长,其地址块越小,路由就越具体。
3.4 ARP DHCP ICMP
1 地址解析协议 ARP ------ 网络层
作用:实现IP地址到MAC地址的映射
原理:每台主机都设有ARP告诉缓存表,用来存放本局域网上各主句和路由器的IP地址到MAC地址的映射表。
主机A欲向主机B发送IP数据报时,①先在其ARP高速缓存中查看有无主机B的IP地址,查出其对应的硬件地址;②将此硬件地址写入MAC帧; ③通过局域网将该MAC帧发往此硬件地址。 如果没有--广播--响应--写入--发送。
2 动态主机配置 DHCP --------- 应用层 C/S服务模式
作用:为主机动态分配IP地址,即插即用机制,允许一台计算机加入新的网络和获取IP地址,而不用手工参与。
原理:①需要IP地址的主机在启动时向DHCP服务器广播发送发现报文。
②本地网络上所有主句都能收到此广播报文,DHCP服务器回答。
③DHCP服务器现在数据库中查找该计算机的配置信息,若找到则返回信息,若找不到,则从服务器IP地址池中取出一个地址分配给该计算机。
动态主机配置服务器分配给DHCP客户的IP地址是临时的,DHCP称这段时间为争用期。
3 网际控制报文协议 ICMP
ICMP最常见的两个应用:分组间探测PING(用来测试两台主机之间的连通性)----工作在应用层,直接使用网络层的ICMP
Traceroute/Tracert,用来跟踪分组经过的路由,工作在网络层。
4.4 IPV6
解决IP地址即将耗尽问题的措施:
①采用无类别编制CIDR
②采用网络地址转换(NAT)以节省全球IP地址
③采用具有更大地址空间的IPV6,从根本上解决IPV4地址耗尽的问题
4.5 路由协议
1 路由信息协议routing information protocal
一种分布式的基于距离向量的路由选择协议,RIP认为好的路径就是它通过的路由器的数目少,即优先选择跳鼠少的路径。
RIP特点:①仅和相邻路由器交换信息②交换当前自己的路由表③按照固定时间间隔交换信息
距离向量算法:<目的网络N,距离d,下一条路由器X>
①对地址为X的相邻路由器发来的RIP报文,把下一条字段中的地址都改为X,并把所有距离都+1。
②原来路由表中没有目的网络地址N时,把该项目添加至路由表中;
有目的网络N,且下一跳地址是X时,用收到的项目替换原路由表中的项目(进行更新)
有目的网络N,下一跳地址不是X,若收到的项目距离d小于原表,则进行替换,否则不变。
③超过默认时间180s还没有收到相邻路由器的更新路由表,那么把此相邻路由器即为不可达路由器。
④返回。
2 开放最短路径优先协议 OSPFopening shortest path first
1)开放最短路径优先算法的基本特点:
①采用洪泛法,向本自治系统中的所有路由器发送信息; RIP仅向相邻路由器发送信息
②发送的信息是与本路由器相邻的所有路由器状态; RIP发送本路由器的路由表
③当链路状态发生变化时采用洪泛法,更新过程收敛快; RIP中,路由器之间定期交换路由表信息
④OSPF是网络层协议,直接使用IP数据报传送; RIP是应用层协议,在传输层使用UDP
为了保证链路状态数据库与全网状态保持一致,OSPF规定每隔一段时间就刷新一次数据库中的链路状态。
适用于互联网规模很大的情况。
3 BGP边界网关协议(外部网关协议) ---- 应用层 基于TCP
功能:力求寻找一条能够到达目的网络且比较好的路由,而非最佳路由
原理:①每个自治系统的管理员至少选择一个路由器作为“BGP发言人”
②BGP发言人之间建立交换信息时要先建立TCP连接,然后在此连接上交换BGP报文以建立BGP会话,在利用会话交换信息。 ③每个BGP发言人运行BGP协议和RIP或者OSPF协议。
4.6 IP组播
让源计算机一次发送的单个分组可以抵达用一个组地址标识的若干目标主机。
因特网组管理协议 (Internet group management protocal)
4.7 移动IP
移动IP技术是指移动结点以固定的网络IP地址实现不同网段的漫游功能,并保证基于网络IP的网络权限在漫游过程中不发生任何改变。
移动结点:具有永久IP地址的移动结点
本地代理:在一个网络环境中,一个移动结点的永久“居所”称为归属网络,在归属网络中,代表移动结点执行移动管理功能的实体称为归属代理,它根据移动用户的转交地址采用隧道技术转交移动结点的数据包。
外部代理:在外部网络中帮助移动节点完成移动管理功能的实体。
4.8 网络层设备 路由器
路由器是一种具有多个输入/输出端口的专用计算机,任务是连接不同的网络并实现路由转发。
路由器由路由选择和分组转发两部分组成。