网络层
设计思路:向上指提供简单灵活的,无连接的,尽最大努力交付的数据报服务。
网络层所要完成的任务之一是使异构的网络实现互连。
- 物理层中继系统:中继器、集线器
- 数据链路层中继系统:网桥或交换机
- 网络层中继系统:路由器
- 网络层以上的中继系统:网关
TCP/IP体系在网络互连上采用的做法是在网络层采用标准化协议,但相互连接的网络可以是异构的。
物理层的集线器、中继器连接的结点都属于同一个冲突域,即集线器、中继器不能划分冲突域。
数据链路层的网桥、交换机可以划分冲突域,但是不能划分广播域。
路由器可以划分冲突域,还能划分广播域。
通常所说的局域网LAN特指使用路由器分割的网络,也就是广播域。
路由器
在同一网络中传递数据,无需路由器的参与,而跨网络通信必须通过路由器进行转发。
从结构上看,路由器由路由选择和分组转发两部分构成,而从模型的角度上看,路由器是网络层设备,它实现了网络模型的下三层,即物理层、数据链路层和网络层。
路由选择部分与分组转发部分
路由选择部分也称控制部分,其核心构件是路由选择处理机。
分组转发部分由3部分组成:①交换结构 ②一组输入端口 ③一组输出端口。有三种常用的交换方法:通过存储器进行交换、通过总线进行交换和通过互联网络进行交换。
路由器主要完成两个功能,一是分组转发(当一个分组到达时所采取点动作),二是路由计算(确定哪一条路径)。前者处理通过路由器的数据流,关键操作是转发表查询,转发及相关的队列管理和任务调度等;后者通过和其他路由器进行基于路由协议的交互,完成路由表的计算。
路由器和网桥的重要区别:网桥与高层协议无关,而路由器是面向协议的。
路由表与路由转发
标准的路由表有四个项目:目的网络IP地址、子网掩码、下一条IP地址、接口。
默认路由:为了减少转发表的重复项目,使用一个默认路由代替所有具有相同“下一跳”的项目,并将默认路由设置得比其他项目的优先级低。
“转发”和“路由选择”的区别
要注意路由表不等于转发表。
转发时路由器根据转发表把收到的IP数据报从合适的端口转发出去,它仅涉及一个路由器,而路由选择则涉及很多路由器,路由表是许多路由器协同工作的结果。
SDN
软件定义网络(SDN)是近年流行的一种创新网络架构,采用集中式的控制平面和分布式的数据平面。
在SDN中,路由器之间连交换路由信息都不需要了。路由器的工作很单纯,就是收到分组、查找转发表、转发分组。
SDN的接口:
- 对上层应用的开发者提供的编程接口:北向接口
- SDN控制器和转发设备建立双向会话的接口:南向接口
- SDN控制器集群内部控制器之间的通信接口:东西向接口
SDN的优缺点
优点:
- 全局集中式控制和分布式高速转发,既利于控制平面的全局优化,又利于高性能的网络转发。
- 灵活可编程与性能的平衡。
- 降低成本,控制和数据平面分离后,尤其是在使用开放的接口协议后,实现了网络设备的制造与功能软件的开发相分离,从而有效降低了成本。(有点像面向对象开发的感觉)
SDN的问题:
- 安全风险
- 瓶颈问题,随着网络规模的扩大,控制器可能成为网络性能的瓶颈。
拥塞控制
在通信子网中,因出现过量的分组而引起网络性能下降的现象称为拥塞。
拥塞控制的方法有两种:
- 开环控制:这是一种静态的预防方法,说白了就是在设计网络时就尽量把可能导致拥塞的因素考虑周到,封杀在襁褓之中。
- 闭环控制:事先不考虑有关发生拥塞的各种因素,采用检测网络系统去监视,及时检测哪里发生了拥塞。是基于反馈环路的概念,是一种动态的方法。
网络层的主要目的是:在任意结点间进行数据报传输。(不是可靠传输)
路由器连接的异构网络是指:数据链路层和物理层均不同。
在路由器互联的多个局域网的结构中,要求每个局域网物理层、数据链路层、网络层协议可以不同,而网络层以上的高级协议必须相同。
路由算法
静态路由算法(非自适应路由算法):网络管理员手工配置的路由信息。
动态路由算法(自适应路由算法):路由表项是通过相互连接的路由器之间彼此交换信息,然后按照一定的算法优化出来的。
静态路由算法的特点是简便和开销较小,在拓扑变化不大的小网络中运行效果很好。(最关键是简单啊,管理员人肉修改,哪来这么多牛鬼蛇神)
动态路由算法,能改善网络的性能,并有助于流量控制,但算法复杂会增加网络的负担。
常用的动态路由算法又可分为两类:距离-向量路由算法和链路状态路由算法。
在距离-向量路由协议中,慢收敛导致路由器接收了无效的路由信息最可能导致路由回路问题。